| 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. |
Webhooks
Webhook Events
The catalog of event types your webhook endpoints can subscribe to
Webhook endpoints can subscribe to the following event types: