© Tillypad, 2004-2023

© Tillypad, 2004-2023
POST
/pay-guest
{ "DiscountSums": [ { "type_ID": "60D367B5-15D2-D24D-8A74-A28F40C8CB9D", "sum": 20 } ], "AppliedDiscountSums": [ { "type_ID": "0412C97B-AF11-2447-88D9-B40FA0EB996D", "sum": 20 } ] }
или
"<Текст ошибки>"
Необязательный параметр запроса. Используется при пересчете скидки по баллам.
Значение флага | Описание | Примечание |
---|---|---|
0 | Не удалять | Применить абсолютную скидку Если нет элементов, не переданных в оплату (не включенных в пречек), выводится ошибка «Счет уже передан в оплату». |
1 | Удалить все пречеки | Применить абсолютную скидку Если есть хоть один пречек со статусом «Оплачен», выводится ошибка, что счет уже оплачен |
2 | Удалить неоплаченные пречеки | Применить абсолютную скидку @DiscountSum, отменив все пречеки оплата которых еще не началась. Остальные пречеки удаляются, если для них нет чеков |
В секции BODY
запроса два параметра Payment
и DiscountSum
(необязательный - при наличии), в секции HEADER
необходимо указать "Content-Type: application/json"
.
curl \ -H "Content-Type: application/json" \ -d @pay_in.json \-o out.json \
--url "http://89.22.216.169:8090/pay-guest?delete
Параметры на входе:
{ "Payment": { "gest_ID": "61BA736D-E34C-9C4B-97D3-E71BC2903915", Обязательный параметр "payType_ID": "CADA63B6-6833-574F-8427-AB98AE931814", Необязательный параметр "paySum": 3000 Необязательный параметр }, "DiscountSum": [ Необязательный параметр { "type_ID": "480F64A0-B729-3140-B796-678A1CD754F0", Необязательный параметр "sum": 100 Обязательный параметр } ] }
Ответ:
{ "DiscountSums": [ { "type_ID": "60D367B5-15D2-D24D-8A74-A28F40C8CB9D", "sum": 20 } ], "AppliedDiscountSums": [ {
или
"<Текст ошибки>"
Поле paySum необязательно для заполнения, если paySum не будет заполнено, то пречек и чек не будет сформирован
Поле payType_ID необязательно для заполнения, но если не заполнено поле оплачиваемого счета gsdlv_pytp_ID_Prepaid, то будет возвращена ошибка «Для проведения оплаты должен присутствовать либо payType_ID, либо gsdlv_pytp_ID_Prepaid». Также заполненное поле payType_ID записывает (или перезаписывает) значение поля gsdlv_gest_ID_Prepaid.
В pay-guest
можно передавать DiscountSum - скидку в виде баллов, где поле type_ID необязательное, так как может быть заполнено из настроек модуля, а sum - сумма скидки
Сумма оплаты должна совпадать с итоговой суммой заказов счета (учитывая частичную оплату баллами, если они есть), а иначе «Сумма интернет-оплаты не может отличаться от итоговой суммы счета».
После обработки (удаления) пречеков, указанное значение суммы скидки @DiscountSum
сохраняется в служебной заметке, после чего вызывается пересчет скидок процедурой p_CalcDiscount
.
Если paySum
полностью соответствует сумме счета (считая баллы), то формируется пречек и чек в статусе «Оплачено» на указанную сумму указанным типом оплаты.
В ответе запроса должны содержаться DiscountSum
(заявленная сумма баллов) и AppliedDiscountSum
(примененная сумма баллов), если AppliedDiscountSum
отсутствует - значит скидка по баллам не настроена (баллы не начислены).