API ReferenceIntegrationsKnowledge Base

RazorpayX - Webhooks

Webhooks allow you to build or set up integrations that subscribe to certain events on RazorpayX API. When one of these events is triggered, we send an HTTP POST payload in JSON to the webhook's configured URL.

Available Events🔗

Listed below are the various webhooks events available in RazorpayX.

payout.pending all payouts
Triggered whenever a payout moves to the pending state. The payout remains in this state till you approve or reject it.
payout.rejected all payouts
Triggered whenever a payout moves to the rejected state. The payout was rejected by someone from your team.
payout.queued all payouts
Triggered whenever a payout moves to the queued state. A payout goes to the queued state when you do not have sufficient balance to process the payout. This can happen when you create the payout or when you approve a payout in the pending state.
payout.initiated all payouts
Triggered when the payout moves to the processing state when the payout is created or from the queued state when sufficient funds are available to process the payout.
payout.processed all payouts
Triggered when a payout moves to the processed state. This happens when the payout is processed by the contact's bank.
payout.updatedall payouts
Triggered whenever there is a change in the payout entity. For example, when we receive the UTR for the payout from the bank. For NEFT transactions, this webhook is fired within 90 seconds. For IMPS and UPI transactions, this webhook is generally fired immediately.
payout.reversed all payouts
Triggered whenever a payout fails and the amount is returned to your business account.
payout.failed current account payouts
This webhook event is available only when a payout is made using your current account balance. This event is triggered when a payout is failed by our current account partner bank.
Triggered whenever you make:
  • A Payout (virtual account or current account).
  • Add funds to your RazorpayX account (virtual account or current account).
  • Any kind of transaction (ATM transaction, cash withdrawal, netbanking transfer, encashed cheque) on your current account.

Order of Events🔗

Ideally, you should receive webhooks in the following order:

However, this is not guaranteed. You should configure your Webhook URL to not expect delivery of these events in this order and handle such scenarios.

The processed and reversed states are terminal states for a payout. Their corresponding webhooks payout.processed or payout.reversed indicate this state change. Any webhook received after these should be ignored.