Функция работы с оплатами заказа

Оплата по заказу формирует кассовый чек, если она проведена, т.е. установлен флаг 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. Удаление возможно только если оплата не проведена.