一、概念简介
在讨论清结算服务时,我们必须先明确清算和结算的定义跟场景。在不同场景中各不相同,这里仅尝试定义一下其中的概念:
- 在标准定义的场景中,如果我们不关心具体的清结算双方的机构属性和业务属性,那么清算时将交易流水,根据具体的支付工具、配置,进行费用计算、轧差、汇总的过程;结算,则是具体的资金转移过程。这里的定义偏标准化和国际化;
- 在支付机构的场景中,支付的信息流包括交易、清算、结算。清算是将金融机构和客户(不同机构的)的待结算的债权,进行清分。结算时完成债权的最终转移,即资金转移。可以简单理解为 清算=清分+记账;结算=资金划拨+记账;
因此,通过上面的定义,我们可以抽象一下清结算过程中的节点,得到核心的步骤和功能点。
二、核心业务步骤
-
数据采集:收集交易数据,可能是交易中心服务推送,也可以是清结算服务主动查询。
-
预处理/格式化:对原始交易数据进行清洗、分类、标准化。一般情况下,不同交易类型,比如付款、退款、转账、提现等,数据格式不尽相同,因此要结合我们清结算模型,转换为通用格式的数据。
-
清算处理:通过清算规则和配置,对交易数据进行清分处理。一般是计算各项费用,汇总,分批,得到清算流水。
-
结算处理:根据清算结果,分批进行资金划转,并更新相应的账务记录。
-
视图与报告:生成各类报表,并对异常交易进行处理。
-
对账:后置进行对账,确保数据的准确、完整。这里也可以单独建设对账中心服务,来确保数据的准确。对账模型可以使用通用的核对方法,即账证核对、账账核对、证证核对。
账证核对:将清算流水、结算流水分别和相应的记账流水核对
证证核对:将清算流水和对应批的结算流水核对
账账核对:将清算流水、结算流水分别的记账流水进行核对
三、常见问题及解决方案
一、数据处理,随着支付业务量增加,如何有效、准确的处理?
解决方案:
- 引入高性能的数据库,通过分库分表、读写分离等办法,提高处理效率
- 一些配置可以使用redis缓存加载
- 明切日切配置,避免跨日边界数据导致的口径问题
二、系统稳定性,清结算需要7x24小时运行,对系统的稳定性要求高。
解决方案:
- 保证高可用,负载均衡、容错等稳定性抓手
- 建立并完善的监控系统
三、资金安全考虑,确保清分、结算结果等正确性,避免资金损失
解决方案:
- 引入对账,对资金流、信息流核验
- 差异处理流程建设