Возвраты покупателям.
https://selena-online.ru/rest/v1/refunds/<orderids> [GET]
https://selena-online.ru/rest/v1/refunds [POST, PUT, DELETE]
string:orderids - список уникальных идентификаторов заказов, разделённых запятой, для которых запрашивается информация о возвратах.
date(yyyy-mm-dd):begindate - дата начала периода запроса. Опциональный. Если не указан - принимается равным текущей дате. Игнорируется, если указан orderids.
date(yyyy-mm-dd):enddate - дата окончания периода запроса. Опциональный. Игнорируется, если указан orderids.
string:currency - валюта платежа. Опциональный, по умолчанию - валюта системы "по умолчанию".
GET - возвращает информацию о платёжных документах.
POST - добавляет новые платёжные документы.
PUT - вносит изменения в платёжные докумены.
DELETE - удаляет платёжные документы.
Входные данные в операциях POST, PUT и DELETE передаются в теле http-запроса. Они могут быть представлены в двух форматах: XML или JSON. Передаваемый сервису http-запрос должен содержать заголовок Content-Type, соответствующий формату входных данных: application/xml или application/json.
Допускается пакетная обработка запроса, когда входные данные включают информацию сразу о нескольких платёжных документах. Пакет обрабатывается как транзакция: commit выполняется только при полном отсутствии ошибок во всех документах. Операция POST перед записью не выполняет проверку базы данных на предмет наличия платежей с аналогичными параметрами.
В следующей таблице приведены поля структуры входных данных для методов POST, PUT и DELETE.
| Поле | Описание | Методы |
|---|---|---|
| OrderID | Уникальный ID заказа. | POST, PUT, DELETE |
| Date | Дата платёжного документа. | POST, PUT |
| Number | Номер платёжного документа. | POST, PUT |
| Sum | Сумма платежа в валюте счёта. | POST, PUT |
| Rate | Курс валюты: если валюта платежа = валюта заказа (счёта) - 1, если нет - курс валюты платежа по отношению к валюте заказа. | POST, PUT |
| CarrySum | Сумма платежа в валюте платежа. Например, если счёт на сумму $100, а клиент (например, по закону) должен платить рублями и платит ₽1000 при курсе ₽70 за $1, то Sum = 14.29, CarrySum = 1000, Rate = 70. | POST, PUT |
| Way | Способ платежа: 0 - платеж наличными, 1 - платеж банковским переводом, 2 - взаимозачет, 3 - платеж он-лайн. | POST, PUT |
| Currency | Валюта платежа. | POST, PUT |
| Note | Примечание, особые заметки к платежу. Необязательный параметр. | POST, PUT |
| RecID | Уникальный ID платёжного документа. | PUT, DELETE |
Шаблон структуры входных данных в формате JSON для методов POST, PUT и DELETE:
[
{
"OrderID" : 721,
"Date" : "2015-01-17",
"Number" : "63/342231",
"Sum" : 30560.20,
"Way" : 1,
"Currency": "RUB",
"Rate": 1,
"CarrySum": 30560.20
},
{
"OrderID" : 714,
"Date" : "2014-12-23",
"Number" : "452",
"Sum" : 10000,
"Way" : 0,
"Currency": "RUB",
"Rate": 1,
"CarrySum": 10000,
"Note" : "Аванс"
}
]
Шаблон структуры входных данных в формате XML для методов POST, PUT и DELETE:
<?xml version="1.0" encoding="utf-8"?>
<Refunds>
<Refund>
<OrderID>714</OrderID>
<Date>2014-12-23</Date>
<Number>452</Number>
<Sum>10000</Sum>
<Way>0</Way>
<Currency>RUB</Currency>
<Rate>1</Rate>
<CarrySum>10000</CarrySum>
<Note>Аванс</Note>
</Refund>
</Refunds>
Формат ответа, возвращаемого методом GET, аналогичен формату входных данных для PUT.
Методы PUT и DELETE возвращают статус выполненной операции - успех или неудача.
Метод POST возвращает список уникальных идентификаторов (RecID) платежей, добавленных в базу данных после успешного выполнения запроса. Порядок следования элементов списка соответствует порядку платёжных документов, переданных на вход методу. Ответ в формате JSON:
[ 290311,290312,290313 ]
... и XML:
<Inserted>290311,290312,290313</Inserted>