Deposit Credited
Emitted when a deposit is confirmed and credited to the member balance.
Event Types
| Event | When Emitted |
|---|---|
deposit.credited | On-chain deposit confirmed and credited to the member’s available balance |
Delivery Contract
- We send a
POSTrequest withapplication/jsonto your configured endpoint, with a 10-second timeout. - Any 2xx response acknowledges receipt. Non-2xx responses and timeouts trigger retries with backoff.
- Four request headers:
content-type·z-signature·z-event-id·z-event-type。 - Deduplicate by
z-event-id— the same event may be delivered more than once.
There are no amounts, asset codes, card number fragments or risk-control reasons. This is a security boundary: the webhook endpoint is your service, whose transport and storage we cannot guarantee.
The GET /v1/<resource>/{id} endpoint applies API key, scope and on-behalf-of checks. Fetch details using data.id;
do not use webhook payloads as the source of amounts for your ledger.
Event Details
deposit.credited
On-chain deposit confirmed and credited to the member’s available balanceEmitted after Cobo confirms receipt and the credit journal is successfully posted, not merely when an on-chain notification arrives. The balance is already retrievable when you receive the event. ⚠ Only covers on-chain deposits. Deposits reported through POST /v1/deposits do not emit this event: that endpoint is synchronous, and funds are already credited when it returns 201; another event would only echo the response. ⚠ status_version is always 0; deposits have no state machine, only a credited state. ⚠ data.id is our numeric deposit transaction ID and uses a different identifier from dep_<你的 reference> in the GET /v1/deposits list.
{
"event_id": "evt_9d2b6f4013ae4c78b5910c3e7d84a2f1",
"event_type": "deposit.credited",
"created_at": "2026-08-12T12:44:03Z",
"merchant_id": "acme",
"livemode": true,
"data": {
"object": "deposit",
"id": "184203",
"external_member_id": "u_88123",
"status": "credited",
"status_version": 0
}
}Signature Verification
The signature verification procedure is the same for all events. See Webhook Overview; use the Signature Debugger to compare signing strings character by character.