账户系统和会计系统的设计是整个支付系统的底层基础,对外,为支付系统提供资金的充、提、转、管等服务,对内,为财务和资金方提供完整的内部记账凭证。

一、交易模型

账户的变动基于交易而发生,对于账户的处理,需要根据不同的业务规则,结合产品的规划,建立完整的交易模型。

  • 收银台

资金入口,提供B2C网银、B2B网银、快捷支付、协议支付、身份验证等

  • 交易系统

提供业务层的原子化接口,比如快捷支付,协议支付,出金、提现等,处理组合不同的业务,包括组合支付、拆单支付、多次支付等

  • 资产交换

基于渠道层的接口提供原子化服务,动态编排组合账户指令和渠道指令,清结算指令等。

  • 账户系统

基于交易发生的账户变动,比如C1转账100元给C2账户。

  • 会计分录

根据不同的记账事务指令会产生不同的会计分录事件,一般需要支持一借一贷和一借多贷,即每笔交易都会至少生成一组会计分录。

下面以快捷支付收单为列

假设条件:

1、用户使用招商银行做快捷支付向企业商户下单购买产品。

2、支付公司结算至商户余额账户。

产品简称 交易阶段 账户变动 会计分录
快捷支付 收单 银行应收至商户待结算户 借:应收账款-待结算-招商银行
   贷:应付账款-待结算-企业商户
  结算 商户待结算户转账至商户基本户 借:应付账款-待结算-企业商户
   贷:应付账款-基本户-企业商户

二、账户体系

账户按照所有权可以分为个人账户、企业账户、内部账户。个人账户是面向个人开设的电子账户,比如余额记录用户在支付平台的余额,企业账户是面向商户开立的账户,比如待结算户,基本户,手续费户。内部账户是支付公司为自身业务开展而设立的账户,比如在央行开立的ACS 账户、长款户、短款户。除此之外,支付系统还可以根据自身业务的需要设立各种不同的账户类型。

所有的账户都记录着两方面的信息。

1、账户基本信息:账户号、账户类型、余额、币种、余额方向、账户状态、开户时间、还有些权限控制(是否允许余额为负数、是否允许充值、是否允许提现等)

2、账户流水信息:自开户以来账户所有余额变动信息。何时存入资金,何时取出资金、何时资金冻结解冻。

名词说明:

开户:开设个人账户、企业账户、内部账户。

变更账户信息:变更账户状态、变更账户信息。

记账:实时记账、定时批量记账。

查询:查询账户变动流水。

账户用例(记录商户侧)

1)开户

  • 商户A是一家电商平台,接入支付系统快捷支付、支持借记卡和贷记卡;

对于手续费征收,采取收支两线,并预存手续费10000元,及交易手续费为1%;同时因为该商户资质较好,交易时采取D+0实时结算。这里涉及到了垫资。

  • 商户开户,根据交易特点,需要开通以下账户:

待结算户:用户在商户交易完成后,资金进入该账户。

基本户:商户的余额户,可体现。结算后资金进入该账户。

手续费账户:专门用来存放手续费的账户。

阶段 待结算户 基本户 手续费户
开户 0 0 10000

2)收单交易

用户上午9点在A电商平台上使用快捷支付购买1000元的商品,交易完成后,A商户结算户增加1000元。

手续费按照1%标准收取,有商户支出,该笔交易手续费为1000*1%=10元,计入手续费账户,手续费剩余9990.

支付公司设置D0结算时间为每天下午4点,下午4点后,待结算资金结转至基本户。

账户变动如下:

阶段 时间节点 待结算户 基本户 手续费户
开户   0 0 10000
收单 9:00 1000 0 9990
结算 16:00 0 1000 9990

3)提现

A商户在下午16:30提现600,商户提现手续费按笔征收,每笔2元。

商户提现600元后,基本户剩余400,手续费账户剩余9988。

账户变动如下:

