Skip to content

Одностадийная оплата

Одностадийная оплата задаётся в методе prepare_payment с помощью параметра auto_capture = true, который устанавливается по умолчанию в теле запроса. В данном процессе оплаты, денежные средства списываются сразу, без необходимости дополнительного подтверждения суммы со стороны Партнёра.

Схема работы

Оплата с сайта Партнёра - Humo/Uzcard (ПЦ)

  1. Пользователь выбрал товар/услугу;
  2. В корзине нажал «Оплатить»;
  3. Сайт Партнера инициирует транзакцию методом prepare_payment;
  4. Наш Back-end (BE) подтверждает создание транзакции;
  5. Клиент отправляет данные карты с платежной страницы Партнера;
  6. Партнер отправляет данные карты через метод pay, подтверждающий транзакцию;
  7. Наш BE отправляет подтверждение;
  8. Партнер инициирует метод verificationInfo *, чтобы получить id платежа;
  9. Наш BE отправляет подтверждение;
  10. Процессинговый центр (ПЦ) отправляет OTP код клиенту;
  11. Клиент отправил код;
  12. Партнер инициирует проверку OTP кода через метод check_sms_key;
  13. Наш BE отправляет подтверждение;
  14. Наш BE отправляет запрос на списание в ПЦ;
  15. ПЦ подтверждает списание/отказ;
  16. Мы уведомляем Партнера об успешном/неуспешном списании;
  17. Перенаправляем клиента обратно на сайт Партнера.

Примечание

В случае неуспешного ответа verificationInfo, будет такой же формат ответа, что и при успехе, но в параметре secondsLeft будет значение 0.


Логотип


Оплата с сайта Партнёра OCTO - Visa/MC (ПЦ)

  1. Клиент выбрал товар/услугу;
  2. В корзине нажал «Оплатить»;
  3. Партнер инициирует транзакцию методом prepare_payment;
  4. Наш Back-end (BE) отправляет отвечает подтверждением;
  5. Клиент на странице Партнера заполняет и отправляет данные банковской карты;
  6. Партнер проводит транзакцию инициируя метод pay;
  7. Наш BE отправляет запрос на списание средств в ПЦ Visa/MC;
  8. ПЦ Visa/MC отправляет ссылку на форму ввода OTP кода;
  9. Наш BE подтверждает проведение транзакции и отправляет ссылку на экранную форму ввода OTP кода;
  10. Партнера отображает страницу ввода OTP кода клиенту;
  11. ПЦ Visa/MC отправляет клиенту OTP код;
  12. Клиент отправляет OTP код в ПЦ Visa/MC;
  13. ПЦ Visa/MC отправляет нам уведомление о подтверждении списания средств;
  14. Мы уведомляем Партнера об успешном/неуспешном списании;

Логотип

Методы

prepare_payment

  • URL: https://secure.octo.uz/prepare_payment
  • Method: POST
  • Content-type: application/json

Тестовые транзакции

Для проведения тестовой транзакции необходимо при инициации метода prepare_payment указать в теле запроса параметр test со значением true. Этот параметр является необязательным. Если он не указан, будет создана реальная транзакция.

Для проведения тестовой транзакции укажите - test: true

json
{
  "auto_capture": true,
  "test": true, 
  "init_time": "2024-05-02 09:17:00"
}

Пример запроса

Важно!

Одностадийная оплата - auto_capture: true

Двухстадийная оплата - auto_capture: false

