Инструменты страницы
Запрос отмены оплаты заказа (reverse.do)
Для запроса отмены оплаты заказа используется запрос reverse.do
. Функция отмены доступна в течение ограниченного времени после оплаты, точные сроки необходимо уточнять в «Сбербанке».
Нельзя проводить отмены и возвраты по заказам, инициализирующим регулярные платежи, т. к. в этих случаях не происходит реального списания денег.
Операция отмены оплаты может быть совершена только один раз. Если она закончится ошибкой, то повторная операция отмены платежа не пройдёт. Эта функция доступна магазинам по согласованию с банком. Для выполнения операции отмены продавец должен обладать соответствующими правами.
При проведении частичной отмены (отмены части оплаты) сумма частичной отмены передается в необязательном параметре amount. Частичная отмена возможна при наличии у магазина соответствующего разрешения в системе. Частичная отмена невозможна для заказов с фискализацией, корзиной и лоялти.
В настоящем документе при описании параметров запросов и ответов используются следующие обозначения типов данных:
- 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'.
Параметры запроса
Параметры запроса представлены в таблице ниже.
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
AN..30 | Да |
Логин служебной учётной записи продавца. При передаче логина и пароля для аутентификации в платёжном шлюзе параметр |
|
AN..200 | Да |
Пароль служебной учётной записи продавца. При передаче логина и пароля для аутентификации в платёжном шлюзе параметр |
|
N..12 | Нет |
Сумма частичной отмены. Параметр, обязательный для частичной отмены. |
|
ANS36 | Да |
Номер заказа в платежной системе. Уникален в пределах системы. Отсутствует если регистрация заказа не удалась по причине ошибки, детализированной в ErrorCode. |
|
Строка | Нет |
Дополнительные параметры запроса. Формат вида: {«Имя1»: «Значение1», «Имя2»: «Значение2»}. При указании «showLoyalty»:«false» взаимодействие с сервисом лояльности осуществляться не будет. В параметре запрещено передавать зарезервированные имена (в случае их передачи заказ может быть отклонен):
|
|
A2 | Нет |
Язык в кодировке ISO 639-1. Если не указан, будет использован язык, указанный в настройках магазина как язык по умолчанию. |
Параметры ответа
Параметры ответа представлены в таблице ниже.
Название | Тип | Обязательно | Описание |
---|---|---|---|
|
N..2 | Нет |
Код ошибки. Может отсутствовать, если результат не привёл к ошибке. |
|
|
Нет |
|
Коды ошибок
Код ошибки | Текст ошибки |
---|---|
0 |
Обработка запроса прошла без системных ошибок. |
5 |
Доступ запрещён. |
5 |
Пользователь должен сменить свой пароль. |
5 |
|
5 |
Неуспешно. |
6 |
Неверный номер заказа. |
6 |
Незарегистрированный |
7 |
Недопустимая операция для текущего состояния заказа. |
7 |
Системная ошибка. |
7 |
Реверсал невозможен. Суммы холдирования и депозита должны быть равны для транзакции после снятия блокировки средств. |
7 |
Происходит процессинг данной транзакции. Пожалуйста, повторите запрос позднее. |
7 |
Реверсал невозможен. Причина: неверные внутренние значения, проверьте суммы холда, депозита. |
7 |
Реверсал невозможен. Данному платежу установлен флаг chargeback. |
Примеры
Пример запроса POST
language=ru&orderId=9231a838-ac68-4a3e-bddb-d9781433d852
Пример ответа
{"errorCode":"0","errorMessage":"Успешно"}