Запрос проведения оплаты по связке

Для проведения платежа по связкам используется запрос paymentOrderBinding.

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

  • A<n> – последовательность латинских букв длины <n>;
  • A..<n> – последовательность латинских букв длиной, не превышающей <n>;
  • N<n> – последовательность цифр длины <n>;
  • N..<n> – последовательность цифр длиной, не превышающей <n>;
  • AN<n> – последовательность латинских букв и цифр фиксированной длины <n>;
  • AN..<n> – последовательность латинских букв и цифр длиной, не превышающей <n>;
  • ANS<n> – последовательность латинских букв, цифр и символов фиксированной длины <n>
  • ANS..<n> – последовательность латинских букв, цифр и символов длиной, не превышающей <n>;
  • UTC – дата и время, при этом: дата должна быть передана без указания часового пояса, время московское, для протокола SOAP используется стандартная кодировка xs:dateTime.

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

Название Тип Обязательно Описание

mdOrder

ANS..36

Да

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

bindingId

AN..255

Да

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

params

См. столбец с описанием.

Нет

Дополнительный тег с атрибутами для передачи дополнительных параметров. Поля дополнительной информации для последующего хранения. Данные поля могут быть переданы на обработку банком для последующего отображения в реестрах. По умолчанию на обработку банком передаются поля номер заказа orderNumber и его описание orderDescription (не более 99 символов, запрещены к использованию «%» (процент), «+» (плюс), «\r» (конец строки) и «\n» (перенос строки)).

Включение данного функционала возможно по согласованию с банком в период интеграции. Для передачи N параметров, в запросе должно находиться N тегов params, где атрибут name содержит название, а атрибут value содержит значение (см. ниже).

Название Тип Описание

name

ANS..255

Название дополнительного параметра.

value

ANS..2000

Значение дополнительного параметра - до 2000 символов.

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

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

language

A2

Нет

Язык в кодировке ISO 639-1. Если не указан, будет использован язык, указанный в настройках магазина как язык по умолчанию.

ip

ANS..39

Нет

IP-адрес покупателя. IPv6 поддерживается во всех запросах (до 39 символов).

cvc

N3

Нет

Этот параметр обязателен, если для продавца не выбрано разрешение Может проводить оплату без подтверждения CVC.

email

ANS..40

Нет

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

billingPayerData

См. описание

Нет

Блок c регистрационными данными клиента (адрес, почтовый индекс), необходимыми для прохождения проверки адреса в рамках сервисов AVS/AVV.

Обязателен, если активна соответствующая пермиссия для мерчанта («Разрешено использование AVS/AVV»).

billingPayerData

Параметры блока billingPayerData

Название Тип Обязательно Описание

billingCity

AN..50

Нет

Город, зарегистрированный по конкретной карте у Банка Эмитента

billingCountry

AN..50

Нет

billingAddressLine1

AN..50

Нет

Адрес, зарегистрированный по конкретной карте у Банка Эмитента

Строка 1.

Обязательно, если у Мерчанта активирована пермиссия «Разрешено использование AVS/AVV».

billingAddressLine2

AN..50

Нет

Адрес, зарегистрированный по конкретной карте у Банка Эмитента

Строка 2.

billingAddressLine3

AN..50

Нет

Адрес, зарегистрированный по конкретной карте у Банка Эмитента

Строка 3.

billingPostalCode

AN..50

Нет

Почтовый индекс, зарегистрированный по конкретной карте у Банка Эмитента.

Обязательно, если у Мерчанта активирована пермиссия «Разрешено использование AVS/AVV».

billingState

AN..50

Нет

Штат, зарегистрированный по конкретной карте у Банка Эмитента (ISO 3166-2)

* По умолчанию в процессинг банка передаются поля номер заказа orderNumber и его описание description (не более 24 символов, запрещены к использованию %, +, конец строки \r и перенос строки \n)

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

Название Тип Обязательно Описание

redirect

ANS..*

Нет

Параметр возвращается при успешном ответе в случае платежа, в котором не происходило проверки на принадлежность карты к 3-D Secure. URL-адрес, на который производится переадресация после платежа.

info

ANS..*

Нет

При успешном ответе. Результат попытки оплаты. Возможные значения представлены ниже.

  • Ваш платёж обработан, происходит переадресация…
  • Операция отклонена. Проверьте введённые данные, достаточность средств на карте и повторите операцию. Происходит переадресация…
  • Извините, платёж не может быть совершён. Происходит переадресация…
  • Операция отклонена. Обратитесь в магазин. Происходит переадресация…
  • Операция отклонена. Обратитесь в банк, выпустивший карту. Происходит переадресация…
  • Операция невозможна. Аутентификация держателя карты завершена неуспешно. Происходит переадресация…
  • Нет связи с банком. Повторите позже. Происходит переадресация…
  • Истёк срок ожидания ввода данных. Происходит переадресация…
  • Не получен ответ от банка. Повторите позже. Происходит переадресация…

errorCode

N..2

Да

Код ошибки.

errorMessage

AN..512

Нет

Описание ошибки на языке, переданном в параметре language в запросе.

acsUrl

AN..512

Нет

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

paReq

AN..512

Нет

Запрос аутентификации плательщика.

Коды ошибок (поле errorCode):

Значение Описание
0 Обработка запроса прошла без системных ошибок.
1 Необходимо указать CVC2/CVV2, поскольку у мерчанта нет разрешения на проведение оплаты без CVC.
1 Неверный формат CVC.
1 Неверный язык.
1 [mdOrder] не задан
1 [bindingId] не задан
1 Адрес электронной почты не удовлетворяет шаблону
2 Связка не найдена.
2 Заказ не найден.
5 Доступ запрещён.
5 Пользователь должен изменить свой пароль.
5 Исчерпаны попытки оплаты или закончилось время сессии.
7 Системная ошибка.

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mer="http://engine.paymentgate.ru/webservices/merchant">
    <soapenv:Header/>
    <soapenv:Body>
       <mer:paymentOrderBinding>
          <order mdOrder="9213bc5f-5d5b-43d6-a408-b6b93cdde992" bindingId="ca91a4ab-b6d4-495d-b606-8fb0114e679e" language="ru" ip="127.0.0.1" cvc="123" email=" ">
             <!-Zero or more repetitions:->
             <params name=" " value=" "/>
          </order>
       </mer:paymentOrderBinding>
    </soapenv:Body>
 </soapenv:Envelope>

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

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns1:paymentOrderBindingResponse xmlns:ns1="http://engine.paymentgate.ru/webservices/merchant">
         <return errorCode="0" info="Ваш платёж обработан, происходит переадресация..." redirect="http://example.ru?orderId=9213bc5f-5d5b-43d6-a408-b6b93cdde992"/"/>
      </ns1:paymentOrderBindingResponse>
   </soap:Body>
</soap:Envelope>