> ## Documentation Index
> Fetch the complete documentation index at: https://guides.saber.money/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks

> Bank Account Status webhooks POST the bank_account.status.updated event payload, signature secret, and APPROVED, REJECTED, DELETED statuses.

Bank Account Status webhooks notify you in real time when a user's bank account status changes post-verification, so you can track readiness without polling. Configure the endpoint in your dashboard to receive events via HTTP `POST`.

Only one webhook URL is supported — transaction, bank status, and KYC status events all go to the same URL.

## Webhook payload

```json theme={null}
{
  "event": "bank_account.status.updated",
  "data": {
    "user_uuid": "9cf0ca7c-9176-426d-b25f-62eed795b46a",
    "bank_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "account_number": "XXXXXXXX1234",
    "account_holder_name": "JOHN DOE",
    "routing_code": "HDFC0001234",
    "routing_type": "IFSC",
    "status": "APPROVED",
    "is_default": true,
    "message": "Congratulations! Your bank account is verified",
    "created_at": "2026-04-28T10:30:00Z",
    "updated_at": "2026-04-28T11:00:00Z",
    "is_nre": false,
    "iban": "GB82WEST12345698765432",
    "country": "IN"
  }
}
```

## Events

| Event name                    | Description                                             |
| ----------------------------- | ------------------------------------------------------- |
| `bank_account.status.updated` | Triggered whenever the status of a bank account changes |

## Statuses

Webhooks are sent only when the bank account `status` in the payload is one of the following:

| Status            | Description                                                  |
| ----------------- | ------------------------------------------------------------ |
| `APPROVED`        | Bank account verified and approved for use                   |
| `REJECTED`        | Verification rejected (e.g. compliance or validation)        |
| `NAME_REJECTED`   | Rejected because the account holder name did not pass checks |
| `DELETED`         | Bank account was deleted or removed from the system          |
| `DELETED_BY_USER` | End user removed the bank account                            |

## Security

All webhook events will be signed using a secret key obtained from the Saber dashboard.


## Related topics

- [Webhooks](/user/kyc/webhooks.md)
- [Order lifecycle and Webhooks](/offramp/operations/lifecycle.md)
- [Overview](/user/bank-account/overview.md)
- [Webhook Configuration](/client/dashboard/webhooks.md)
