Вебхук отмены
Вебхук, отправляемый мерчанту при отмене транзакции
Общая информация
Транзакция может быть отменена двумя способами:
- вами (клиентом) через бизнес-панель Paylov
- сотрудниками процессинга Paylov
В обоих случаях Paylov отправляет вебхук transaction.cancel на ваш endpoint мерчанта.
Важно
Чтобы получать вебхуки, сначала webhook URL, username и password должны быть привязаны к вашему мерчанту на стороне Paylov. Отправьте эти данные в Paylov — пока они не привязаны, вебхук не отправляется.
Детали запроса
Method:
POST
URL: ваш webhook URL
Header:
Authorization: Basic base64(username:password)
Content-Type: application/jsonЗапрос отправляется как JSON-RPC 2.0 notification.
Пример запроса
{
"jsonrpc": "2.0",
"method": "transaction.cancel",
"params": {
"transaction_id": "9b3bd7be-9327-4608-b886-4353e49df05f",
"status": "cancelled",
"account": {
"order_id": "12345"
},
"amount": 1500,
"amount_in_tiyin": 150000,
"cancel_time": 1767162243
}
}Параметры
| Поле | Тип | Описание |
|---|---|---|
transaction_id | string | ID транзакции Paylov |
status | string | Всегда cancelled |
account | object | Поля account, переданные при создании транзакции |
amount | integer | Сумма в сумах (только целая часть) |
amount_in_tiyin | integer | Сумма в тийинах. Используйте это поле для точной суммы |
cancel_time | integer | Время отмены, Unix timestamp в секундах |
Ожидаемый ответ
Верните любой HTTP статус 2xx. Тело ответа не проверяется.
Повторные отправки
Если ваш endpoint вернёт статус не 2xx или не ответит (таймаут подключения 5s, таймаут чтения 30s), вебхук будет повторно отправлен до 3 раз с интервалом 60 секунд. Один и тот же вебхук может прийти несколько раз — используйте transaction_id для отсева дубликатов.