Webhooks

Two types of the webhooks

The primary triggers for all webhooks are status changes in payments, withdrawals, deposits, or conversions. For example, a webhook is sent when a withdrawal status changes from PENDING to CONFIRMED.

There are two types of webhooks in Flash Payments.

  • Regular webhooks - a URL would need to be saved to your FlashConnect settings. Supports all types of events.

    • You can browse the history of all the webhook HTTP requests and your server responses, their JSON bodies and headers.

    • If there is no response we will show you what exactly the problem is: DNS issue, networking issue, 5XX response, etc.

    • You can receive webhooks when a deposit lands to your Virtual Account Number (VAN).

  • Ad hoc webhooks - you would need to provide a callback URL per each payment/withdrawal/conversion while creating them.

The webhooks HTTP POST calls will follow all the standard HTTP redirects (3XX codes).

Security

Cryptographic signature

All webhook HTTP requests carry a cryptographic signature. Ad hoc and regular webhooks do it slightly different though.

Headers

Each request will contain at least these 4 headers:

content-ype: application/json
user-agent: FlashFX
flashfx-request-id: [A unique ID of this particuar event]
flashfx-signature: [The cryptographic signature]

Flash Payments webhook request IP address

All webhook HTTP requests would be coming from these IP addresses:

  • UAT environment: 52.64.185.170 and 13.210.129.208

  • Production environment: 52.62.138.234 and 52.65.3.195

Example payloads

Deposits

deposit_initiated
deposit_reviewing
deposit_cleared
deposit_cancelled
deposit_refunding
deposit_refunded

Withdrawals

withdrawal_initiated
withdrawal_reviewing
withdrawal_pending
withdrawal_completed
withdrawal_failed
withdrawal_refunded
withdrawal_cancelled

Payments

currency_converted
payment_complete
payment_failed
payment_cancelled
payment_created

Conversions

conversion_initialised
conversion_pending
conversion_converted
conversion_failed
conversion_cancelled

Last updated

Was this helpful?