Xellion Logo Webhook API Docs

Webhook Notifications

Listen for asynchronous payment updates. Once a transaction reaches a final state, a JSON payload is sent via a POST request to your webhook URL.

POST Request Application/JSON Event Triggers

Quick Summary

  • Method: POST
  • Content type: application/json
  • Fields: userId, orderId, amount, and status
  • Supported scenarios: Deposit & Withdrawal Updates

Webhook Payload

This is the JSON data structure sent to your selected callback URL when a status changes.

Field Type Description
userId String The unique identifier of your user, as sent in your original API request.
orderId String The unique order reference you passed when creating the payment or withdrawal request.
amount Number The nominal value of the transaction.
status String The transaction outcome enum. Possible values: PROCESSING, SUCCESS, FAILED.
Make sure your webhook listener responds with an HTTP 200 OK status code to acknowledge the receipt of the payload.

Sample JSON Payload

Here is an example of what your server will receive exactly:

{
  "userId": "1234",
  "orderId": "5943283783228437583",
  "amount": 100,
  "status": "FAILED"
}

Transaction Statuses

The status property indicates the latest state of the payment. Handle these states programmatically.

PROCESSING
PROCESSING The transaction is still being processed and hasn't reached a final state yet.
SUCCESS
SUCCESS The funds were transferred or the payment was received by the system.
FAILED
FAILED The transaction could not be completed, or was rejected by the provider.