1. 项目画像:这笔50万单笔、300万日累计的额度到底被谁需要
1.1 两个“看起来很吓人”的数字,其实是被业务逼出来的
最近总有人问我:“你们把网关充值(备付金代付)的单笔做到50万、日累计做到300万,怎么敢的?”我的回答是:不是敢不敢的问题,是客户那边每天都有几十万甚至上百万的结算款要付,不给到位,平台的供应链就玩不转。
什么业务会出现这种需求?大宗贸易平台、钢铁建材在线交易、汽配批发、农资供应链、企业采购报销,这类交易的客单价很高,采购商一笔订单可能就是二三十万,几个订单合并付款直接超过50万很正常。以前大家怎么操作?先线下转账,再把银行回单截图发到微信群里,财务对着Excel一笔一笔核销,资金划到哪了全靠人工催。订单少还行,如果一天要处理几十笔几百万的资金,这套流程基本崩溃。所以网关充值加备付金代付能支撑“单笔50万、日累计300万”,本质上不是系统想做多大的数字,而是真实业务里已经有这么大的资金流动,需要从“人工转账”变成“系统自动收付”。
当然也存在另一类场景:平台自己不直接卖货,它是技术服务方,为下游商户或分公司提供资金归集和结算能力。比如连锁加盟企业每天要对几十个供应商打款,或医美平台要向多家渠道分账。这些场景单笔不一定都是几十万,但一天的累计很容易冲到300万。这说明,高单笔面向的是“大宗交易型客户”,高日累计面向的是“高频结算型客户”,一套方案能把这两种极端同时接住,才是这个标题背后真正的价值。
1.2 网关充值和备付金代付,是一对必须放在一起看的能力
我把这套系统拆成两个方向:网关充值负责“收”,备付金代付负责“付”。客户在平台的收款页发起支付,资金进入支付机构合规备付金账户体系,充值成功以后,商户的余额或平台的分账余额就会更新。备付金代付则相反,它根据用户或商户的指令,把账户余额划付到指定的银行卡账户里,等于承担了提现、结算、退款这些业务动作的资金出口。
为什么“收”和“付”必须一起设计?因为只做代付不做充值,资金就没办法自动进系统,每天财务要对着银行流水去补充值单,等到日终代付余额永远对不上;只做充值不做代付,钱进来后出不去,线下人工打款又回到原始状态。把收付两边放在统一账户体系里,才能实现“充值即入账、代付即出账、对账自动完成”。在这个前提下,50万的大额单笔才有意义:充值端需要支持大额网关入账,代付端也需要能一次性把几十万结算款打给合作方。两边缺一个,商户体验就会有明显断层。这也是为什么我把这个项目看作一个资金闭环产品,而不只是某几个支付接口的串联。
既然资金收付都要经过这套体系,它必然涉及到资金安全问题。这里必须先说清楚:备付金是客户的钱,系统里所有划转行为必须基于用户或商户明确指令,平台不能自己拿去挪用。能够承接这类业务的,通常需要有相应牌照资质的持牌支付机构,普通企业更多是作为商户或技术服务方接入。脱离这条底线去讨论“大额代付”,方向就完全错了。
2. 系统整体设计:高单笔与高日累计靠什么扛下来
2.1 通道选型:永远不要把自己的命门拴在一家银行上
先讲最容易踩的坑:很多人看到银行宣传“大额代付支持单笔100万、日累计500万”,就想直接一个通道搞定。实际接进去以后你会发现,宣传额度、白名单额度、接口实际放行额度是三个互相独立的概念。而且再稳的通道也会遇到日切、升级、银行风控策略临时收紧,如果只依赖一家,日累计300万的业务大概率会在某些时间点直接瘫痪。
通道设计上,我的原则是“主通道+备用通道+小额分流通道”三层。主通道选择单笔支持到50万以上的代付接口,日常大额从这里走。备用通道要跟主通道不同银行或者不同走法,当主通道报错或额度调低时自动切换。小额分流通道则是为了控制成本,比如几万块的结算单也丢到高费率大额通道里并不划算。实际项目里,日累计300万完全可以用“2-3笔大额主通道代付 + 几十笔小额快捷代付”的组合完成。
顺便算一笔账,通道费率差异放到日累计300万的量级非常可观。假设通道A是大额专用,固定费用5元+0.05%,单笔30万的手续费是5+150=155元;通道B是普通代付,固定费用2元+0.08%,同样是30万要花2+240=242元。如果一天有10笔30万的单全从B走,手续费比走A多(242-155)*10=870元,一个月就是2.6万以上。别小看这个数字,做资金类系统,通道费用往往是长期运营中仅次于风险损失的第二大支出。
2.2 模块拆解:每一层都要做好大额资金校验
平台侧的这套自建网关充值、备付金代付系统,常见模块有以下几块。
接入与签约层:处理API签名验签、商户身份认证、防重放。高额交易必须全程双签名,并且对来源IP、回调IP做白名单。
账户与资产层:维护每个商户和用户的分户余额、可用余额、冻结余额。这里的难点是“可用余额”和“账务科目余额”必须分清楚。很多线上系统为了性能把余额直接放缓存里,一旦大额并发就会出现超额出款,所以最终以数据库事务和账务流水为准。
交易与账务层:负责代付单生成、资金记账、状态流转。代付单需要保存完整指令来源,包括发起人、复核人、业务类型、资金用途,方便