> ## 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

> Configuring KYC status webhooks that POST kyc.status.update events with PENDING, APPROVED, or REJECTED statuses, signed via dashboard secret.

KYC Status webhooks notify you when a user's KYC verification status changes, so you can manage onboarding and trigger next steps. 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": "kyc.status.update",
  "data": {
    "user_uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "kyc_status": "APPROVED",
    "updated_at": "2026-04-28T12:00:00Z"
  }
}
```

## Events

| Event name          | Description                                                          |
| ------------------- | -------------------------------------------------------------------- |
| `kyc.status.update` | Triggered when the user’s KYC status updates to a value listed below |

## Statuses

Webhooks are sent only when the `kyc_status` in the payload is one of the following:

| Status     | Description                                 |
| ---------- | ------------------------------------------- |
| `PENDING`  | KYC is in progress or awaiting verification |
| `APPROVED` | KYC completed successfully                  |
| `REJECTED` | KYC was rejected                            |

## Security

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


## Related topics

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