Инструменты страницы

Запрос оплаты заказа

В настоящем документе при описании параметров запросов и ответов используются следующие обозначения типов данных:

  • string – строка;
  • array - массив данных;
  • object - объект данных;
  • data - дата;
  • boolean - булевый (логический) тип данных;
  • int. (integer) - целочисленный тип данных;
  • amount - числовой тип данных (сумма).

Данный запрос также имеет возможность принимать одноплечевой P2P_debit платёж только при условии, что заказ зарегистрирован как P2P заказ с переданным параметром WITHOUT_TO_CARD feature.

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

Параметр Тип Описание Пример

mdOrder

string

Номер заказа в платёжном шлюзе. Уникален в пределах платёжного шлюза.

0f7a3d11-43ac-7942-80ce-08f700f18047

bindingUuid

string

Идентификатор связки sbersafe.

pan

string

Номер платёжной карты.

При указании в запросе параметра seToken этот параметр не обязателен к передаче.

4276010013296064

expiry

string

Срок действия карты.

202412

cardholder

string

Имя держателя карты.

Integration Tester

cvc

string

Код CVC/CVV2 на обратной стороне карты.

555

phone

string

Номер телефона клиента без лидирующей «7». Параметр phone, передаваемый напрямую, не валидируется.

9875270160

email

string

Адрес электронной почты покупателя.

test@test.com

deliveryAddress

string

Адрес доставки.

loyaltyId

string

Идентификатор программы лояльности.

sbrf_spasibo

loyaltyPointAmount

string

Сумма баллов «Спасибо» (в штуках баллов). При указании бонусов в запросе регистрации заказа, они списываются с суммы amount, а не дополняют ее.

100

loyaltyPayments

string

Блок, содержащий информацию об идентификаторе программы лояльности и суммы баллов.

externalBindingId

string

Связка шлюза (внешняя).

importExternalBindings

string

Флаг для импорта связок.

params

string

Дополнительные параметры.

В параметре запрещено передавать зарезервированные имена (в случае их передачи заказ может быть отклонен):

  • sbrf_spasibo:amount_bonus
  • sbrf_sbermiles:amount_bonus
  • loyaltyId
  • overridenClientId

googlePaymentToken

string

Платёжный токен Google Pay.

samsungPaymentToken

string

Платёжный токен Samsung Pay.

applePaymentToken

string

Платёжный токен Apple Pay.

threeDSServerTransId

string

Идентификатор транзакции созданный на сервере 3DS.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

blockBindingCreationEnable

boolean

Дополнительный параметр для того, чтобы избежать сохранение данных карты во время оплаты.

Параметры ответа:

Параметр Тип Описание Пример заполнения

errorCode

int

Код ошибки.

0

errorMessage

string Описание ошибки. «Недопустимая операция для текущего состояния заказа»

mdOrder

string

Номер заказа в платёжном шлюзе. Уникален в пределах платёжного шлюза.

de2ad073-79f5-7877-b600-69d00008e652

orderStatus

string

Состояние заказа в платёжной системе.

DEPOSITED

acsUrl

string

Адрес перенаправления на адрес сервера ACS.

"https://test.com/acs/auth/start.do"

paReq

string

Параметр для передачи в ACS для прохождения аутентификации.

eJxVUk1zgjAQ/SsM95KEr1pnjUOLnXqgYxUvvVHYAVQ+DFDUX99EUeshM/t2N2/3vQSmXCV5mU70dfj+N

termUrl

string

Ссылка перенаправления плательщика после аутентификации.

"https://test.com/release04/order/finishTds"

redirect

string Адрес возврата после оплаты. "https://test.com/release04/merchants/sbersafe/finish.html4"

is3DSVer2

boolean

Флаг, обозначающий то, что платёж/перевод будет проведён по протоколу 3DS версии 2.0. Доступны следующие значения:

  • true (истина) - платёж/перевод будет проведён по протоколу 3DS версии 2.0;
  • false (ложь) - платёж/перевод не будет проводиться по протоколу 3DS версии 2.0.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

packedCReq

string

Запакованные данные challenge request. Это значение следует использовать как значение параметра creq ссылки на ACS (acsUrl), для перенаправления клиента на ACS.

threeDSServerTransId

string

Идентификатор транзакции созданный на сервере 3DS.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

threeDSMethodURL

string

URL-адрес ACS для сбора данных о браузере.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

threeDSMethodURLServer

string

URL-адрес сервера 3DS для сбора данных о браузере для включения в запрос аутентификации AReq (Authentication Request) от сервера 3DS к серверу ACS.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

threeDSMethodDataPacked

string

Данные CReq (Challenge Response) для отправки на сервер ACS, закодированные в Base64.

Параметр используется при проведения аутентификации клиента по протоколу 3DS версии 2.0.

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

POST /order/payment?mdOrder=0f7a3d11-43ac-7942-80ce-08f700f18047&pan=4276010013296064&expiry=202412&cardholder=Integration%20Tester&cvc=555&phone=9875270160&email=test@test.com HTTP/1.1
Host: 3dsec.sberbank.ru/sbersafe

Content-Type: application/x-www-form-urlencoded

Accept: application/json

Content-Length: <content-lenght>

Пример ответа:

HTTP/1.1 200 OK
Content-Type: application/json
Cache-Control: no-cache
{"errorCode":0,"mdOrder":"0f7a3d11-43ac-7942-80ce-08f700f18047","orderStatus":"DEPOSITED","redirect":"https://test.com/payment/merchants/rbs/finish.html?orderId=0f7a3d11-43ac-7942-80ce-08f700f18047&lang=ru","status":"SUCCESS"}