json
{
    "octo_shop_id": 123,
    "octo_secret": "537da54b-835a-4968-9864-c2ae02c5902e",
    "shop_transaction_id": "0000_0000_0000_0000_0010",
    "auto_capture": true, 
    "test": false,
    "init_time": "2024-05-02 09:17:00",
    "user_data": {
        "user_id": "Johnny Depp",
        "phone": "998901234567",
        "email": "octo@mail.com"
    },
    "total_sum": 1000.0,
    "currency": "UZS",
    "description": "TEST_PAYMENT",
    "basket": [
        {
            "position_desc": "Йогурт MANON клубничный",
            "count": 2,
            "price": 10.0,
            "spic": "special_information_for_position"
        },
        {
            "position_desc": "Йогурт MANON банановый",
            "count": 1,
            "price": 20.0,
            "spic": "special_information_for_position"
        }
    ],
    "payment_methods": [
        {
            "method": "bank_card"
        },
        {
            "method": "uzcard"
        },
        {
            "method": "humo"
        }
    ],
    "tsp_id": 18,
    "return_url": "https://octo.uz" // (URL всегда должен быть полным),
    "notify_url": "https://notify-url.uz",
    "language": "uz",
    "ttl": 15
}

Параметры запроса

ПараметрТипОбязательностьОписание
octo_shop_idIntegerДаУникальный ID магазина (доступен в ЛК магазина).
octo_secretStringДаПерсональный секретный ключ магазина, который генерируется в ЛК магазина.
Должен содержаться в безопасной недоступной зоне сайта магазина.
shop_transaction_idStringДаУникальный идентификатор транзакции на стороне магазина.
Используется OCTO для предотвращения случайного дублирования транзакций.
auto_captureBoolДаЕсли true, то ПС Octo будет автоматически подтверждать списание средств со счета покупателя.
Если false, то после авторизации платежа Octo будет ожидать от магазина дополнительного подтверждения завершения транзакции.
По умолчанию false
testBoolДаТестовый платёж или нет.
init_timeDatetimeДаВремя создания платежа в формате yyyy-MM-dd HH:mm:ss.
user_dataObjectНетИнформация о покупателе, используется для отображения на странице оплаты.
user_data.user_idStringДа (если передаётся весь блок user_data)ID пользователя в БД магазина.
user_data.phoneStringДа (если передаётся весь блок user_data)Номер телефона пользователя.
user_data.emailStringДа (если передаётся весь блок user_data)Электронная почта пользователя.
total_sumDoubleДаИтоговая сумма платежа.
currencyStringДаВалюта. Варианты: USD, UZS, RUB.
descriptionStringДаОписание товара.
basketArrayДаБлок детальной информации по корзине. Если присутствует, то будет отображен покупателю при оплате.
basket.position_descStringДа (если передаётся весь блок basket)Название позиции в чеке.
basket.countIntДа (если передаётся весь блок basket)Число таких позиций.
basket.priceDoubleДа (если передаётся весь блок basket)Цена одной позиции.
basket.spicStringНетДополнительное поле для уточнения информации о позиции в корзине.
payment_methodsArrayНетМножество доступных покупателю методов оплаты. Если не передается, то будут предложены все доступные методы.
payment_methods.methodStringДа (если передаётся весь блок payment_methods)Название одного метода из вариантов: bank_card, uzcard, humo.
tsp_idIntНетИдентификатор торгово-сервисного предприятия, обеспечивающего продажу данной услуги или товара.
return_urlStringДаURL на который следует перенаправить покупателя после завершения оплаты.
URL должен содержать уникальный параметр, идентифицирующий конкретный платеж.
notify_urlStringНетURL на который сервер OCTO будет отправлять нотификации об изменении статуса платежа.
Если не установлен, то используется общий URL, который установлен в личном кабинете.
languageStringДаЯзык платежной формы. По умолчанию - язык браузера или en.
Допустимые значения: oz - узбекский (латиница), uz - узбекский (кириллица), en - английский, ru - русский.
ttlIntНетВремя жизни платежа с момента создания (в минутах). По истечению этого времени провести платеж будет невозможно.

Пример успешного ответа