阶段 时间节点 待结算户 基本户 手续费户
开户   0 0 10000
收单 9:00 1000 0 9990
结算 16:00 0 1000 9990
提现 16:30 0 400 9988

三、会计核算体系

按会计科目所反映经济内容的不同一般可分为资产类科目,负债类科目、资产负债类共同科目、所有者权益科目,损益类科目。

资产类科目余额在借方,借贷类科目余额在贷方,资产负债共同科目类根据实际情况可借可贷。

会计科目分为总账科目和明细科目。总账科目又称一级科目,是总括反映会计要素的科目,比如银行存款,应收账款。

明细科目是对总账科目的细化的科目,在明细科目中。根据需要设计二级科目,三级科目。其中,没有下级科目称之为叶子科目。

常见会计科目

1.资产科目类

银行存款

应收账款

在途调拨

2.负债类科目

个人账户余额

公司账户余额

应付账户

3.共同类

待清算充值款项

待清算提现款项

待清算支付款项

科目账户层级

四、业务流程

基于消费类型的记账流程

  • 交易系统(收单)

基于商户模式的收单交易,针对购买商品消费类型,异步请求清结算系统。

  • 清结算系统

A-交易清分,算出给每个账户打多少钱,同时从每个账户收多少钱;

B-交易结算出款:调用银行/通道代付接口,自动出款。

C-对账:核算通道与支付系统的应收应付。注:对账业务流程最好不要跟清算、结算勾连在一起,跟上游通道对账与给商户付多少钱最好不要业务先后关系。

  • 账户系统

记录每笔交易的收付记录。

  • 会计系统

按照企业会计分录流水记账,记账采用复式记账法。

账户、会计处理流程

一笔交易至少在账务系统中产生一条账户流水记录(明细账),同时会在会计系统中根据业务规则产生一套或者多套会计分录流水,账户余额与会计余额想对应。账务系统是对外客户提供账户支持,客户的查询余额,明细都是来源于此;会计系统是为了内部核算管理的需求设定的,所有银行资金清算与结转都需要会计系统的支撑,内部户与外部户的资金核算管理也需要会计系统,两个系统相互依赖,账户系统是会计系统的前置。

交易流水达到账户系统后,账户系统为每笔交易分配账务流水,账务前置调用计费系统统计商户手续费。账户流水形成后,若是非实时记账,则直接通知业务系统记账完成,待定时任务跑批执行缓冲记账,若是实时记账,则系统开始记录分户账流水和更新分户账余额,余额更新完成后通知业务系统记账完成。账户系统记账完毕后,将定时或者准实时以批量接口发送至会计系统,会计系统会为每笔交易记录会计分录流水。对于会计记账,需要支持一借一贷,一借多贷模式,会计记账也分为记分户明细账和更新会计余额。

会计记账完毕后,每日日终,进入批处理流程,日终处理是对日间没有处理完毕,以及不需要在日间处理的任务进行批处理的过程,在记账中日终处理主要是指业会核对,即账户系统余额与会计系统余额间的核对。

