Интеграция через опрос статуса
Для систем, не поддерживающих интеграцию через уведомления об изменении статуса, предназначен этот метод опроса статуса.
Для проверки статуса платежа выполните следующий GET-запрос:
curl --request GET \
--url https://api.voidpay.biz/api/v1/merchant/payments/byOrderId/{orderId}/status \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json'
Здесь orderId - это уникальный идентификатор платежа в вашей системе.
Типичный ответ выглядит следующим образом:
{
"id": "88cbb0e7-7a55-451e-8143-8915f71b838f",
"orderId": "9453",
"status": "paid"
}
При получении статуса paid или disput-paid, вы должны подтвердить изменение статуса на вашей стороне, вызвав метод ack:
curl --request POST \
--url https://api.voidpay.biz/api/v1/merchant/payments/byOrderId/ack \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"orderId": "9453"
}'
Получение дополнительной информации о платеже
В случаях, когда требуется детализированная информация о платеже, например, для определения финальной суммы в спорных транзакциях, используется следующий технический запрос:
curl --request GET \
--url https://api.voidpay.biz/api/v1/merchant/payments/byOrderId/{orderId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json'
Здесь orderId обозначает уникальный идентификатор транзакции в вашей системе.
Стандартный ответ API содержит следующие данные:
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"orderId": "string",
"amount": 0,
"finalAmount": 0,
"status": "disput-paid",
"currency": "rub"
}
Поле finalAmount - опциональное и является суммой на которую оспорили заявку, это поле существует только у заявок со статусом disput-paid
Этот запрос позволяет точно определить суммы, связанные с спорными платежами, что необходимо для корректной обработки и решения таких споров.