账务系统设计及应用
TRANSCRIPT
![Page 1: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/1.jpg)
waltwang
![Page 2: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/2.jpg)
基本内容
• 背景介绍
• 复式记账法
• 帐务系统基本要素
• 在电商平台的应用
![Page 3: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/3.jpg)
自我介绍
• 20年IT从业经验,混战过银行、航空旅游等行业
• 全栈工程师。编程语言爱好者、新轮子爱好者、scala爱好者。
• 混迹过银行、航空旅游等行业,担任过易网通商旅CTO、好易电子联行CTO,现任快塑网CTO。
• 唯品会SOA架构OSP创建者
• 业余马拉松爱好者。
![Page 4: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/4.jpg)
关于本文
• 本文的主要经验来源于银行核心帐务系统设计的项目经历
• 在非专业财务系统中应用复式记账法
• 非专业财务领域
• 非专业财务、会计知识
• 跨界应用:将复试记账法应用在非财务系统
• 电商平台支付结算
• 订单内部核算
![Page 5: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/5.jpg)
复式记账法
• •
•
• •
资产 = 负债 所有者权益
+
![Page 6: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/6.jpg)
会计科目• 根据业务特点、属性设置会计科目 • 基本原则:合法性、相关性、实用性、清晰性
![Page 7: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/7.jpg)
会计科目
分类 说明 余额方向
资产 现金、银行存款、应收款、预付款 借方
负债 银行借款、应付款 贷方
所有者权益 股本、资本公积金、未分配利润 贷方
收入 利息收入、手续费收入、销售利润 贷方
费用 手续费支出、利息支出 借方
资产 = 负债 所有者权益
收入 费用+ + -
会计恒等式:
![Page 8: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/8.jpg)
复式记账
• 有借必有贷,借贷必相等
Σ借记 = Σ贷记
![Page 9: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/9.jpg)
账务系统结构
• 基本概念
– – General Ledger
– – 1-3
– – –
– – – “ ” “ “
– – ” “ – –
– – – –
![Page 10: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/10.jpg)
账务系统结构
• 静态 – = Σ子科目 不直接记会计账 – 科目 = Σ科目分户账 – 分户账
• 动态 – 分户交易流水:对应分户账户
• 日终批量记录科目记账流水 • 在元信息中配置记账规则
– 科目记账流水:对应科目账户 • 分录 • 凭证编号、交易摘要、(记账科目、借记金额、贷记金额)*
![Page 11: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/11.jpg)
账务系统结构
• 元信息 – 科目、父子关系 – 科目分类属性 – 交易记账配置
• 科目账户历史信息 – 每天的资金余额、分账户数、交易金额(借方、贷方)、账户变化数(开户、销户)
– 重要科目的历史信息需要打印、签字、盖章,以备核查
![Page 12: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/12.jpg)
账户平衡体系
Σ资产 = Σ负债 Σ所有者权益
Σ收入 Σ费用+ + -期初:
Σ借记 = Σ贷记交易记账:
Σ资产 = Σ负债 Σ所有者权益
Σ收入 Σ费用+ + -期末:
期末账户数
= 期初账户数 开户数 销户数+ -账户数:
![Page 13: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/13.jpg)
账户平衡:总分一致科目 余额
= Σ分户余额期初:
Σ借记 Σ贷记
期末:
期末账户数
= 期初账户数
开户数 销户数+ -账户数:
科目 余额
= Σ分户余额
=
= Σ分户数
![Page 14: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/14.jpg)
账务核对体系
• 现金账户核对
• 记账凭证核对(手工凭据时代) • 记账凭证核对(电子凭据时代)
– 每笔记账流水有可以核查的流水编号 – 能够和外部凭证号(如银行支付回单号)核查
银行现金账户余额
= 实际银行账户金额
![Page 15: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/15.jpg)
账户安全
• 风险 绕过正常交易,直接修改数据库,+ $1M
• 账户Mac校验 –关键字段:账号 + 户主名称 + 最后交易日期 + 余额 –MAC = Hash(关键字段) –交易前检查MAC的一致性,不一致则拒绝交易 –交易后更新MAC
![Page 16: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/16.jpg)
账户安全
• 风险 – 绕过正常交易,修改两个交易账户,一增一减,总数平衡
• Binlog核对 – MySQL Binlog – 交易流水 – 二者的修改是明细一致的(所有的账户变更binlog都有对应一致的交易流水记录)
![Page 17: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/17.jpg)
Case 1:结算系统1期:记账
![Page 18: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/18.jpg)
Case1:结算系统1期: 账户设置科目名称 级别 分类 分户账户 说明
现金账户 1 资产
现金-ECC收款账户 2 资产 在线支付银行结算账号
现金-财付通付款账户 2 资产 在财付通开设,用于向商户支付货款
现金-财付通退款账户 2 资产 在财付通开设,用于向用户支付小额退款
代收货款 1 负债 未结算到商户的代收款项
应付款 1 负债 按商户分账户 已清算需付给商户的款项,可设置账期
ECC佣金收入 1 收入 建议开商户子账户
核算向商户收取的交易佣金
支付手续费支出 1 费用 是否按支付渠道开子账户
在线支付手续费支持
利息收入 1 收入 银行账户利息收入
账户管理费 费用
ECC资金调拨 1 负债 往来类账户。调入资金:贷方/调出资金(借
方)
![Page 19: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/19.jpg)
Case1: 订单支付:与支付方对账后记账
借方 贷方
在线收款(T+1) (资)现金-ECC收款账户
990(+) (费)支付手续费-支付渠道 10 (+)
(负)代收货款 1000 (+)
支付手续费逐笔现结模式(支付宝、快钱等):
借方 贷方
在线收款(T+1) (资)现金-ECC收款账户
1000(+)(负)代收货款 1000 (+)
支付手续费后结模式(财付通):
![Page 20: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/20.jpg)
Case2: 快塑网订单结算
• B2B业务
• 大宗交易,金额巨大。客单价平均15-20万。
• 线下流程重
• 标准化程度较低
• 流程复杂
• 异常分支多
• 变更频繁
• 高风险、高变更
• 应用复式记账体系
• 资金关系清晰(相比复杂的企业运作的财务复杂度,订单系统还是更简单的)
• 业务变更反应在“帐务结构”的调整和规则的调整,整体结构无需变化,达到以不变应万变的能力。
![Page 21: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/21.jpg)
Case2: 账户结构
1.应收款
• 子账户:货款应收款、物流应收款、金融应收款、售后应收款
2.应付款:货款、物流款、金融款、售后
3.营业收入:货款、物流款、金融款、售后
4.营业支出:货款、物流款、金融款、售后
5.市场费用(补贴):货款、物流款、金融款
6.资金帐户:按公司设分户
7.预付款帐户:按公司设分户
8.贷款帐户:按公司设分户
9.现金:普通现金、融资备用金
10.内部往来
![Page 22: 账务系统设计及应用](https://reader031.vdocuments.pub/reader031/viewer/2022030313/58cf194f1a28abc05f8b4f31/html5/thumbnails/22.jpg)
Case2: 记账示范
# 新增销售订单
费用项目:
货物总金额 = ∑(销售单价 * 吨数)
物流总金额 = 运费 + 装卸费 + 仓储费 + 保管费 + 杂费
金融总金额 = 金融单价 * 吨数
贷款本金
借记
应收款-货款 = 货物总金额 - 市场费用-货物 - 贷款本金
应收款-物流 = 物流总金额 - 市场费用-物流
应收款-金融 = 金融总金额 - 市场费用-金融
贷款 = 贷款本金
市场费用-货物
市场费用-物流
市场费用-金融
贷记
销售收入-货款 = 货物总金额
销售收入-物流 = 物流总金额