账户系统和会计系统的设计相关推荐

  1. 互联网账户系统如何设计

    转载自  互联网账户系统如何设计 在很多互联网公司业务发展的早期,业务模式比较单一的情况下,涉及用户账户资金交易相关的逻辑也比较简单,但是随着公司业务模式的不断创新及类型的多元化发展,会渐渐发现现有系 ...

  2. 互联网账户系统如何设计(上篇)

    在很多互联网公司业务发展的早期,业务模式比较单一的情况下,涉及用户账户资金交易相关的逻辑也比较简单,但是随着公司业务模式的不断创新及类型的多元化发展,会渐渐发现现有系统账户逻辑越来越雍肿,不仅难以支持 ...

  3. 互联网账户系统的具体实现

    转载自  互联网账户系统的具体实现 导读 在上一篇文章中我们通过场景举例的方式,讨论了一套相对通用的互联网业务账户系统,从业务模型上应该如何定义.那么除了从业务模型上进行定义外,在具体系统实现上又该如 ...

  4. 电子商务系统的设计与实现(五):账务系统的功能接口设计

    2019独角兽企业重金招聘Python工程师标准>>> 电商系统.p2p网贷系统.第三方支付都可以有自己的账务系统, 账务系统与用户系统可以完全独立,不需要用户ID等信息,只提供给其 ...

  5. 今天聊聊电商系统中红包活动设计

    电商的营销玩法可谓花样百出,今天跟大家聊聊红包雨活动是如何设计技术方案的. 红包雨是一个典型的高并发场景,短时间内有海量请求访问服务端,技术团队为了让系统运行顺畅,抢红包采用了基于 Redis + L ...

  6. 多账户统一登录,如何设计用户体系?

    若有收获,请记得分享和转发哦 多账户登陆 互联网应用当中,我们的应用会使用多个第三方账号进行登录,比如:网易.微信.QQ等,我们把此称为多账户统一登陆. 通过这篇文章, 我想阐释多账户登陆的技术方案细 ...

  7. SSM家庭理财个人理财系统-JAVA【数据库设计、源码、开题报告】

    第一章 绪论 1.1 课题背景.目的及意义 从 20 世纪末以来,在全球经济日趋一体化的背景之下,中国经济也得到了飞速的发展,家庭收入也快速增长.居民的消费结构发生了巨大变化,购置房产.旅游.汽车消费 ...

  8. METATRADER 5 已具备锁仓账户系统

    MetaTrader 5平台最初是专为净额持仓账户系统而设计的.净额系统每个金融工具仅允许一个持仓,也就意味着该工具的所有进一步操作只能是关闭,撤销或改变现有持仓的交易量.为了扩大零售外汇交易者的可能 ...

  9. 电商系统架构设计系列(一):电商系统到底是如何设计出来的?

    引言 电商这个业务,和我们的生活息息相关.你可能对电商多少有一些了解,但是,即使是一个最小化的电商系统,它仍然非常复杂. 在这个系列的文章里,我们将一起以一个创业公司的 CTO 的视角,来设计一个最小 ...

最新文章

  1. 马斯克的星际飞船SN10又炸了,但技术却向前迈出一大步!
  2. 揭秘Facebook SLAM技术,如何为人们生活增添奇幻的艺术色彩?
  3. [Everyday Mathematics]20150107
  4. 基于FPGA的costas环同步系统仿真与分析
  5. 程序员的创业陷阱:接私活
  6. 你不能准时下班的根本原因是……
  7. Android插件化开发之动态加载技术系列索引
  8. 【nyoj - 860】 又见0-1背包 (dp,反向0-1背包,好题好思路)
  9. 帆软部署到windows环境绝对路径及网络报表目录写法
  10. 评测网站的十个指标!
  11. Niagara Networks网络安全出口解决方案
  12. binance ping pong
  13. jQuery即点即改
  14. js读取解析JSON数据
  15. 祖国生日快乐,个性化国庆头像合成
  16. 8月1号起 银行卡、支付宝、微信的这些费用可以省了!
  17. 2019上海埃森哲软件开发面试
  18. 25种动态图形设计手机竖屏AE模板下载
  19. C/C++小游戏---贪吃蛇
  20. 常用软件自动化测试工具汇总

热门文章

  1. 数据库实验【2】 | 可视化界面编程——简易计算器的设计
  2. 美团后台开发两轮面经(已offer,题目很全)
  3. 从爆火的“哇呀挖”,思考我软件开发的人生意义何在?
  4. 安装 APK 文件到 Android 模拟器的方法
  5. android+多处理器+ios,ios与安卓的区别 浅谈ios为什么比安卓流畅 (2)
  6. scrollTop详测
  7. ping命令代码查看主机连通状态
  8. halcon 返回XLD轮廓全局属性值 get_contour_global_attrib_xld
  9. MediaPlayer+SurfaceHolder播放工具类
  10. SurfaceHolder视频播放