对账系统设计详解(下)
PMCAFF
共 5124字,需浏览 11分钟
·
2021-03-26 02:52
本文由作者 陈天宇宙 发布于社区,业务图较多,建议PC端阅读 上篇指路:对账系统设计详解(上)
07 资金对账项目配置设计
完成线上支付交易以后,虽然通道方告知支付成功,但是钱是不是真的能给,还需要打一个问号?资金对账就是应收应付和实收实付之间的核对;什么是应收应付,什么是实收实付呢?哪些数据与之对应呢,本文会详细介绍 1、资金对账项目 通过对账系统设计(上)我们已经明白对账项目的概念;今天我们要介绍的资金对账项目可能更容易理解:一个实体的银行或者三方资金账户为一个资金对账项目 所以说资金对账,我们按照银行账户的维度进行核对;因为在会计科目中银行账户已经是叶子科目了,虽然一个资金账户可能有很多业务类型的收款,但是我们这里不再细分了;如果因为公司需要想细分也是可以实现,只需要按着业务类型区分账户的资金变动项即可 这里我们按照一个实体的资金账户设置为一个资金对账项目,比如平台有微信平台2个收款账户1和2,支付宝平台两个收款账户3和4,招商对公5,一共5个资金账户,那么我们就可以设置5个资金对账项目,如下 资金对账项目1:微信账户1 资金对账项目2:微信账户2 资金对账项目3:支付宝账户3 资金对账项目4:支付宝账户4 资金对账项目5:招商对公户5 2、对账项目命名 为了便于管理我们还需要为每个对账项目命个名字,如何起名这个也看自己喜好;命名的一个关键原则:要能从名字中看出具体核对的那个账户 基于这个原则我们为1中的几个项目进行命名如下 规则:通道方+通道类型+账户号 资金对账项目1:微信-收款-账户1 资金对账项目2:微信-收款-账户2 资金对账项目3:支付宝-收款-账户3 资金对账项目4:支付宝-收款-账户4 资金对账项目5:招商对公-收款-公户5 这样我们可以清晰的知道对账项目1是微信开的的账户号为1的收款账户 对账文件管理前面已经讲过了,每个账户次日都会提供相应的清算文件和结算文件;那么文件要跟资金资金对账项目对应上,最后为对账文件命名上可以知道对应的所属账户,比如 规则:通道方+账号+文件类型+交易日期 资金对账项目1:wx-1-pay-20210204 3、对账项目管理 一个企业可能会存在很多个资金账户;为了便于管理,我们就需要一个菜单专门管理资金对账项目;示例如下 该页面可以查看所有的资金对账项目,每个项目就是一个实体资金账户;点击设置可以进行该对账项目的配置设置;右上角的新增可以新增新的项目 4、资金对账模式的选择 资金对账我们知道是核对应收应付和实收实付,实收实付我们知道就是银行实际资金的变动,使用银行结算账单即可;那么应收应付的选择其实有2种方法一个是使用通道的清算文件作为应收应付,另一个是使用平台的资金账务作为应收应付 1)使用银行清算文件 就是银行记录应收应付与实收实付进行核对,但是有个缺陷就是平台的支付记录需要跟银行的清算文件进行核对,所以核对模型如下 看3中的新增对账项目中有一个关联交易对账,就是看一下平台的支付记录和清算文件核对有没有差异,如果没有且资金对账没差异,那么就没有问题 2)使用平台资金账务核对 就是如果公司有账务中心的话,可以直接拿资金变动账务与实际银行的资金结算账单核对,这个不做具体介绍了 5、对账维度 交易对账是按照逐笔核对的,资金对账我们不按照逐笔核对,因为存在轧差以及线下汇入等情况,我们按照费用维度进行核对,就是将应收应付和实收实付解析成款项,对相同款项进行核对,比如收款,收款手续费,退款,退款手续费,打款等 6、对账项目设置 我们以核对清算数据和结算数据为例,资金对账项目解析就是将文件里的数据解析汇总到对应的款项上去,知道一个账户今天每一个款项上的金额 该配置器最终的实现是 我们从页面可以看出来,该配置是将文件里的数据先通过“条件组”的筛选,然后取目标数据的金额,并且对金额进行运算汇总;比如例子中的第一条就是:取交易状态=success的数据,取订单金额作为结算金额 如文件数据 通过原型中的配置条件 条件组:交易状态=success, 金额:正直汇总 订单金额 我们得到了:收款=100+90=190 其他费用逻辑类似 一定要枚举一个资金账户里的每一类型费用,不能遗漏,不然会出现资金差异 这样完成配置后,一个对账项目就配置完成了;会照着配置的时间每天完成账单数据的汇总,得到该账户每一方数据的每个款项的金额 08 对账引擎设计和结果管理
前面的文章都是建设工作,对账的基础,今天我们就来聊一聊怎么动起来,就像发动机一样要让组织转动起来,同样对账也是,需要一个核心的处理流来完成每天和每个对账项目的核对,我们今天来聊一下几个关键的处理 在对账执行前还有最后几个重要的问题没有解决,那就是对账的核心处理逻辑是什么;对账有几个关键的处理引擎 1、对账连续性控制引擎 对账不能跨日,比如2号对完才能对3号,如果今天是10号,2号还没对账,那么3-9号的账都不会核对;因为前一天的单边会循环进入下一天的核对 2、对账时间控制引擎 如上表,我们需要管理对账的时间;这里有3个时间概念需要知道
对账日期:就是对的那一天的账,也是交易成功时间或者资金变动日期 对账启用日期:一个对账项目的第一个对账日期 最后对账日期:一个对账项目的最后一个对账日期
09 差错处理和差错配置设计
对账有两个核心目的,一个是发现错误,另一个是改正错误;今天我们说一下对账差异的处理 对账结果如果有差异,就需要有排查差异的原因,差异原因千奇百怪,但存在必是有原因的,如果时查不到就先挂着,至少我们知道了有一个差异待处理;(下文提到的差异我们代表交易对账对出的单边或者错账以及资金对账对出的资金长短款) 1、关于差错处理
差错处理其实就是消除差异的过程
发现差异:对账结果对出了差异 排查差异原因:排查差异原因,是掉单了,bug,时间差等具体的原因 按照实际处理差异:找到原因后对差错进行处理,掉单的补单,bug就修复,时间差的话就不用处理,等待第二天对平 消除差异:这一步是在对账系统对差异进行标记处理,说明差异已经排除了
2、交易差错处理
对平:无需处理 单边:需要处理 错账:需要处理
3、资金差错处理
4、其他对账场景案例
红包发放充值流入:+100元 红包流出付款流出:一共8笔共80元 超时未领取退回流出:一笔20元
售票平台的售票明细与结算明细核对
售票平台的售票明细与代理商系统的售票明细核对
代理商系统的付款明细与通道的付款账单核对
结束语
↘好文推荐: 对账系统设计详解(上) 大厂没有方法论(上) 阿里设计师出品!B端产品文案指南 点个“在看”吧
评论