json
{
    "error": 0,
    "data": {
        "shop_transaction_id": "c9211e0f-c6ba-4d97-b8be-fb230ef3985b",
        "octo_payment_UUID": "e3f40dc3-4955-412a-853a-2ddd28d3201f",
        "status": "created",
        "octo_pay_url": "https://pay2.octo.uz/pay/e3f40dc3-4955-412a-853a-2ddd28d3201f?language=uz",
        "refunded_sum": 0,
        "total_sum": 1000.0
    },
    "apiMessageForDevelopers": "",
    "shop_transaction_id": "c9211e0f-c6ba-4d97-b8be-fb230ef3985b",
    "octo_payment_UUID": "e3f40dc3-4955-412a-853a-2ddd28d3201f",
    "status": "created",
    "octo_pay_url": "https://pay2.octo.uz/pay/e3f40dc3-4955-412a-853a-2ddd28d3201f?language=uz",
    "refunded_sum": 0,
    "total_sum": 1000.0
}

Параметры успешного ответа

ПараметрТипОбязательностьОписание
errorintДа (если error=0)Код ошибки (0 — ошибок нет).
dataobjectДа (если error=0)Основной объект с данными о платеже.
data.shop_transaction_idstringДа (если error=0)Уникальный идентификатор транзакции на стороне магазина.
data.octo_payment_UUIDstringДа (если error=0)Уникальный идентификатор платежа в системе Octo.
data.statusstringДа (если error=0)Статус платежа.
data.octo_pay_urlstringДа (если error=0)URL для перехода к оплате в системе Octo.
data.refunded_sumdoubleНетСумма, которая была возвращена (если есть возвраты).
data.total_sumdoubleДа (если error=0)Итоговая сумма платежа.
apiMessageForDevelopersstringНетСообщение для разработчиков, предоставляемое API (пустое в случае успеха).
shop_transaction_idstringДа (если error=0)Дублирует shop_transaction_id из объекта data.
octo_payment_UUIDstringДа (если error=0)Дублирует octo_payment_UUID из объекта data.
statusstringДа (если error=0)Дублирует status из объекта data.
octo_pay_urlstringДа (если error=0)Дублирует octo_pay_url из объекта data.
refunded_sumdoubleДа (если error=0)Дублирует refunded_sum из объекта data.
total_sumdoubleДа (если error=0)Дублирует total_sum из объекта data.

Пример неуспешного ответа

json
{
    "error": 2,
    "errMessage": "Wrong secret",
    "data": null,
    "errorMessage": "Wrong secret",
    "apiMessageForDevelopers": "Поле errorMessage устарело, просим перейти на errMessage для унификации ответов. Так же пожалуйста знайте, что в дальнейшем все поля кроме error и errMessage будут передаваться в data. Для более подробного ознакомление свяжитесь с технической поддержкой сервиса"
}

Параметры неуспешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки (0 указывает на отсутствие ошибок).
errMessagestringДаСообщение об ошибке (если ошибка произошла).
dataobjectНетОсновные данные транзакции (при ошибке может быть null).
errorMessagestringДаСообщение об ошибке (если ошибка произошла).
apiMessageForDevelopersstringНетТехническое сообщение (поле для дополнительной информации).

Важно!

В дальнейшем все поля, кроме error и errMessage, будут передаваться в объект data. Если у вас возникают вопросы по поводу структуры ответов, пожалуйста, свяжитесь с технической поддержкой сервиса Octo.



pay

  • URL: https://secure.octo.uz/pay/{octo_payment_UUID}
  • Method: POST
  • Content-type: application/json

Пример запроса

json
{
    "pan": "8600313260861293",
    "exp": "2602",
    "method": "uzcard",
    "cvc2": "",
    "cardHolderName": "CardHolder Name",
    "email": "client@mail.com"
}

Параметры запроса

ПараметрТипОбязательностьОписание
panstringДаНомер карты клиента, который используется для проведения транзакции.
expstringДаСрок действия карты в формате ГГММ (год/месяц).
methodstringДаМетод оплаты. Допустимые значения: bank_card, uzcard, humo.
cvc2stringДаCVC2 код карты.
cardHolderNamestringДаИмя держателя карты (как указано на карте).
emailstringДаЭлектронная почта пользователя. (Обязательно, если передаётся весь блок user_data в prepare_payment)

