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

# Webhook Events

> The catalog of event types your webhook endpoints can subscribe to

Webhook endpoints can subscribe to the following event types:

| Event                     | Entity           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ------------------------- | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `deposit.received`        | deposit          | An incoming deposit was received.                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `deposit.returned`        | deposit          | An incoming deposit was returned.                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `payment.created`         | payment          | A payment was created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `payment.completed`       | payment          | A payment settled successfully.                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `payment.failed`          | payment          | A payment failed before leaving the account — a processing failure or a review rejection; funds were never taken and any hold is released back to the available balance. `data.status` carries the precise state (`failed` or `rejected`).                                                                                                                                                                                                                                               |
| `payment.returned`        | payment          | A payment was returned by the receiving bank (e.g. invalid or closed account, compliance rejection). May fire after `payment.completed` — on a post-settlement return the funds are credited back to the account balance.                                                                                                                                                                                                                                                                |
| `account.created`         | account          | An end-customer account was created. The payload is the full account object, including its initial `kyc_status`.                                                                                                                                                                                                                                                                                                                                                                         |
| `account.updated`         | account          | Hop changed the account's verification state — KYB submission, review outcome (e.g. `under_review` → `approved`, `action_needed`, or `rejected`), an admin action, or an associated person's verification progress. Client-initiated writes (Update Account, uploads) do not fire it — re-fetch Get Account after your own writes to see requirements progress. The payload is the full account object — the same shape as Get Account — including `kyc_status` and `rejection_reasons`. |
| `virtual_account.created` | virtual\_account | A virtual account resource was created. The payload is the full virtual-account object, including its initial status; bank details may still be pending.                                                                                                                                                                                                                                                                                                                                 |
| `virtual_account.updated` | virtual\_account | A virtual account changed status or bank details became available. The payload is the full virtual-account object — the same shape as Get Virtual Account — so you do not need to poll while waiting for activation.                                                                                                                                                                                                                                                                     |
