如何在网站或机器人中接收 USDT(TRC20)付款
在许多地区,TRON 上的 USDT 是最常见的加密货币支付方式:对付款人来说转账又快又便宜。本指南介绍与 ChainPay 的最简集成。
工作原理
- 你的后端为每个订单(或每个用户)向 ChainPay 申请一个充值地址。
- 付款人向该地址发送 USDT。
- 网络确认转账后,ChainPay 将其转入你自己的钱包,并调用你的 webhook。
资金由你保管:目的地是你的 forwardAddress,ChainPay 不持有商户余额。
每个订单或每个用户一个地址
- 按订单:每个订单使用新的
externalReference。对账简单,每个地址对应一笔付款。 - 按用户:对同一用户复用同一个
externalReference。地址永久有效,可接收多次充值,适合充值与余额场景。
创建地址
curl -X POST https://api.chainpay.site/deposit-address \
-H 'content-type: application/json' \
-d '{
"ticker": "trc20/usdt",
"callbackUrl": "https://shop.example.com/crypto-webhook?token=SECRET",
"forwardAddress": "TYourOwnTronWallet...",
"externalReference": "order-123"
}'
处理 webhook
- 校验查询参数中的
token。 - 通过
externalReference匹配付款。 - 仅在
status: "confirmed"时才给订单入账。 - 让处理程序具备幂等性:同一事件可能多次到达。
付款人需要支付什么
每笔 TRC20 转账都需要 TRON Energy,因此手续费由百分比部分(1 %)和按实时网络成本计价的固定部分组成。按当前价格,TRON 上的固定部分约为 4 USDT,所以金额很小的付款并不划算。请设置合理的最低订单金额。最新数字见定价。
试一试
如果想在账户中看到该地址,请在 cabinet 注册,创建 API key,并带上 x-api-key 发送同样的请求。建议从小额开始。