How webhooks work
1
Register Endpoint
Create a webhook endpoint in your application and register its HTTPS URL with Hop
2
Event Occurs
Something happens on your Hop account, for example a payout completes
3
Webhook Sent
We send a signed HTTP POST request to your endpoint with the event envelope
4
Acknowledge
Your endpoint returns a 2xx status code to confirm receipt
Available Events
These nine names are the complete set the API accepts. Any other name is rejected when you create or update an endpoint.Payin Events
payin.received: funds credited to an accountpayin.returned: reserved; accepted on a subscription but not emitted today
Payout Events
payout.created: a payout was createdpayout.completed: a payout completedpayout.failed: a payout failed or was cancelled. There is no separate cancellation event: a cancelled payout arrives aspayout.failedwithdata.statusset tocancelled
Transfer Events
transfer.completed: a transfer between balances on the same account completedtransfer.failed: reserved; accepted on a subscription but not emitted today
Account Events
account.created: an account was opened, either the default account Hop provisions when your customer is approved or an end-customer account created through the APIaccount.updated: Hop changed the account’sstatus. Your own updates through the API do not raise it
Payout Destination Events
payout_destination.updated: Hop changed a payout destination, for example a wallet passing or failing review, or a correction to its details. Your own changes through the API do not raise it
Getting Started
- Create a webhook endpoint via the API
- Verify signatures to authenticate incoming webhooks
- Follow best practices for reliable processing