背景
账务系统是什么
账务系统是采用一些会计理论(复式记账和会记科目)来记录公司业务的每一笔资金交易的流入和流出;说清楚每笔资金的来龙去脉。
为什么建立账务系统
- 保证资金安全
四重防护保证资金安全;业务校验、复试记账、日终对账、三方对账。实时、离线全方位做资金安全治理,也可以做报账系统的监控,实时发现业务问题。 - 保证数据安全
采用财务会计处理数据的方式(红冲蓝补),做到一旦生成数据,不删除、不更新,保留原始错误数据。保证了数据的安全性、准确性、一致性。 - 统一资金数据
资金变动相关数据全部收口在账务,记录资金变动过程的完整记录,可以说清资金的来龙去脉。 - 统一提供资金服务
为业务线提供统一的资金平台服务和资金数据服务;满足业务系统的资金平台,财务的会计核算,外部的审计等需求。
资金平台服务:可以提供账户服务、结算服务、对账服务、资金调拨等。
资金数据服务:会计分录、财务报表、统计数据等。 - 灵活控制
可以完成账户回滚,账户流水回放,日终余额校验,账户监控等控制;也可以灵活支持业务账相关需求。 - 提高公司收益
提升资金的使用效率,提高财务人效,减少财务人力投入,进而提高公司收益。
账务系统架构
账务系统和其他系统的关系:
以账务系统为核心
业务系统 -> 账务 -> 会计核算 -> 对账/清结算
以交易系统为核心
总架构图
账务系统
账务系统是大账务系统(资金管理平台)的核心,包括:账户系统和总账平台。
账户系统:一般包括用户、商户、平台、银行等,记录每笔交易的收付金额和记录。模型如下图:
总账平台:主要包括记账核心和对外提供的账务服务;记账核心采用规则引擎和复式记账去设计。
会计系统
会计系统主要是为财务服务的系统,包括:会计分录和财务报表。
会计分录:主要有科目、凭证(原始凭证);核心是依据财务的会计准则存储一些财务数据。
财务报表:一般有:应收报表、实收报表、资产负债表以及审计报表等。
会计分录和财务报表的职责划分,由实际业务决定,会计分录生成的凭证可直接生成财务的主要报表做凭证,财务报表主要做报表后台和分析相关工作;也可以只生成初始数据,后续都由财务报表负责。
账户与会计科目的关系:
清结算系统
清结算系统主要依据账务数据进行资金相关的操作。包括:清算、结算、核算,主要说下结算。
结算:相对于转账,对清算后的数据根据一定的账期进行资金划拨。
对账系统
顾名思义,主要做对账,一般分为业务对账和资金对账,这是按业务划分的,信息流和资金流的核对结果的处理方式一般不一样,但对账核心处理一般设计为通用模式。
基础平台
基础平台一般做一些基础服务、数据服务和其他服务。不多做介绍了。
系统模型
账务设计模型如此设计的优势如下
- 资金安全性
四重防护保证资金安全;业务校验、复试记账、日终对账、三方对账。采用本地事物+分布式事务,报账数据一致性;采用财务会计处理数据的方式(红冲蓝补),做到一旦生成数据,不删除、不更新,保留原始错误数据,保证了数据的安全性、准确性。 - 灵活拓展性
整个账务核心的设计,采用账户-科目一体式的规则引擎,把所有的记账操作指令化,灵活的操作所有账户、所有科目、所有记账服务的记账行为。 - 系统稳定性
所有的操作都有幂等性做处理,防止重复记账以及网络抖动导致的重复报账;核心操作有异常检测和处理机制,以及最终补偿记账。
日终对账相关
- 每日记账核对
核对前一日的入账数据,包括记账凭证和账户流水,规则如下:
1 | 账户流水信息的总借方金额 = 总贷方金额 |
- 每日账户核对
核对前一日账户信息的日终余额是否正确,具体方法:
取前两日的日终余额作为前一日的账户期初数,根据账务流水中前一日该账户的明细信息,对账户期初数加减运算,算出日终余额,该余额与账户信息中的昨日余额相同。
- 每日账户余额快照
在账户核对正确基础上,按照账户信息表中昨日余额生成所有账户的余额快照。信息包括日期、机构、科目、账户、账户类型、币种、现金账户余额、累计基数、新增基数。
记账点
需求梳理的核心是梳理清楚集团所有资金相关的业务,并根据财务的借贷科目;梳理出每一个记账点。
比如一个借贷业务的账务记账点:
名企支付架构
每个公司根据其业务和公司发展的不同阶段,所设计的支付系统也会有所不同。我们先看一下互联网公司一些典型的支付系统架构。
以下架构是这些公司的支付子公司或者支付的部门的支付架构。