作者:Mr.Liu
一、系统概述
目前印尼支付系统主要为业务系统提供提现、充值、验卡等支付相关服务。同时,还提供了账户、资金、对账相关服务。具体如下图所示:
二、系统架构
1.架构图
2.系统介绍
目前系统内部服务整体分为4类:受理服务、核心服务、基础服务、对账服务。
1)受理服务
受理服务负责把业务系统和底层支付关联起来,让业务系统专注于业务,不必关心底层支付。同时,将各类业务场景进行拆解,变成充值、提现、转账、退款等基础支付类型。
2)核心服务
核心服务负责将支付基础服务进行整合,并抽象为各类支付指令。针对不同场景,根据规则对支付指令进行编排和调度。
3)基础服务
基础服务则根据职责,专注处理自己领域相关任务。
- 路由:负责对三方支付渠道管理,并根据规则,完成对渠道的筛选路由。
- 渠道:主要负责与三方支付渠道的通信。
- 权益:提供对业务系统优惠券相关验证核销服务。
- 记账:对各类资金业务的记账服务。
4)对账服务
对账服务是资金安全的最后一道防护。目前,主要是实现2类对账:
- 业务对账:基于平台内部各个系统间数据一致性对账
- 外部对账:负责从各个渠道获取三方账单,并与内部交易记录完成D+1对账
三、交易流程
以资金提现场景为例,目前交易流程如下:
- 受理服务接收到上游支付请求后,将交易转换为提现订单
- 当核心服务收到受理服务的提现订单后,根据支付场景和支付规则,将当前场景涉及的账户、渠道、清算等服务编排为支付指令。
- 完成指令编排后,核心服务发起指令调度:对于提现场景,系统将优先调用账户服务发起资金锁定操作;随后,调用渠道服务进行路由,向三方发起支付请求,并把支付结果推送给清算服务。
- 若发生指令执行失败,核心服务将根据规则进行指令回滚,以保证订单结果最终一致。
- 总结
海外版支付系统,需要支持对多个国家不同支付场景的特性扩展。因此,对差异的兼容扩展的支持也成为系统需要考虑的问题之一。目前,系统对差异的处理主要根据实际需求,通过对各类特性服务进行编排,在不同国家进行差异化配置,来解决差异兼容和扩展问题。