Пример успешного ответа

json
{
    "error": 0,
    "errMessage": "",
    "data": {
        "id": 5520,
        "uuid": "04b7f6dd-4693-4afa-96e9-f42790413de7",
        "processorKey": null,
        "merchantId": 242,
        "merchant": null,
        "merchantTransId": "638421f6-dbc0-4875-8ff9-c6ffe3766087",
        "initialSum": 1000.00,
        "totalSum": 1000.00,
        "splittedSum": 1000.00,
        "currency": "UZS",
        "convertSum": null,
        "convertRate": null,
        "convertCurrency": null,
        "selectedMethod": null,
        "createTime": 1732700367802,
        "expireTime": 1732701267781,
        "peyedTime": null,
        "expiredHoldTime": null,
        "merCreateTime": 15420000,
        "description": "TEST_PAYMENT",
        "autoCapture": true,
        "withoutSite": false,
        "isTest": false,
        "refundLocked": false,
        "returnUrl": "octo.uz",
        "redirectUrl": "https://pay2.octo.uz/uzcard/sms/04b7f6dd-4693-4afa-96e9-f42790413de7",
        "details": {
            "cardInfo": {
                "first6": "860031",
                "last4": "1293",
                "issuerCountryCode": "UZ",
                "cardHolder": "CardHolder Name",
                "saveToken": null
            },
            "transType": "SMS"
        },
        "hold": null,
        "payMethods": [
            {
                "only": null,
                "method": "bank_card"
            },
            {
                "only": null,
                "method": "uzcard"
            },
            {
                "only": null,
                "method": "humo"
            }
        ],
        "status": "created",
        "basket": null,
        "user": {
            "email": "client@mail.com",
            "phone": "998901234567",
            "user_id": "Elbek"
        },
        "airline": null,
        "language": "uz",
        "tariffId": 2,
        "fee": null,
        "transferSum": null,
        "refundedSum": 0.00,
        "provCode": null,
        "optionalData": null,
        "forConsideration": false,
        "riskLevel": -1,
        "auditedAt": null,
        "auditorId": null,
        "bankCode": "RB",
        "merchantCardId": null,
        "processingReference": null,
        "requestProcessingStatus": null,
        "requestProcessingTryCount": 0,
        "currentStep": null,
        "tag": "ticket",
        "tspId": null,
        "cardInputType": "merchant_site",
        "redirectTimeout": null,
        "merchantStatus": null,
        "fiscalDetails": null,
        "showButtonSaveCard": null,
        "test": false
    }
}

