💸 汇款业务

核心定位汇款(转账)是银行支付结算的基础业务,涉及行内转账、跨行汇款(大额/小额)、跨境汇款、批量代发代扣等。测试重点在于交易幂等性、金额精度、资金一致性、汇路选择以及峰值TPS下的系统稳定性。

📋 汇款渠道体系

1. 行内转账

同一银行内部账户间转账,实时到账,不经过人行支付系统。核心逻辑:扣付款方余额→增加收款方余额,借贷在同一核心系统内完成。

  • 时效:实时到账,7×24小时可用
  • 限额:按客户等级/渠道设置单笔和日累计限额
  • 手续费:通常免费或按笔收取

2. 跨行汇款——大额支付系统(HVPS)

通过人行大额支付系统逐笔实时发送,资金实时到账,工作日 8:30-17:00 运行。

  • 时效:实时到账(秒级),逐笔清算
  • 限额:无上限(实际受账户余额和限额控制)
  • 报文:XML格式,支持附言、用途等扩展字段
  • 手续费:按金额阶梯或按笔收取

3. 跨行汇款——小额支付系统(BEPS)

通过人行小额支付系统批量打包发送,定时轧差净额清算,7×24小时运行。

  • 时效:非实时,通常30分钟内到账
  • 限额:单笔≤100万元(具体以人行规定为准)
  • 模式:贷记(付款)、借记(收款)均支持
  • 批量:支持批量代发、代扣、代收

4. 超级网银(IBPS)

人行网上支付跨行清算系统,7×24小时实时到账,单笔限额较低。

  • 时效:实时到账(秒级)
  • 限额:单笔≤5万元(可申请提高)
  • 特点:支持协议支付、账户查询等增值功能

5. 跨境汇款

通过SWIFT网络发送报文,经代理行/清算行完成跨币种资金转移。涉及外汇管理、反洗钱筛查、报文格式转换等。

  • 报文格式:MT103(客户汇款)、MT202(银行间头寸调拨)
  • 时效:通常1-3个工作日
  • 费用:汇款行、中间行、收款行各收取费用(OUR/SHA/BEN三种模式)

🔀 汇路选择

汇款系统需根据交易金额、时效要求、收款行信息,智能选择最优汇路:

条件汇路选择
行内账户行内转账(不走人行)
金额 ≤ 5万元 + 实时要求超级网银(IBPS)
金额 > 5万元 + 实时要求大额支付系统(HVPS,工作时间)/ 小额(非工作时间排队)
无实时要求小额支付系统(BEPS)
批量代发/代扣小额支付系统批量
跨境汇款SWIFT + 代理行/清算行

🧾 对账体系

汇款业务涉及多层对账:

  • 行内对账:核心系统与支付前置的流水核对,确保每笔交易借贷平衡
  • 人行对账:支付系统与人行清算系统的往来账核对,下载人行对账文件逐笔勾兑
  • 往来户对账:存放中央银行款项科目的明细核对
  • 挂账处理:来账无法自动入账时挂账,人工核实后入账或退汇

🧪 功能测试要点

幂等性

  • 交易去重:同一笔交易(相同请求流水号)重复提交,只能成功一次,后续返回"交易已处理"
  • 超时重试:客户端超时后重试,服务端须识别为同一笔交易而非新交易
  • 幂等键设计:验证幂等键(请求流水号/交易唯一标识)的生成规则和有效期
  • 资金不可重复扣划:重复请求绝对不能导致重复扣款,这是最关键的幂等性验证
  • 幂等失效场景:数据库主备切换、缓存失效、系统重启后幂等记录的恢复

金额精度

  • 舍入规则:验证交易金额、手续费、汇兑损益的舍入规则(四舍五入/银行家舍入)
  • 多币种精度:日元(无小数)、人民币(2位)、外汇(2-4位)的精度处理
  • 金额溢出:大额交易(亿元级以上)的金额字段溢出保护
  • 手续费计算:按金额阶梯收费时,边界值(如5万元刚好跨档)的手续费计算正确性
  • 金额一致性:发起方、中间渠道、接收方三方金额一致(跨境场景尤其重要)

限额控制

  • 单笔限额:按渠道(柜面/网银/手机)、客户等级、账户类型设置单笔限额
  • 日累计限额:同一账户/客户当日所有渠道累计金额不超过日限额
  • 月累计限额:跨境汇款等受外汇管制场景的月累计限额
  • 限额动态调整:验证限额实时生效(无需等待日终),调整后立即影响新交易
  • 限额穿透:多账户联动的限额穿透(如信用卡溢缴款转出限额)
  • 限额绕过:分拆交易规避限额检测的系统识别能力

挂账退汇

  • 挂账场景:收款账号不存在、收款户名不符、账户状态异常(冻结/销户)、跨行来账信息不全
  • 挂账处理:挂账后生成待处理任务,柜员人工核实后入账或退汇
  • 退汇路径:原路退回,退汇金额=原汇入金额,退回手续费处理
  • 超时处理:挂账超N天未处理(如30天),系统自动退汇
  • 挂账科目:验证挂账使用的临时科目(如"待处理汇入款"),日终不得有余额挂账

冲正

  • 实时冲正:交易异常时实时发起冲正(如支付超时),恢复付款方账户余额
  • 冲正幂等:重复冲正请求不能重复入账,确保冲正操作的幂等性
  • 冲正时效:冲正操作必须在原交易当日完成(T+0),隔日需走调账流程
  • 部分冲正:支持部分金额冲正(如批量代发部分失败)
  • 冲正对账:冲正交易需在日终对账中体现为冲正流水,不参与正常对账
  • 调账流程:隔日差错通过调账(蓝字/红字冲正),需复核审批

⚡ 性能测试要点

峰值TPS

  • 场景:工作日高峰期(如每月15日工资发放日、月末资金归集日),行内+跨行转账峰值
  • 目标:支付网关 TPS ≥ 10000,核心系统接口 TPS ≥ 5000
  • 验证点:线程池配置、数据库连接池、消息队列积压、GC暂停时间
  • 压测方案:按生产峰值 3 倍加压,持续 30 分钟,验证系统稳定性
  • 限流策略:验证过载保护(限流/降级)是否生效,避免雪崩

批量打包

  • 场景:小额支付系统定时批量打包,将多笔小额汇款合并为一个清算包发送人行
  • 目标:每次打包交易数 ≥ 10000 笔,打包耗时 ≤ 5分钟
  • 验证点:打包策略(按收款行/金额/时间窗口)、文件生成/压缩性能、FTP传输效率
  • 批处理窗口:批量代发(如工资发放)在上午10点前完成全量处理和发送

超网并发

  • 场景:超级网银7×24小时实时交易,电商大促(双十一、618)期间支付并发激增
  • 目标:超网接口 TPS ≥ 5000,P99 ≤ 500ms
  • 验证点:与超网前置机的连接池管理、证书验证性能、报文组拆包开销
  • 长连接:验证长连接复用效率,减少握手开销

对账批处理

  • 场景:日终与人行对账文件下载、解析、逐笔勾兑、生成差错报告
  • 目标:全量对账完成时间 ≤ 1小时(日交易量千万级)
  • 验证点:对账文件解析效率(大文件流式读取)、数据库批量比对SQL优化
  • 差错处理:对账不平时的自动重试、人工介入流程、差错调账
  • 多场次对账:工作日支持多场次对账(如12:00、17:00、日终),减少日终一次性压力

📎 相关文档