Обратные вызовы (Callbacks)
После обработки платежа и получения ответа от банка Epoint отправляет данные платежа на ваш сервер через POST-запрос на ваш result_url.
Процесс обратного вызова
- Epoint отправляет параметры
dataиsignatureчерез POST на вашresult_url - Ваш сервер проверяет подпись для подтверждения подлинности ответа
- Ваш сервер декодирует данные для получения информации о платеже
Проверка обратного вызова
Чтобы убедиться, что обратный вызов действительно от Epoint:
- Сгенерируйте подпись на вашем сервере, используя полученный
dataи вашprivate_key:
Encode & Sign
1signature = base64_encode(sha1(private_key + data + private_key, 1))-
Сравните сгенерированную подпись с подписью, полученной от Epoint
-
Если они совпадают, ответ является подлинным и не был изменён
-
Декодируйте данные:
Encode & Sign
1result = json_decode(base64_decode(data))Параметры ответа обратного вызова
| Параметр | Описание |
|---|---|
order_id | Уникальный идентификатор заказа из вашего приложения |
status | Результат транзакции: success или failed |
code | Код ответа банка |
message | Сообщение о статусе платежа |
transaction | Идентификатор транзакции Epoint |
bank_transaction | Идентификатор банковской транзакции |
bank_response | Ответ банка на платёж |
operation_code | 001 — регистрация карты, 100 — платёж клиента |
rrn | Retrieval Reference Number — уникальный идентификатор (только для успешных транзакций) |
card_name | Имя держателя карты, указанное на странице оплаты |
card_mask | Маска карты в формате 123456******1234 |
amount | Сумма платежа |
other_attr | Дополнительные параметры |
trace_id | Уникальный идентификатор запроса для отладки и поддержки |
Статусы платежей
| Статус | Описание |
|---|---|
new | Платёж зарегистрирован в системе Epoint |
success | Платёж успешно завершён |
returned | Возврат платежа обработан |
error | Произошла ошибка при обработке платежа |
server_error | Ошибка проверки статуса |
API проверки статуса
Вы можете проверить статус платежа в любое время, используя эндпоинт Получить статус.