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

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

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

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

  • 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.

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

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

orderId

ANS36

Да

Номер заказа в платежной системе. Уникален в пределах системы. Отсутствует, если регистрация заказа не удалась по причине ошибки, детализированной в errorCode.

language

A2

Нет

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

bindingId

AN..255

обязательно, если не передаётся pan

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

pan

N12…19

обязательно, если не передаётся bindingId

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

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

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

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

errorCode

N..2

Да

Код ошибки.

errorMessage

AN..512

Нет

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

minAmount

N..20

Нет

Минимальная сумма бонусных баллов, которая может быть использована при оплате заказа.

maxAmount

N..20

Нет

Максимальная сумма бонусных баллов, которая может быть использована при оплате заказа. В рамках одного платежа пользователь не может потратить больше баллов, чем указано в этом параметре.

serviceName

AN..512

Нет

Код бонусной программы внутри системы.

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

Значение Описание
0 Обработка запроса прошла без системных ошибок.
5 Доступ запрещён.
6 Заказ не найден.
7 Системная ошибка.

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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:loy="http://engine.paymentgate.ru/webservices/sbrf/loyalty">
   <soapenv:Header/>
   <soapenv:Body>
      <loy1:getAvailableLoyalty xmlns:loy1="http://engine.paymentgate.ru/webservices/merchant/loyalty">
         <arg0>
            <bindingId> </bindingId>
            <language> </language>
            <orderId>3c52bbe4-777f-49b0-afb8-bb2b6a971f74</orderId>
            <pan>4276010013866254</pan>
         </arg0>
      </loy1:getAvailableLoyalty>
   </soapenv:Body>
</soapenv:Envelope>

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

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns1:getAvailableLoyaltyResponse xmlns:ns1="http://engine.paymentgate.ru/webservices/merchant/loyalty">
         <return errorCode="0">
            <loyaltyOperations>
               <maxAmount>6000</maxAmount>
               <minAmount>0</minAmount>
               <serviceName>sbrf_spasibo</serviceName>
            </loyaltyOperations>
         </return>
      </ns1:getAvailableLoyaltyResponse>
   </soap:Body>
</soap:Envelope>