Запрос возврата по устаревшему заказу сроком более двух лет (instantRefund.do)

Для возврата средств по устаревшему заказу сроком более двух лет используется запрос instantRefund.do.

Данный запрос доступен мерчанту только при наличии у него пермиссии «Разрешены прямые выплаты без проверки заказов».

*В запросе передается либо карточные данные, либо bindingId, либо seToken.

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

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

Пользуясь протоколом REST, тело сообщения запроса следует отправлять с типом: 'Content-Type: application/x-www-form-urlencoded'.

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

Параметры запроса представлены в таблице ниже.

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

userName

AN..30

Да

Логин магазина, полученный при подключении. Если вместо аутентификации по логину и паролю используется открытый токен (параметр token), параметр userName передавать не нужно.

password

AN..200

Да

Пароль магазина, полученный при подключении. Если для аутентификации при регистрации вместо логина и пароля используется открытый токен (параметр token), параметр password передавать не нужно.

amount

N..12

Да

Сумма платежа в минимальных единицах валюты.

language

A2

Нет

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

currency

N3

Нет

Код валюты платежа ISO 4217. Если не указано, то используется значение по умолчанию.

orderNumber

ANS..32

Нет

Номер (идентификатор) заказа в системе магазина, уникален для каждого магазина в пределах системы. Если номер заказа генерируется на стороне платёжного шлюза, этот параметр передавать необязательно

bindingId

AN..255

*Нет

Идентификатор связки созданной при оплате заказа или использованной для оплаты. Присутствует только если магазину разрешено создание связок.

seToken

AN..8192

*Нет

Параметр, содержащий шифрованное значение платёжных данных, введённых клиентом на стороне ТСП.

Комбинации валидных вариантов seToken:

timestamp/uuid/PAN/CVV/EXPDATE
timestamp/uuid/PAN//EXPDATE
timestamp/uuid//CVV///bindingId
timestamp/uuid/////bindingId

pan

N12…19

*Нет

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

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

cvc

N3

*Нет

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

expiry

N6

*Нет

Год и месяц окончания срока действия карты в следующем формате:

YYYYMM.

cardHolderName

AS..26

*Нет

Имя держателя карты. Указан только после оплаты заказа. Длина поля ограничена 26 символами (латинские буквы, точка, пробел).

jsonParams

Строка

Нет

Дополнительные параметры запроса. Формат вида: {«Имя1»: «Значение1», «Имя2»: «Значение2»}. При указании «showLoyalty»:«false» взаимодействие с сервисом лояльности осуществляться не будет.

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

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

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

Параметры ответа представлены в таблице ниже.

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

errorCode

N..2

Нет

Код ошибки. Может отсутствовать, если результат не привёл к ошибке.

errorMessage

AN..512

Нет

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

orderId

ANS36

Нет

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

orderStatus

N1

Нет

Блок с информацией о статусе заказа. См. описание ниже

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

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

approvalCode

AN6

Нет

Код авторизации международной платёжной системы. Поле фиксированной длины (6 символов), может содержать цифры и латинские буквы.

rrn

N..12

Нет

Reference Retrieval Number - идентификатор транзакции, присвоенный банком-эквайером.

ErrorCode

N..2

Нет

Код ошибки. Может отсутствовать, если результат не привёл к ошибке.

ErrorMessage

AN..512

Нет

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

Коды ошибок

Код ошибки Текст ошибки
0

Обработка запроса прошла без системных ошибок.

5

Доступ запрещён.

5

Пользователь должен сменить свой пароль.

5

[orderId] не задан.

5

Неверная сумма.

6

Неверный номер заказа.

7

Платёж должен быть в корректном состоянии.

7

Сумма возврата превышает сумму списания.

7

Системная ошибка.

Примеры

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

password=testPwd&pan=5555555555555599&cvc=123&expiry=202412&cardHolderName=Test Test&amount=1000&userName=test-api&language=RU

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

{"errorCode":"0","errorMessage":"Успешно"}