Параметры успешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки: 0 означает отсутствие ошибок.
errMessagestringНетСообщение об ошибке, пустое если ошибки нет.
dataobjectДаОбъект с деталями транзакции.
data.idintДаУникальный идентификатор транзакции.
data.uuidstringДаУникальный UUID для идентификации транзакции.
data.processorKeystringНетИдентификатор процессинга, если применимо.
data.merchantIdintДаИдентификатор торговца, связанный с транзакцией.
data.merchantobjectНетИнформация о торговце.
data.merchantTransIdstringДаУникальный ID транзакции от торговца.
data.initialSumdecimalДаИзначальная сумма транзакции.
data.totalSumdecimalДаОбщая сумма транзакции, включая комиссии.
data.splittedSumdecimalДаСумма, разделенная на несколько получателей (если применимо).
data.currencystringДаВалюта транзакции.
data.convertSumdecimalНетСумма в конвертированной валюте (если применимо).
data.convertRatedecimalНетКурс конвертации (если применимо).
data.convertCurrencystringНетКонвертируемая валюта (если применимо).
data.selectedMethodstringНетВыбранный метод оплаты.
data.createTimeintДаВремя создания транзакции (UNIX timestamp).
data.expireTimeintДаВремя истечения транзакции (UNIX timestamp).
data.peyedTimeintНетВремя оплаты транзакции, если оплачена.
data.expiredHoldTimeintНетВремя истечения удержания средств.
data.merCreateTimeintДаВремя создания транзакции на стороне торговца.
data.descriptionstringДаОписание транзакции.
data.autoCaptureboolДаУказывает, будет ли оплата автоматически захвачена.
data.withoutSiteboolДаУказывает, происходит ли операция без веб-сайта.
data.isTestboolДаУказывает, является ли транзакция тестовой.
data.refundLockedboolДаУказывает, заблокирован ли возврат средств.
data.returnUrlstringДаURL возврата после оплаты.
data.redirectUrlstringДаURL для перенаправления на страницу оплаты.
data.detailsobjectНетДополнительные детали о транзакции (например, cardInfo).
data.details.cardInfoobjectНетИнформация о карте, используемой для оплаты.
data.details.transTypestringДаТип транзакции (например, SMS).
data.holdobjectНетДанные об удержании средств (если применимо).
data.payMethodsarrayДаСписок доступных методов оплаты.
data.statusstringДаСтатус транзакции.
data.userobjectНетИнформация о пользователе.
data.user.emailstringНетEmail пользователя.
data.user.phonestringНетТелефон пользователя.
data.user.user_idstringДаУникальный идентификатор пользователя (переданный в prepare_payment).
data.languagestringДаЯзык интерфейса. Допустимые значения: uz, ru, en.
data.tariffIdintДаИдентификатор тарифа.
data.riskLevelintДаУровень риска транзакции.
data.bankCodestringДаКод банка.
data.cardInputTypestringДаТип ввода данных карты (merchant_site / octo_page).
data.tagstringНетТег, связанный с транзакцией (например, ticket).

Пример неуспешного ответа

json
{
    "error": 2,
    "errMessage": "Wrong secret",
    "data": null
}

Параметры неуспешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки.
errMessagestringДаСообщение об ошибке.
dataobjectНетОсновные данные транзакции (может быть null).

verificationInfo

  • URL: https://secure.octo.uz/verificationInfo/{octo_payment_UUID}
  • Method: POST
  • Content-type: application/json

Примечание

Отправляется только octo_payment_UUID.

Пример успешного ответа

json
{
    "error": 0,
    "errMessage": "",
    "data": {
        "verifyId": 819,
        "phone": "+998** *****33",
        "secondsLeft": 221
    }
}

Параметры успешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки: 0 означает отсутствие ошибок.
errMessagestringНетСообщение об ошибке, пустое если ошибки нет.
dataobjectДаОбъект с деталями процесса верификации.
verifyIdintДаУникальный идентификатор процесса верификации.
phonestringДаНомер телефона, к которому привязана верификация (частично скрыт для безопасности).
secondsLeftintДаОставшееся время (в секундах) до истечения срока действия верификации.

Пример неуспешного ответа

json
{
    "error": 0,
    "errMessage": "",
    "data": {
        "verifyId": 819,
        "phone": "+998** *****33",
        "secondsLeft": 0
    }
}

Примечание

В случае неуспешного ответа verificationInfo, будет такой же формат ответа, что и при успехе, но в параметре secondsLeft будет значение 0.

Параметры неуспешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки (0 означает отсутствие ошибок, но secondsLeft=0 говорит о том, что верификация неактивна или время истекло).
errMessagestringНетСообщение об ошибке (может быть пустым).
dataobjectДаОбъект с деталями процесса верификации.
verifyIdintДаУникальный идентификатор процесса верификации.
phonestringДаНомер телефона, к которому привязана верификация (частично скрыт).
secondsLeftintДаОставшееся время (в секундах) до истечения срока действия верификации (равно 0 в случае неуспешного ответа).

Важно!

