Уведомления
Уведомления об изменениях статусов транзакций отправляются через callback с нашего Back-end на адрес, указанный в параметре notify_url
(метод prepare_payment
) и приходят только по тем платежам, которые были созданы через API системы Octo.
Callback уведомления
Структура callback
json
{
"shop_transaction_id": "7339d5be-871b-45d8-ab07-dbbd51364c2f",
"octo_payment_UUID": "4556a13e-f763-4b91-9387-92395fd51ccf",
"status": "succeeded",
"signature": "64F35398F22FE63FE780583F8BEEDE170094CE5D",
"hash_key": "e27d3f79-3189-44e9-8a66-566a141025df",
"total_sum": 1,
"transfer_sum": 0.97,
"refunded_sum": 0,
"card_country": "UZ",
"maskedPan": "427831** **** 3011",
"rrn": "436456776123",
"riskLevel": 0,
"payed_time": "2024-12-25 15:25:14",
"card_type": "internationalVisa"
}
Параметры callback
Параметр | Тип | Обязательность | Описание |
---|---|---|---|
shop_transaction_id | String | Да | Уникальный идентификатор транзакции в системе партнера |
octo_payment_UUID | String | Да | Уникальный идентификатор платежа в системе Octo |
status | String | Да | Статус платежа |
signature | string | Да | Криптографическая подпись для проверки подлинности данных |
hash_key | String | Да | Ключ хэширования для валидации данных |
total_sum | Decimal | Нет | Общая сумма платежа |
transfer_sum | Decimal | Нет | Сумма, зачисленная на счёт партнера после удержания комиссии |
refunded_sum | Decimal | Нет | Сумма, возвращённая клиенту (если был возврат) |
card_country | String | Нет | Страна, в которой была выпущена карта |
maskedPan | String | Нет | Маскированный номер карты клиента |
rrn | String | Нет | Retrieval Reference Number — уникальный идентификатор операции в процессинговой системе |
riskLevel | Integer | Нет | Уровень риска транзакции (например, от 0 до 5 ) |
payed_time | String | Нет | Дата и время успешного платежа в формате YYYY-MM-DD HH:MM:SS |
card_type | String | Нет | Тип карты |
is_physical_card | Boolean | Нет | Флаг, указывающий, является ли карта физической (true ) или виртуальной (false ) |
Примечание
Проверка signature и hash_key осуществляется путём вычисления хеша по формуле:
sha1(sha1(secret, hash_key), uuid, status) где:
- secret – секретный ключ, известный только отправителю и получателю;
- hash_key – ключ хеширования, возможно, уникальный для каждой транзакции;
- uuid – идентификатор платежа (например,
octo_payment_UUID
); - status – статус платежа (
succeeded
,failed
и.т.д.).
Настройка уведомлений
- Ссылку для получения уведомлений необходимо указать в Личном Кабинете (ЛК) магазина.
- Указанная ссылка будет отображаться в параметре
notify_url
во всех запросах, относящихся к этим платежам.
Примечание
Убедитесь, что указанный URL корректен и доступен для обработки уведомлений от Octo.