Запрос возврата успешного перевода (returnPayment) Данный запрос позволяет осуществить возврат успешного перевода на счет плательщика. Успешный перевод может быть возвращен как полностью, так и частично. Полный список параметров для этого типа запрашиваемой операции приведен в Таблица . Параметры запроса возврата успешного перевода». Все параметры обязательные. В случае если обязательный параметр отсутствует, возвращается ошибка «Неверное значение параметра NNNN».
Адрес операции: https://server:port/webservice/mws/api/returnPayment.
Таблица . Параметры запроса возврата успешного перевода
Название параметра
| Тип
| Примечания
| clientOrderId
| ClientTransactionNumber
| Уникальный идентификатор операции возврата. Рекомендуемые значения: целое, положительное, линейно нарастающее десятичное число.
| requestDT
| xs:dateTime
| Время формирования запроса на выполнение операции по часам ИС Контрагента.
| invoiceId
| xs:long
| Номер транзакции возвращаемого перевода.
| shopID
| xs:long
| Идентификатор Контрагента, присвоенный Оператором.
| amount
| CurrencyAmount
| Сумма, которую необходимо вернуть на счет плательщика.
| currency
| CurrencyCode
| Код валюты возвращаемого перевода.
| сause
| xs:string, до 255 символов
| Описание причины возврата.
| Ответ содержит общие поля состояния операции (см. Таблица . Описание общих параметров ответа»). Ошибки, которые могут возникнуть при запросе возврата успешного перевода, перечислены в Таблица . Коды ошибок операций».
Правила обработки запросов Каждый запрос должен быть сформирован с уникальным значением номера операции (clientOrderId).
Если запрос отправлен с уже ранее обработанным номером операции (clientOrderId) и остальные параметры запроса, кроме requestDT, совпадают с предыдущей попыткой, то Оператор возвращает результат обработки ранее отправленного запроса.
Если запрос отправлен с уже ранее обработанным номером операции (clientOrderId), а остальные параметры имеют отличные от первой попытки значения, то Оператор отвергает такой запрос и возвращает в ответе status=3, error=405.
Оператор обрабатывает полученный запрос немедленно. Если обработать запрос в течение нескольких секунд невозможно, то возвращается ответ «в процессе обработки» (status=1). В этом случае ИC следует повторить запрос с теми же данными для получения окончательного ответа. Рекомендуется следующий режим повтора: первый повтор через 1 минуту, следующие три — с промежутком в 5 минут, далее — не чаще чем раз в 30 минут.
При отсутствии ответа от Оператора, а также при нечетком ответе (например, HTTP status 500 или status=1) следует повторить запрос с теми же данными для получения окончательного ответа. Рекомендуется следующий режим повтора: первый повтор через 1 минуту, следующие три — с промежутком в 5 минут, далее — не чаще чем раз в 30 минут.
Статус операции, находящейся в обработке (status=1), может измениться как на «успех», так и на «отвергнут».
Если запрос отвергнут Оператором, то в ответе возвращается status=3 и error= с расшифровкой причины отказа. В некоторых случаях может присутствовать поле techMessage, содержащее дополнительную поясняющую информацию в виде текста произвольного формата. Этот текст предназначен для анализа техническими специалистами и не должен отображаться в каком-либо интерфейсе пользователя.
Пример . Запрос
clientOrderId="12345"
requestDT="2011-07-02T20:38:00.000Z"
invoiceId="2000000123"
shopID="6689"
amount="10.00"
currency="643"
cause="Пользователь отказался принять заказ"
/>
Пример . Ответ
clientOrderId="12345"
status="0" error="0"
processedDT="2011-07-02T20:38:01.000Z"
/>
|