Добавление Callback URL
Callback URL — это URL-адрес, на который AlfaBit Pay отправляет уведомления о статусах транзакций. Эти уведомления позволяют вашему сервису получать обновления в реальном времени и автоматически обрабатывать изменения состояния транзакций.
Как добавить Callback URL:
Войдите в свою учетную запись AlfaBit Pay.
Перейдите в раздел “Мерчанты” и выберите нужного мерчанта.
Перейдите во вкладку "API ключи".
В секции Callback URL нажмите кнопку “Добавить” и укажите адрес, на который вы хотите получать уведомления.
После добавления Callback URL на него будут отправляться вебхуки обновления статусов транзакций.
Техническая информация о Callback URL
Метод отправки:
POST
Формат данных:
application/json
Тело запроса (
body
) содержит сериализованный объект заказа, аналогичный ответу методаGET /integration/orders/:orderUid
.Уведомления отправляются при изменении статуса транзакции.
Безопасность
⚠️ Важно! Вебхуки отправляются только с IP-адресов AlfaBit. Необходимо настроить ваш сервер на приём запросов только с доверенных IP
"callbackIps": [
"18.194.211.115",
"3.70.205.120",
"3.250.143.116",
"185.252.146.25"
]
Рекомендуется реализовать проверку IP-адреса источника при получении запроса.
Пример тела запроса
{
"netCommission": null,
"comment": "Пример комментария",
"publicComment": "Order N123456",
"merchantUid": "11111111-2222-3333-4444-555555555555",
"merchantName": "ExampleMerchant",
"merchantId": "999",
"type": "invoice-without-amount",
"status": "inProgress",
"invoiceCurrencyCode": null,
"currencyInCode": "USDCSOL",
"currencyOutCode": "USDT-INTERNAL",
"invoiceAmount": "0",
"amountInExpected": "0",
"amountInFact": "850",
"amountOutExpected": "849.48966",
"amountOutFact": "0",
"hedgeRate": "1.0004",
"isDone": false,
"apiMode": "api",
"risk": "0",
"requisites": "2xXXXXXXXHiddenXXXXXXXXXXXXXXX",
"requisitesIn": "2xXXXXXXXHiddenXXXXXXXXXXXXXXX",
"billingTag": null,
"requisitesQrCode": "https://example.org/qr-code/sample.png",
"assetInCode": "USDC",
"assetOutCode": "USDT",
"networkInCode": "SOL",
"networkOutCode": null,
"balanceAfter": "0",
"callbackUrl": "https://yourdomain.com/webhook-handler",
"invoicePublicUrl": "https://pay.example.org/invoice/xxxx-xxxx-xxxx",
"txId": "7xZpTq8NjDF3VgAwQ12RtWvPqEoKcYB94XjUPkzdvNhLrA9mJXkLmGzEyWd7Ubcz",
"expirationTime": "2025-04-09T12:14:33.418Z",
"isImPayed": false,
"isBayerPaysService": false,
"serviceFeeCurrencyCode": null,
"netFeeCurrencyCode": null,
"id": 123456,
"uid": "00000000-aaaa-bbbb-cccc-111111111111",
"createdAt": "2025-04-09T11:54:33.609Z",
"updatedAt": "2025-04-09T11:58:51.883Z",
"deletedAt": null,
"paymentTiming": "onTime",
"amountValidity": "valid",
"signature": "abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890"
}
В теле запроса передаётся JSON заказа — аналогичный GET /integration/orders/:orderUid
.
Возможные статусы транзакции
Поле status
может принимать одно из следующих значений:
created
Заявка создана, ожидается начало обработки
success
Транзакция завершена успешно
warning
Непредвиденная ошибка, требуется ручное вмешательство
failed
Ошибка при проведении транзакции
inProgress
Заявка находится в процессе выполнения
invoiceWaitCreate
Ожидается создание инвойса
invoiceNotCreated
Ошибка создания инвойса
invoiceWaitRequisites
Ожидается выдача реквизитов
invoiceWaitPay
Ожидание оплаты клиентом
invoiceWaitConfirms
Ожидание подтверждений в блокчейне
invoiceWaitCheck
Ожидание результата AML проверки
invoiceNotPayed
Инвойс не был оплачен
invoiceCheckBlocked
Транзакция пополнения приостановлена по результатам AML проверки
withdrawBlocked
Транзакция вывода приостановлена по результатам AML проверки
Last updated