代付的生命周期
代付不是"发出去就不管"的调用。它要经过五个状态,其中两个会把钱退回来。
| 状态 | 含义 | 你要做什么 |
|---|---|---|
| 0 | 审核中 | 等待回调,不用操作 |
| 1 | 代付中 | 等待回调,不用操作 |
| 2 | 成功 | 关单,保存 UTR |
| 3 | 失败 | 金额+手续费已自动退回,回滚用户台账 |
| 4 | 冲正 | 确认成功但资金未到账,金额+手续费已自动退回 |
请求结构
POST /api/submit/submitPayout,传 user_id、merchant_order_no、amount、收款人姓名、bank_card_no、ifsc、callback_url 和 sign。
代付签名是 md5(user_id + merchant_order_no + amount + key) —— 只有四个值,没有 pay_type,也没有 callback_url。这里写错是最常见的对接问题。
余额模型
getBalance 返回三个数:balance(可用)、frozen_balance(代付处理中的冻结)、other_frozen_balance(投诉等冻结)。提交代付占用可用余额,不足时直接返回余额不足,而不是排队等待。
冲正不等于可以直接重试
status 4 表示我们这边已确认转出,但收款账户没有实际到账,资金已经退回你的余额。不核对收款人信息就重发,是产生重复代付的主要来源 —— 先确认卡号和 IFSC,再用新的 merchant_order_no 重新提交。
FAQ
常见问题
能下发到哪些银行?
所有可通过 IFSC 触达的印度银行账户,包括主要公有银行与私有银行。收款行拒绝账户信息时转账失败并自动退款。
代付手续费怎么算?
金额的 3% 加每笔 ₹6。例如 ₹1,000 的代付,手续费是 ₹30 + ₹6 = ₹36,提交返回和回调里都会带 fee。
什么时候扣余额?
提交时连手续费一起扣。可用余额不足会直接拒绝,不会产生扣款。
冲正(status 4)是什么?
已确认转出但资金未到收款账户。金额和手续费会退回你的余额,回调里带 status 4 和说明。
支持批量代付吗?
支持 —— 每个收款人一笔,用不同的 merchant_order_no 提交。大批量下发请 Telegram 联系我们谈费率与吞吐。
代付回调和收款回调签名规则一样吗?
一样:md5(platform_order_no + merchant_order_no + amount + fee + status + key),都用收到的原始值拼接。