Возврат/Отмена платежа (Refund)

Запрос Refund используется для проведения возврата средств или отмены платежа.

Возврат денег можно выполнить через личный кабинет M-portal , либо через вызов метода API - Refund.

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

Запрос c необходимыми параметрами формируется на стороне торговца и передается методом POST по протоколу HTTP на URL https://api.wayforpay.com/api

 

Параметр

Описание

Обязательное

transactionType

Тип запроса, принимает значение REFUND

да

merchantAccount

Уникальный идентификатор продавца.

да

orderReference

Уникальный номер заказа в системе торговца

да

amount

Сумма возврата

да

currency

Валюта заказа: UAH

да

comment

Комментарий мерчанта, описание причины реверса. Кодировка UTF-8

да

merchantSignature

Подпись запроса

да

apiVersion

Версия протокола.

Значение по-умолчанию: 1

да

productName[]

Массив с наименованием заказанных товаров

нет

productPrice[]

Массив с ценами за единицу товара. Данная информация будет видна на странице оплаты заказа

нет

productCount[]

Массив с количеством заказанного товара по каждой позиции.

нет

В целях подтверждения валидности данных должна быть сгенерирована и передана в запросе HMAC_MD5 контрольная подпись с использованием SecretKey торговца.

Строка, подлежащая HMAC_MD5, генерируется путем конкатенации парамаетров merchantAccount, orderReference, amount, currency разделенных “;” (точка с запятой) в кодировке UTF-8

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

 

Параметр

Описание

Обязательное

merchantAccount

Идентификатор продавца

да

orderReference

Уникальный номер заказа в системе торговца

да

transactionStatus

Статус обработки возврата. Может содержать следующие значения:

- Refunded,Voided

- Declined

да

reason

Причина отказа

да

reasonCode

Код отказа

да

 

Параметры запроса шлюза WayForPay в ответ

В целях подтверждения валидности данных должна быть сгенерирована и передана в запросе HMAC_MD5 контрольная подпись с использованием SecretKey торговца.

Строка, подлежащая HMAC_MD5, генерируется путем конкатенации парамаетров merchantAccount, orderReference, transactionStatus, reasonCode,  разделенных “;” (точка с запятой) в кодировке UTF-8

 

Пример запроса и ответа

Запрос:
{
"transactionType":"REFUND",
"merchantAccount":"test_merchant",
"orderReference":"DH783023",
"amount":100,
"currency":"UAH",
"comment":"Нет в наличии товара",
"merchantSignature":"b95932786cbe243a76b014846b63fe92",
"apiVersion": 1
}
Ответ:
{
"orderReference":"DH783023",
"transactionStatus":"refunded",
"reasonCode":1100,
"reason":"ok",
"merchantAccount":"test_merchant"
}