Если secondsLeft=0, значит время верификации истекло или процесс верификации неактивен. При возникновении вопросов по интеграции обращайтесь в техническую поддержку сервиса Octo.


check_sms_key

  • URL: https://secure.octo.uz/check_sms_key
  • Method: POST
  • Content-type: application/json

Пример запроса

json
{
  "smsKey": "317168", // Код подтверждения, отправленный по SMS
  "paymentId": 822, // Уникальный идентификатор платежа
  "verifyId": "{{verifyId}}" // Уникальный идентификатор процесса верификации (заменяется значением из предыдущего шага)
}

Параметры запроса

ПараметрТипОбязательностьОписание
smsKeystringДаSMS-код, отправленный для подтверждения транзакции.
paymentIdintДаУникальный идентификатор платежа
verifyIdintДаИдентификатор для подтверждения операции

Пример успешного ответа

json
{
    "error": 0,                // Код ошибки: 0 означает отсутствие ошибок
    "errMessage": "",         // Сообщение об ошибке, пустое если ошибки нет
    "data": {
        "id": 5520,             // Уникальный идентификатор транзакции
        "uuid": "04b7f6dd-4693-4afa-96e9-f42790413de7", // Уникальный UUID для идентификации транзакции
        "processorKey": "010967385013", // Идентификатор в процессинговой системе
        "merchantId": 242,      // Идентификатор торговца
        "merchant": null,       // Информация о торговце
        "merchantTransId": "638421f6-dbc0-4875-8ff9-c6ffe3766087", // Уникальный ID транзакции от торговца
        "initialSum": 1000.00,  // Изначальная сумма транзакции
        "totalSum": 1000.00,    // Общая сумма транзакции, включая комиссии
        "splittedSum": 1000.00, // Сумма, распределенная между несколькими получателями
        "currency": "UZS",     // Валюта транзакции (узбекский сум)
        "convertSum": null,      // Сумма в конвертированной валюте
        "convertRate": null,     // Курс конвертации
        "convertCurrency": null, // Конвертируемая валюта
        "selectedMethod": "uzcard", // Выбранный метод оплаты
        "createTime": 1732700367802, // Время создания транзакции (UNIX timestamp)
        "expireTime": 1732701267781, // Время истечения транзакции (UNIX timestamp)
        "peyedTime": 1732700437809,  // Время успешной оплаты (UNIX timestamp)
        "expiredHoldTime": null,     // Время истечения удержания средств
        "merCreateTime": 15420000,   // Время создания транзакции на стороне торговца
        "description": "TEST_PAYMENT", // Описание транзакции
        "autoCapture": true,         // Автоматическое завершение оплаты
        "withoutSite": false,        // Выполнение операции без использования веб-сайта
        "isTest": false,             // Является ли транзакция тестовой
        "refundLocked": false,       // Заблокирован ли возврат средств
        "returnUrl": "octo.uz",     // URL возврата после завершения транзакции
        "redirectUrl": "https://dev-pay.octo.uz/status/04b7f6dd-4693-4afa-96e9-f42790413de7", // URL для перенаправления пользователя
        "details": {
            "transType": "SMS",     // Тип транзакции (например, SMS-подтверждение)
            "commission": "2.00",  // Комиссия за транзакцию
            "cardType": "uzcard"   // Тип карты, используемой для оплаты
        },
        "hold": null,                 // Данные об удержании средств
        "payMethods": [              // Список доступных методов оплаты
            {
                "only": null,
                "method": "bank_card" // Оплата банковской картой
            },
            {
                "only": null,
                "method": "uzcard"   // Оплата через Uzcard
            },
            {
                "only": null,
                "method": "humo"     // Оплата через Humo
            }
        ],
        "status": "succeeded",      // Статус транзакции (успешно завершена)
        "basket": null,              // Информация о корзине покупок
        "user": {
            "email": "client@mail.com", // Электронная почта пользователя
            "phone": "998901234567",   // Телефон пользователя
            "user_id": "Elbek"        // Уникальный идентификатор пользователя
        },
        "airline": null,             // Данные авиакомпании (если применимо)
        "language": "uz",           // Язык интерфейса
        "tariffId": 2,               // Идентификатор тарифа
        "fee": 20.0000,              // Сумма комиссии
        "transferSum": 980.0000,     // Сумма к перечислению после вычета комиссии
        "refundedSum": 0.00,         // Сумма возврата
        "provCode": "uzcard",       // Код провайдера
        "optionalData": null,        // Дополнительные данные
        "forConsideration": false,   // Пометка для анализа
        "riskLevel": 0,              // Уровень риска транзакции
        "auditedAt": null,           // Время аудита транзакции
        "auditorId": null,           // Идентификатор аудитора
        "bankCode": "RB",           // Код банка
        "merchantCardId": null,      // Идентификатор карты торговца
        "processingReference": "1732700437604_5520", // Референс процессинга
        "requestProcessingStatus": null, // Статус обработки запроса
        "requestProcessingTryCount": 0,  // Количество попыток обработки запроса
        "currentStep": null,         // Текущий шаг транзакции
        "tag": "ticket",           // Тег транзакции
        "tspId": null,               // Идентификатор TSP
        "cardInputType": "merchant_site", // Тип ввода карты
        "redirectTimeout": null,     // Тайм-аут перенаправления
        "merchantStatus": null,      // Статус на стороне торговца
        "fiscalDetails": {
            "fiscalClassifierIds": [18], // Список фискальных классификаторов
            "status": "success",    // Статус фискализации
            "errorCode": "0",       // Код ошибки фискализации
            "message": "accepted",  // Сообщение о статусе фискализации
            "createTime": "1732700438714" // Время создания фискализации (UNIX timestamp)
        },
        "showButtonSaveCard": null,  // Показ кнопки для сохранения карты
        "test": false                // Является ли транзакция тестовой
    }
}

