稳定币账户 › Webhook
充值到账
一笔充值确认入账、会员余额增加时发送。
事件类型
| 事件 | 什么时候发 |
|---|---|
deposit.credited | 链上入金已确认并记进会员可用余额 |
投递约定
- 我方向你配置的端点发
POST,application/json,超时 10 秒。 - 回任意 2xx 即视为收到。 非 2xx 或超时会按退避重投。
- 请求头四个:
content-type·z-signature·z-event-id·z-event-type。 - 按
z-event-id去重 —— 同一条事件可能到达多次。
事件体只带 ID 与状态
没有金额、没有资产代码、没有卡号的任何片段、没有风控原因。这不是省字节 ——
webhook 端点是你的服务,我方没有办法保证它的传输与存储;
而 GET /v1/<资源>/{id} 那条路径上有 API Key、scope、
代理会员三层校验。要详情就拿 data.id 回查,
别指望从事件体里读出金额来记账。
逐条
deposit.credited
链上入金已确认并记进会员可用余额什么时候发
Cobo 确认到账、入账凭证过账成功之后(不是收到链上通知那一刻)。收到它时余额已经能查到了。⚠ 只覆盖链上入金。你用 POST /v1/deposits 上报的入金不发这条事件 ——那条接口是同步的,201 返回时钱已经记上了,再发一条事件只是回声。⚠ status_version 恒为 0(入金没有状态机,只有「已入账」这一态)。⚠ data.id 是我方入金流水号(纯数字),与 GET /v1/deposits 列表里的dep_<你的 reference> 不是同一套标识。
事件体
{
"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
}
}验签
验签方式与所有事件一致,见 Webhook 概览; 可以用签名调试器逐字符比对签名串。