Счета от поставщиков.
https://selena-online.ru/rest/v1/supplier-bills [POST, PUT, DELETE]
POST - добавляет новые счета.
PUT - вносит изменения в счета.
DELETE - удаляет счета. Удаляются также все платежи поставщикам, ассоциированные с удалёнными счетами.
Входные данные передаются в теле http-запроса. Они могут быть представлены в двух форматах: XML или JSON. Передаваемый сервису http-запрос должен содержать заголовок Content-Type, соответствующий формату входных данных: application/xml или application/json.
Допускается пакетная обработка запроса, когда входные данные включают информацию сразу о нескольких счетах. Пакет обрабатывается как транзакция: commit выполняется только при полном отсутствии ошибок во всех документах. Операция POST перед записью не выполняет проверку базы данных на предмет наличия счетов с аналогичными параметрами.
В следующей таблице приведены поля структуры входных данных.
| Поле | Описание | Методы |
|---|---|---|
| BillID | Уникальный ID счёта. | PUT, DELETE |
| OrderID | Уникальный ID заказа. | POST, PUT, DELETE |
| SupplierID | ID поставщика. | POST, PUT |
| Date | Дата счёта. | POST, PUT |
| Number | Номер счёта. | POST, PUT |
| BillSum | Сумма счёта, включая (возможную) комиссию. | POST, PUT |
| ToPaySum | Сумма счёта к оплате, за вычетом (возможной) комиссии. | POST, PUT |
| Note | Примечание, особые заметки к счёту. Необязательный параметр. | POST, PUT |
| TouristID | Идентификатор туриста в заказе (атрибут RecID в списке туристов заказа), назначаемый автоматически при создании заказа. Не путать с идентификатором заказчика из справочника покупателей - частных лиц. Используется, если поставщик выставляет отдельный счёт на каждого туриста в заказе. Необязательный параметр. | POST, PUT |
| Currency | Валюта счёта. Необязательный параметр, по умолчанию - основная валюта системы. | POST, PUT |
Примерный шаблон структуры входных данных в формате JSON:
[
{
"BillID": 1776,
"OrderID": 7135,
"SupplierID": 964,
"Date": "2021-01-01",
"Number": "778",
"BillSum": 10760,
"ToPaySum": 9000,
"TouristID": 23841
},
{
...
}
]
Шаблон структуры входных данных в формате XML:
<?xml version="1.0" encoding="utf-8"?>
<Bills>
<Bill>
<BillID>1776</BillID>
<OrderID>7135</OrderID>
<SupplierID>964</SupplierID>
<Date>2021-01-01</Date>
<Number>778</Number>
<BillSum>10760</BillSum>
<ToPaySum>9000</ToPaySum>
<TouristID>23841</TouristID>
</Bill>
</Bills>
Методы PUT и DELETE возвращают статус выполненной операции - успех или неудача.
Метод POST возвращает список уникальных идентификаторов (BillID) счетов, добавленных после успешного выполнения запроса. Порядок следования элементов списка соответствует порядку счетов, переданных на вход методу. Ответ в формате JSON:
[ 290311,290312,290313 ]
... и XML:
<Inserted>290311,290312,290313</Inserted>