说明:
科目有多级科目,所以有个自关联。
账户分为客户账户和内部账户,二者的结构有一些小的区别,比如内部账户一般不会被冻结,但是客户账户可以被冻结。
会计科目示例:
说明:
一般支付系统使用三级科目就已经足够。部分特别复杂的系统,可能会用到五级科目。
为便于理解,上面的示例做了很大的精简,各公司内部对科目的编制差异可能会比较大。
下面是一个典型的支付系统会计科目的部分截图示例。
6.5. 记账方案
有了账户和会计科目,发生一笔交易时,如何让系统自动去记账?这个是记账方案做的事。其中一个解决方案就是给不同的交易场景制定不同的交易码,通过交易码来驱动记账。
下面是一个典型的支付系统的记账方案示例(部分截图)。
6.6. 会计日与日切
会计日,也称为会计结算日或账务结算日,是支付平台在会计周期中进行账务处理和结算的特定日期。比如在分布式环境下,各机器可能存在时间差,一笔交易在零点时有可能跨天处理,如何判断一笔交易归属于哪天,就依据会计日来计算。
所谓日切,简单理解就是切换到下一个会计日。主要做的工作:
借贷试算平衡。
父子科目试算平衡。
总账试算平衡。
日、月、季度、年汇总。
会计日变更。
日切试算平衡核心逻辑:
借方发生额 = 贷方发生额
借方余额 = 贷方余额
期末余额 = 期初发生额 发生额
父科目累积额 = 子科目累积额