Функция работы с оплатами заказа
Оплата по заказу формирует кассовый чек, если она проведена, т.е. установлен флаг accepted. Можно создавать непроведенные оплаты, которые никак не влияют на заказ. Например, мы создали заказ и запланировали предоплату и окончательную оплату с отгрузкой. Мы можем их создать заранее, в дальнейшем при получении денег за заказ, мы просто проводим созданные оплаты и автоматически создаются чеки. Флаг отгрузки заказа влияет на тип формируемого кассового чека. Его нужно указывать, когда товар физически передается покупателю. Например, если создать и провести 100% оплату без отгрузки, то система рассчитает чек как предоплата 100%, и далее нужно провести оплату с нулевой суммой и флагом отгрузки, чтобы сформировался чек окончательного расчета. В большинстве случаев, при оплате товара в магазине, когда товар передается сразу покупателю, формируется оплата 100% с отгрузкой, в этом случае формируется чек полного расчета.
Функция работы с оплатами позволяет добавить, провести, или удалить оплату по заказу. Список оплат в заказе можно получить из объекта заказа. Получаем заказ при помощи функции получения заказа по идентификатору, в поле payments находится массив объектов оплат в заказе.
Объект оплаты в заказе
Поле | Описание | Тип, возм. значения |
---|---|---|
id | Системный идентификатор оплаты в заказе | Целое число |
order_id | Системный идентификатор заказа | Целое число |
pay_accepted | Флаг проведения оплаты | 0 - оплата не проведена, 1 - оплата проведена |
sum_nal | Сумма оплаты наличными | Целое или вещественное положительное число, до 2 десятичных разрядов, разделитель разрядов точка |
sum_bn | Сумма оплаты электронными средствами платежа | Целое или вещественное положительное число, до 3 десятичных разрядов, разделитель разрядов точка |
full_sum | Полная сумма оплаты (наличные + электронно) | Целое или вещественное положительное число, до 2 десятичных разрядов, разделитель разрядов точка |
shipped | Флаг отгрузки | 0 - не отгружается при оплате, 1 - отгружается при оплате |
receipt | Объект чека по заказу | Объект чека, если оплата проведена и чек сформирован |
Создание оплаты
PUT https://vsevkassu.ru/api/v1/store/order/{order_id}/payment
Метод добавляет оплату в существующий заказ order_id по указанным параметрам. В качестве параметров в теле запроса передается JSON-объект параметров оплаты. Если передан параметр accepted, то оплата сразу проводится.
Пример:
PUT https://vsevkassu.ru/api/v1/store/order/1/payment { "sum_nal" : 0, "sum_bn": 1000, "shipped" : 1, "accepted" : 1 }
В ответ отдается объект оплаты при успешном добавлении, либо ошибка добавления.
Изменение параметров оплаты
Изменение параметров оплаты возможно только в случае, если оплата не проведена.
POST https://vsevkassu.ru/api/v1/store/order/{order_id}/payment/{payment_id}
Функция изменяет оплату в заказе order_id с идентификатором payment_id, в соответствии с переданными параметрами в объекте в теле запроса. Список полей, которые можно изменить:
{ "sum_nal": 1000, "sum_bn": 0, "shipped" : 1, "accepted" : 1, }
Для проведения созданной оплаты вызывается данная функция с одним параметром accepted
{ "accepted" : 1, }
Удаление оплаты
DELETE https://vsevkassu.ru/api/v1/store/order/{order_id}/payment/{payment_id}
Удаляет оплату из заказа order_id по ее системному идентификатору payment_id. Удаление возможно только если оплата не проведена.