在《清结算篇》 中,我们知道了亿万消费者在交易的背后,是资金和信息的暗涌在各个金融机构的系统之间潜流。在此看似混乱的交互背后,要怎么确保账务的准确?这是本文要回答的问题。
对账的基本逻辑
在说对账之前我们稍微聊一个有趣的哲学问题:怎样确定一件事情的正确性?如果是科学问题,比如1+1是否等于2,直接基于众所周知的规则就可判断。但是如果问题是 你到底有没有打我一巴掌呢?我们要一些证据:如果你我都同意、甚至隔壁老王也看到了 你打了我一巴掌,那么就可以认为“你打我一巴掌”确有其事 - 这就是对账背后的逻辑 - 用不同来源的数据对相同业务的账务进行比对。我们马上来看一个具体的例子。
假设A银行采用了B机构的代收付服务,约定每月按交易金额的万分之1由A向B支付佣金。那么在每月初B就会向A提供一个对账单,A拿着自己的账单,和B的一比对,如果一致则账务正常,走结算流程。如果不一致,则就不一致的交易作进一步沟通。在这个简单的场景下,该佣金的对账是由A银行和B机构双方的对账单加以勾兑确认的。
然而很多账务后面的交易场景并非这么单一。比如银行卡的清结算,A银行的持卡人每天会与上百家银行同时有业务往来,这时A银行如果要自己计算与各银行的账单并一一核对,成本极其高昂,那么清算机构便开始发挥作用了。日终时清算机构系统计算各机构清算的净值,并把清算流水传到各机构供对账使用。这时,A银行只要拿着自己的流水,以清算机构流水为准比对即可。这时我们看到依然有两个不同源头的交易数据进行对账。
系统日切时间不同的问题
在设计具体的对账方法时,会遇到很多工程上的细节问题,其中最典型的就是系统日切时间不同的问题,它是对账设计中的难点。
我们人类社会的一天是从当日0点开始,24点结束。但是支付核心系统通常生活在不同的次元,它的一天可能是从23:00到23:00,也可能是其他任意时间比如15:00到15:00,我们把这个23:00或者15:00,叫做日切时间或者跑批时间。在这个时间点,支付系统会完成系统日期的转换,并对各种任务进行批处理,结束一天的任务。比如资金流会计分录的实际执行,就是在系统日切的时候进行批处理,而非每发生一笔交易就处理一次会计分录。
日切时间的存在带来一个重要问题:A机构的日流水与B机构的日流水的交易时间范围不一样,进而在日终对账的时候无法对平。
解决上面的问题是设计对账方法的关键,我们用一个具体的例子来说明。假设A机构的核心系统日切时间为19:00,B清算组织的系统日切时间为23:00。那么A与B对T日账的时候,A系统流水中的交易是T-1日19:00到T日19:00的交易,B系统流水中的交易是T-1日23:00到T日23:00。我们称每天的19:00 - 23:00 是两个系统的日切时间差。
下图展示了A系统和B系统各两天的交易。上面绿色是A系统,下面蓝色是B系统。
image1.png假设A机构想核对T日的账务,交易时间是T-1 19:00到T 19:00,可以采用下面的方法。
在A系统T 19:00跑批时,由于B系统尚未到达跑批时间,因此无法生成当天的交易流水发给A系统核对。那么我们可以这样设计:B系统在23:00跑完批后,假设于T日 24:00将清算流水传到A机构,那么A机构可以在T+1日01:00时,补生成19:00 -23:00的流水,结合T日流水与B机构核对,达到完整比对的目的。19:00- 23:00的交易我们通常叫时间差交易。
如下图所示,A系统补生产19:00 -23:00流水后,与T日流水合并,构成T-1 23:00 - T 23:00的交易与B系统比对(深绿色部分)。
image2.png对于初接触清结算的PM来说,这可以说是最难理解的点了。但以上还是简化的说法,在具体执行的时候有很多细节问题。
时间差交易的抓取
一个典型的坑是:按照时间点抓取时间差交易。什么意思呢?我们要知道,系统的跑批时间并不是100%固定的,我们说19:00日切,只是一个粗略时间,实际可能是18:59,或者19:02。那么在抓取上述时间差交易的时候,怎么判断从哪个时间点开始抓呢?
这里要根据实际情况采取最方便的方法。其中最典型的方法是,从系统日期相异的交易开始抓起,抓到系统日期相同为止 -- 这话说的很抽象。我们继续以上面的A机构和B清算组织为例。假设今天是8月25日,A系统在19:00跑批后,后面交易的系统日期就都变成8月26日了。但是,19:00时B系统还未跑批,19:00-23:00的交易在B系统的系统日期还是8月25日的。那么我们可以利用这个系统日期不同的特征,来抓取这段时间差交易,而千万不能按照时间点去抓取。
自动对账与清算
机构应该朝着自动化的方向处理清结算的业务,因为人工对账与清算的工作价值低,也易出错。
开发自动对账的时候,在处理好上述时间差交易的基础上,难点在于差错帐的处理。当对账出现异常时,应该有一个决策树,根据长短款、交易类型等情况决定对差错帐的后续处理。对于有清算组织介入的交易,通常都以清算组织的交易处理结果为准进行入账,机构应该调整自己的核心系统规则以适应清算组织的规则,尽量减少错账,以提升客户体验。
对于没有清算组织介入的交易,通常约定以其中一方的流水为准,遇到差错帐时再单独讨论。此类型的交易通常很少有错账产生。
总结
本文介绍了对账的基本逻辑:两个以上交易来源进行比对,并且深入剖析了对账过程中的典型难点:日切时间不同的处理问题。事实上账务处理还有很多的细节问题,比如税务处理,各种会计科目的勾稽关系等,但此类问题通常会有财务产品经理去负责,并且学习难度不大,所以就不再赘述了。
网友评论