Параметры успешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки. 0 означает, что запрос выполнен успешно.
errMessagestringНетСообщение об ошибке. Пустое значение при успешном выполнении запроса.
dataobjectДаОбъект с детальной информацией о платеже.
data.idintДаУникальный идентификатор платежа.
data.uuidstringДаУникальный UUID платежа.
data.processorKeystringДаКлюч процессора, участвующего в транзакции.
data.merchantIdintДаУникальный идентификатор мерчанта.
data.merchant-ДаДанные о мерчанте.
data.merchantTransIdstringДаУникальный идентификатор транзакции, предоставленный мерчантом.
data.initialSumdecimalДаИзначальная сумма платежа.
data.totalSumdecimalДаОбщая сумма платежа.
data.splittedSumdecimalДаРазделённая сумма платежа.
data.currencystringДаВалюта платежа.
data.convertSumDecimalДаСумма после конвертации (если применимо).
data.convertRateDecimalДаКурс конвертации.
data.convertCurrencyStringДаВалюта после конвертации.
data.selectedMethodstringДаВыбранный метод оплаты.
data.createTimelongДаВремя создания платежа в формате Unix Time.
data.expireTimelongДаВремя истечения платежа в формате Unix Time.
data.peyedTimelongДаВремя завершения платежа в формате Unix Time.
data.expiredHoldTimeLongДаВремя истечения удержания средств (если применимо).
data.merCreateTimeLongДаВремя создания на стороне мерчанта.
data.descriptionstringДаОписание платежа.
data.autoCaptureboolДаФлаг автоматического завершения платежа.
data.returnUrlstringДаURL для возврата пользователя после завершения платежа.
data.redirectUrlstringДаURL для перенаправления пользователя для просмотра статуса платежа.
data.detailsobjectДаОбъект с дополнительной информацией о платеже.
data.details.transTypestringДаТип транзакции.
data.details.commissionstringДаРазмер комиссии за транзакцию.
data.details.cardTypestringДаТип карты, использованной для платежа.
data.holdobjectДаИнформация о блокировке средств, если применимо (null, если не используется).
data.payMethodsarrayДаСписок доступных методов оплаты.
data.payMethods.onlystringДаОпциональное поле, указывающее доступность метода оплаты для конкретных условий.
data.payMethods.methodstringДаНазвание метода оплаты.
data.statusstringДаСтатус платежа.
data.basketList<Object>ДаДанные о корзине товаров/услуг, связанных с транзакцией.
data.userobjectДаОбъект с информацией о пользователе.
data.user.emailstringДаЭлектронная почта пользователя.
data.user.phonestringДаТелефонный номер пользователя.
data.user.user_idstringДаУникальный идентификатор пользователя.
data.airlineObjectДаДетали авиаперевозки (если применимо).
data.languagestringДаЯзык интерфейса платежной формы.
data.tariffIdIntegerДаИдентификатор тарифа (если применимо).
data.feedecimalДаРазмер комиссии в валюте платежа.
data.transferSumdecimalДаСумма перевода за вычетом комиссии.
data.refundedSumDecimalДаСумма возврата (если применимо).
data.provCodeStringДаКод провайдера, который обработал транзакцию.
data.optionalDatastringДаДополнительные данные, переданные в запросе или системе, могут быть null.
data.forConsiderationboolДаФлаг, указывающий, находится ли транзакция на стадии рассмотрения.
data.riskLevelintДаУровень риска, связанный с транзакцией. Обычно задаётся числом.
data.auditedAtlongДаВремя, когда транзакция была проверена, в формате timestamp.
data.auditorIdIntegerДаИдентификатор пользователя или системы, проводившей аудит.
data.bankCodestringДаКод банка, участвующего в обработке транзакции.
data.merchantCardIdstringДаУникальный идентификатор карты, сохранённой для данного мерчанта, если применимо.
data.processingReferencestringДаУникальный идентификатор, связанный с обработкой транзакции в процессинговой системе.
data.requestProcessingStatusstringДаТекущий статус обработки запроса, если применимо.
data.requestProcessingTryCountintДаКоличество попыток обработки текущего запроса.
data.currentStepstringДаТекущий этап обработки транзакции. Может быть null.
data.tagstringДаКороткий маркер типа транзакции, заданный мерчантом, для идентификации или фильтрации транзакций.
data.tspIdintДаИдентификатор торгово-сервисного предприятия.
data.cardInputTypestringДаТип ввода данных карты.
data.redirectTimeoutlongДаТаймаут для редиректа на страницу статуса или оплаты, в миллисекундах.
data.merchantStatusstringДаТекущий статус операции со стороны мерчанта, если поддерживается.
data.fiscalDetailsobjectДаОбъект с фискальными данными.
data.fiscalDetails.fiscalClassifierIdsList<intr>ДаСписок идентификаторов налоговых классификаторов, связанных с транзакцией.
data.fiscalDetails.statusstringДаСтатус фискализации.
data.fiscalDetails.errorCodestringДаКод ошибки, связанный с обработкой фискальных данных.
data.fiscalDetails.messagestringДаСообщение от фискального сервиса.
data.fiscalDetails.createTimelongДаВремя создания фискальных данных в формате timestamp.
data.showButtonSaveCardboolДаФлаг, указывающий, нужно ли отображать кнопку для сохранения карты.
data.testboolДаУказывает, является ли транзакция тестовой.

Пример неуспешного ответа

json
{
    "error": 2,                // Код ошибки
    "errMessage": "Wrong secret",  // Текст ошибки
    "data": null               // Объект с данными о платеже
}

Параметры неуспешного ответа

ПараметрТипОбязательностьОписание
errorintДаКод ошибки.
errMessagestringДаСообщение об ошибке.
dataobjectНетОсновные данные транзакции. Может быть null.