POST request to the webhook URL registered by your organization for the corresponding event code.| Event Code | Description |
|---|---|
onboarding.complete | Triggered when a customer's onboarding process is successfully completed. |
topup.complete | Triggered when a top-up to a business account is successfully completed. |
payout.pending | Triggered when a payout is created and is pending submission to the bank. |
payout.processing | Triggered when a payout is being processed. |
payout.failed | Triggered when a payout fails. |
payout.completed | Triggered when a payout is successfully completed. |
POST request.data object.data object.{
"id": "3f9a1c02-8b7d-4e21-9c3a-1a2b3c4d5e6f",
"code": "payout.completed",
"created_at": "2026-07-06T11:20:14.220Z",
"webhook_id": "d292e3c5-b4de-464c-b1ca-d4361e557f20",
"data": {}
}| Field | Type | Description |
|---|---|---|
id | UUID | Unique identifier for the webhook event. |
code | string | Event code indicating the type of event. |
created_at | string | Timestamp indicating when the event was created, in ISO 8601 format. |
webhook_id | UUID | Identifier of the registered webhook receiving the event. |
data | object | Event-specific payload containing details about the affected resource. |
payout.completeddata object contains the payout-specific information associated with the event.curl --location 'https://your-api-server.com' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"id": "dbd62ce2-d074-459f-a039-223d8f4a2778",
"code": "onboarding.complete",
"created_at": "2026-09-03T14:49:24.582Z",
"webhook_id": "78005b4b-c551-45c9-8a83-87e26ebdfe1c",
"data": {
"customer_id": "fe141fcb-ebe0-410c-a4e6-5a12766db0b2",
"mobile_number": "9665XXXXXX07",
"status": "active",
"completed_at": "2026-09-03T14:49:24.535Z",
"external_reference": null
}
}'{}