第三方支付架构设计之—帐户体系

2023-05-16

第三方支付架构设计之—帐户体系

一,      什么是第三方支付?

        什么是第三方支付?相信很多人对这个名字很熟悉,不管是从各种媒体等都经常听到,可以说是耳熟能熟。但,如果非得给这个名词总结出一个概念,却发现很难准确和全面的表述清楚。不过关系不大,我们无法给出一个很准确的概念的时候,我们就列举一下实际生活中我们经常使用第三方支付的例子:支付宝,财付通,微信支付等等,这些就是我们国内目前在第三方支付市场中比较有影响力的第三方支付了。

       搜索一下百度,所谓第三方支付,就是一些和产品所在国家以及国外各大银行签约、并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台。

在通过第三方支付平台的交易中,买方选购商品后,使用第三方平台提供的账户进行货款支付,由第三方通知卖家货款到达、进行发货;买方检验物品后,就可以通知付款给卖家,第三方再将款项转至卖家账户。

 从这个概念中,有几个关键点:

1,       需要跟各个银行签约,那么问题是第三方支付跟银行的关系是什么?

2,       用户通过第三方支付平台进行支付,那么资金是如何进入第三方支付平台的?

3,       商户通过接入第三方支付平台进行收款,那么资金最终又是如何结算给到商户的?

        因此,我们要充分理解第三方支付平台,得从用户,支付平台,商户,当然还有背后的银行和监管机构等进行全面分析,只有充分理解这些关系,才能对第三方支付的账户体系有充分的理解和掌握,从而充分理解支付中的资金流。

         我们知道,随着电子商务在中国的迅速崛起,电子商务必须要解决几个非常关键的问题,那就是:信息流,资金流和物流,信息流一般是通过电子商务平台进行解决,包括用户信息,商品,商户和订单等,而资金流,即支付和结算等相关方面一般是通过第三方支付平台进行解决,第三方支付植入到电商平台中,帮助电商平台解决资金在用户和商户之间的流转,甚至在c2c交易中,第三方支付还起到了中介担保账户的作用;而物流,是解决物品如何送到用户手中的问题,各种物流公司或者电商自建物流网络等都是解决物流相关的解决方案,对信息流和物流,我们这里不进行展开,本章重点侧重资金流的流转。

 

二,      什么是账户?

         从会计学上来看,账户是根据会计科目设置的,具有一定格式和结构,用于分类反馈会计要素增加变动情况及其结果的载体。设置账户是会计核算的重要方法之一。

同会计科目分类相对应,账户按其提供的信息详细程度和统驭关系不同分为总账账户明细账户,请注意,在设计IT账户系统中,总账户和明细账户是非常重要的概念,后面会重点分析。

         而按照账户反映的经济内容不同可分为资产类账户,负债类账户,所有者权益类账户,成本费用类账户,损益类账户

那么什么是会计要素?主要有6个方面:资产,负债,所有者权益,利润,费用,收入。

        账户是有结构和内容的,账户分为左方,右方两个方向,一个登记增加,另外一方登记减少。账户的内容包括了账户的名称,记录经济业务的日期,所依据记账凭证的编号,经济业务摘要,借贷金额和余额等。

        那么如何设计一个账户呢?从账户的结构和内容分析,一个账户需要记录账户变动的过程等,即借贷方向均需要进行记录,这里一般是通过账户流水来实现,即出入流水,同时,账户是记录会计要素变动结果的,因此需要根据变动的最终结果进行记录,即账户的余额。

账户 = 账户流水 + 账户余额

在具体实现中,系统对账户流水的操作和余额的操作必须是一个事务,即入流水必然导致账户余额的增加,出流水必然导致余额的减少。

那么有一个问题:借贷方向和账户流水的进出有什么关系?很多人很容易,把账户流入,即增加部分记为借,而把账户流产,即减少部分记为贷,但其实是不严谨的,或者是错误的(下面将重点介绍)。

 

三,账户的基本内容和结构

在账户的核算中,账户一般简化为“T”字账的形式,即包括账户名称,借方,贷方,发生额,借贷方余额和账户余额等。如下图:


账户的内部对账是:在一个指定的核算周期内,保证余额和流水的一致性。

(如果具体实现是通过db的事务机制,则DB本身就可以保证两者的一致性,如果不是,比如即流水,异步落地余额的情况,则需要按每天根据流水对余额进行调整或者纠正)

账户的外部对账是:保证账户操作的流水跟外部系统相关依赖流水的一致性。

 

四,      借贷复试记账法

        所谓复试记账法就是针对发生的每项经济业务都要以相等金额在相互联系的两个或者两个以上有关账户中进行同时登记的记账方法。而借贷记账法是复试记账法的一种,它是以“资产=负债+所有者权益”为依据,以“借“和”贷”为记账符号,以“有借必有贷,借贷必须相等”为记账规则的一种复试记账方法。

       借贷记账法的记账符号就是“借”和“贷”,用来反映经济业务增减变化的方向而已,本身没有特别的意义,在实际的操作中,我们把账户的左方规定记为借方,右方规范记为贷方,在任何一笔经济业务中,都必须同时登记相关账户的借方和贷方。

     我们知道,每个账户都有借方和贷方,用来记录其对应经济业务的增减变化情况,那么哪一方登记增减,哪一方登记减少,则是要根据对应账户的经济性质决定的,即账户相对会计主体来说,是属于什么类型的账户。

1,        资产类账户

资产类账户,资产的增加登记账户的借方,资产的减少登记在账户的贷方,期末有余额,一般出现在借方。在一个会计期间,所有借方金额的累加为“借方本期发生额”,所有贷方金额的累加为“贷方本期发生额”。而资产账户的余额=借方期初余额+借方本期发生额-贷方本期发生额。

如,本人在招商银行账户A存入1000元,那么该如何记账呢?首先,我们要分析本人在招行的这个账户的性质,由于这是本人存储在招行的一笔资产,所以该账户对应我这个会计主体来说,是一个资产类账户,因此记账的借贷方向需要按照资产类账户的要求来进行,即增加记为借,减少记为贷。根据分析,本人存入1000到账户A,记账如下:

借:银行存款  1000元  (资产类账户,银行账户增加了1000元)

      贷: 库存现金 1000元。(资产类账户,手中现金减少了1000元)

2,        负债类账户

负债类账户的记账规则跟资产类相反,负债增加记为贷,负债减少记为借,期末如有余额,一般在贷方,表明期末有债务实有额,负债类账户的余额计算:

         贷方期末余额=贷方期初余额+贷方本期发生额-借方本期发生额。

 

3,        所有者权益类账户

所有者权益类账户的记账规则跟负债类账户一致:所有者权益增加记为贷,减少记为借。

4,        费用成本类账户

企业在日常经营活动中会发生各种各样的耗费,这些耗费在会计学上称为成本费用,它们是收入的抵减项目,在抵销收入之前,可以视为一种资产,因此成本费用类账户的记账规则跟资产类一样:增加记为借,减少或者转销记为贷,一般借方记录的增加额都要通过贷方转出,所有此类账户在期末转销后无余额,如有余额,出现在借方。

5,        收入类账户

    企业取得的收入最终会使得所有者权益增加,因此收入类账户的记账方法跟所有者权益一致:增加记为贷,减少或者转销记为借,通常该账户期末无余额(因为期末收入都会转为所有者权益,如未分配利润等)

         至此,一个账户的增加或者减少记为借还是记为贷,是跟该账户反映的经济内容有关系,而不是简单的增加就一定是借,减少就一定是贷,在实际的记账处理中,我们首先需要根据会计主体对记账的账户的经济性质进行分析,然后按照不同账户的记账规则进行处理即可。

         

五,      第三方支付账户体系介绍

       前面我们从会计学的角度分析了账户的概念,结构和借贷记账法等内容,而这些基础知识对我们第三方支付来说是否非常重要的,它是指导我们如何更好的设计第三方支付中非常重要的---账户体系。

第三方支付机构涉及的账户类型是否非常多的,笔者根据主要的场景做了分类,主要有如下几类账户:

1,  用户在各个银行开通的账户。

       这个概念非常好理解,我们每个人在相关银行开通的储蓄卡,存折,信用卡等等都是我们在银行开通的账户,在实际的支付中,用户银行账户是资金的输出方,通过银行系统,在用户授权的情况下把资金从用户的银行卡转移到第三方支付在银行开通的收款账户(见下面说明)

2,  第三方支付公司在各个银行开通的账户。

       即第三方支付的银行账户,比如支付宝在招商银行设置的收款账户。那么第三方支付公司为啥需要在各个合作银行设置账户呢?其实道理非常简单,第三方支付公司本身毕竟不是银行,本身是无法直接接触和管理资金的,真正的资金流是通过银行系统进行的,用户通过网银或者快捷支付等支付后,用户的资金是少了,那么肯定有一个地方是多的,我们举一个例子:小明用支付宝在某商城A买了一件衣服100元,用自己的银行卡进行网上支付,假如小明的银行卡是招商银行的,并且支付宝和招商银行有合作关系,当发生支付的时候,其实支付宝只做了两个事情:

l  在用户授权下,调用银行接口把钱从用户的银行卡转移到支付宝在招商银行设置的账户上(该账户是支付宝专门接受用户的付款资金的)---由于这步是只发生在银行系统之家的,是真实的资金流。

l  第1步成功后,支付宝会对商户A记入一笔入账:100元(商户A会在支付宝申请一个商户账户,类似支付宝在银行申请一个账户一样)

从会计学的角度分析,支付宝在招商银行设置的账户对支付宝这个会计主体来说,是一笔资产(或者说是银行欠支付宝的钱),该银行账户是资产类账户,而另外一个方面,商户A在支付宝设置的商户账户对支付宝来说是一个负债类账户(因为这是欠商户的钱,后续需要结算给到商户),那么上面的支付流程,会计记账如下:

        借: 支付宝招行银行账户  100元   (资产类账户,资产增加,记为借)

                贷:商户A支付宝账户  100元  (负债类账户,负债增加,记为贷)

 

 

2,第三方支付自有账户体系

     这个比较复杂,类似银行账户有对公账户和对私账户,第三方支付公司也有针对商户的B账户和针对个人的C账户。请注意,第三方支付自有账户体系是独立第三方支付在银行申请的账户的,是自有的账户体系,完成资金在第三方支付体系的闭环和结算等,比如财付通用户余额,支付宝余额,微信支付余额等都是第三方支付账户to client的账户。

      个人账户,我们称为c账户比较简单,而商户账户由于涉及到结算和提现等操作,按照不同的资金类别设置不同账户的设计原则,商户账户一个商户号其实对应两个账户:b账户和c账户,b账户是商户结算账户,用于交易的收款等,商户本身无法直接操作,是第三方支付进行结算的账户,而商户c账户则是商户可以直接进行操作的账户,如可以进行提现,充值和支付等等。

 

3,   各个银行在第三方支付公司设置的账户

         这个账户是一个总账账户,一般用于记录资金进入第三方账户体系或者资金逃出第三方账户体系的,它一般不记录余额,而只是记录流水,方便跟各个银行进行对账。


六,      各种操作的资金流和记账规则

1,        用户通过银行卡快捷支付进行充值100元。

资金流:资金从用户银行卡进入第三方支付在对应银行的银行账户,同时对对应的第三方c账户记入一笔充值入账。

借: 第三方支付在银行的账户   100元 (资产类账户)

      贷:某用户在第三方支付的c账户  100元  (负债类账户)

 

这个需要重点分析,其实这步操作后,资金进入了第三方支付的自有账户体系中,使得自有账户体系的资金盘子增加了100元,在实际的设计中,为了能够高效跟银行进行对账,每个银行会在第三方支付设置一个对应的账户,我们成为银行的第三方支付账户,比如招行在支付宝的账户,用户通过招行卡支付充值后,除了银行系统本身的记账外,第三方支付会在该账户同步记录一笔流水,使得所有通过招行进入自有账户体系的资金流都可以通过这个流水看到,我们理解为这个账户是一个总账账户,各个用户的c账户是一个分账账户。

2,        用户通过银行卡快捷支付给商户A支付100元

资金流:资金从用户的银行卡进入第三方支付在对应银行的银行账户,同时对对应的商户A的B账户记入一笔支付入账。

借:第三方支付在银行的账户 100元  (资产类账户)

     贷:某商户A的B账户       100元   (负债类账户)

3,        用户通过第三方支付余额账户提现100到自己的招行卡

资金流:第三方支付首先把该用户余额的100元先冻结,然后调用银行接口,从自己在银行的账户中转账100元到用户的招行卡上,成功后,对该用户的余额冻结的100元进行解冻扣款。

借:某用户在第三方支付的c账户  100元  (负债类账户)

     贷:第三方支付在银行的账户 100元  (资产类账户)

可以看出,该步骤的记账给第一部分的充值时相反的。

 

4,        自有账户体系的c2c转账

由于没有涉及到用户银行卡的操作,该部分操作没有涉及到真正的资金流变动,只是账务在第三方支付公司自有账户体系的转移而已,即从一个用户的c账户转移到另外一个c账户,由于c账户对第三方支付公司来说,都是负债类账户,因此记账如下:

借: 转出的c账户  100元 (负债类账户,转出表示负债减少,记为借)

    贷:收款的c账户 100元 (负债类账户,转入表示负债增加,记为贷)

 

5,        自有账户体系的b2c支付

跟4一样,没有涉及到银行接口的调用,因此没有发生真正的资金流的流动,账户只是在第三方支付公司的自有账户体系转移而已,即从一个用户的c账户转移到另外一个商户的B账户。

记账如下:

借:支付的c账户 100元

      贷:收款的商户B账户 100元。

综上,第三方支付的账户体系还是相当比较简单,一般是资产类账户和负债类账户比较多,会计处理上也比较简单。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第三方支付架构设计之—帐户体系 的相关文章

随机推荐

  • 什么是自贸区?什么是离岸债券?

    1 自由贸易区 中国自由贸易区是指在国境内关外设立的 xff0c 以优惠税收和海关特殊监管政策 为主要手段 xff0c 以贸易自由化便利化为主要目的的多功能经济性特区 自由贸易区有两个本质上存在差异很大的概念 xff1a 一个是FTA xf
  • 什么是SLO?

    SLO xff1a 短期流动性调节工具 xff08 Short termLiquidityOperations xff09 每周二 周四 xff0c 央行一般都会进行公开市场操作 xff0c 目前最主要的是回购操作 回购操作又分成两种 xf
  • strcpy、strncpy与memcpy的区别与使用方法

    strcpy strncpy 与memcpy 的区别与使用方法 strcpy strncpy memcpy这三个C语言函数我们在主机代码编写中会很频繁的使用到 xff0c 但是三个函数的区别 使用时该注意什么还是有必要说下的 本文参考 C
  • C语言:存取结构体成员的点运算符(.)和箭头运算符(->)的区别

    一直以为这两个是没有什么区别的 xff0c 可以相互替换 xff0c 今天又翻了一下 C语言核心技术 xff0c 明白了其中的奥妙 相同点 xff1a 两个都是二元操作符 xff0c 其右操作符是成员的名称 不同点 xff1a 点操作符左边
  • DB2 命令行中如何执行sql脚本

    原文链接 xff1a http space itpub net 8231934 viewspace 584635 db2 61 gt connect to dbName user xxx using password db2 61 gt s
  • 性能测试知多少 --并发用户数与TPS之间的关系

    1 背景 在做性能测试的时候 xff0c 很多人都用并发用户数来衡量系统的性能 xff0c 觉得系统能支撑的并发用户数越多 xff0c 系统的性能就越好 xff1b 对TPS不是非常理解 xff0c 也根本不知道它们之间的关系 xff0c
  • ubuntu编译 opencv undefined referece to `cv::imread()`

    Ubuntu下编译一个C 43 43 文件 xff0c C 43 43 源程序中使用了opencv xff0c opencv的安装没有问题 xff0c 但是在编译的过程中出现如下错误 xff1a undefined reference to
  • 基于深度学习的3D pose estimation总结(包括几篇2D pose estimation)

    一 任务描述 给定一幅图或者是一段视频 xff0c 人体姿态估计就是恢复出其中的人体关节点位置的过程 二 挑战和难点 1 人体肢体运动较为灵活 xff1b 2 视角的变化 xff1b 3 附着物的变化 xff08 比如遮挡 xff0c 衣物
  • STM32的空闲中断

    最近发现了STM32的USART的空闲中断非常的舒爽 xff0c 但是在前期配置的时候会出现一些小问题导致没有办法进入终中断或者是一直空闲中断 xff0c 现将它记下来 xff0c 给各位和自己留一个参考 xff1a 1 不进入中断 我是这
  • Github上最受欢迎的7个开源AI机器学习框架

    在过去的几年中 xff0c 人工智能正在占领技术的许多领域 来自不同背景的开发人员最终意识到了AI为他们带来的机遇 xff0c 而不管他们的需求如何 在今天的文章中 xff0c 我们列出了7种最佳的开源AI 机器学习系统和框架 1 Tens
  • ubuntu更换shell

    ubuntu更换shell zsh配置 span class token comment 安装zsh span span class token function sudo span span class token function ap
  • 网络调试助手NetAssist的使用

    一 使用场景 xff1a 项目定制需求 xff1a 前端的车载终端把gps 报警信息 报警图片 其他检测数据发往约定的第三方服务器 xff0c 车载终端通过公网 xff08 SIM拨号或者有线网 xff09 以udp或者tcp连接服务器 x
  • vlc代码分析(4)——mpgv的demux

    Mpgv c 是对mpeg vedio的解码部分 xff0c 从demux开始 xff0c 到sample到输出 其中 xff0c 核心部分是函数ParseMPEGBlock 两种数据格式 xff1a video format 是video
  • 关于使用CMT2300A FIFO缓存区间设置为64Byte的问题

    首先请看 xff0c CMT2300A 是什么产品 xff0c 或者说是 模组吗 xff1f 请看介绍 xff1a https blog csdn net sishuihuahua article details 105095994 以及R
  • 不合理超时设置带来的“坑”

    在后台服务的实现中 xff0c 我们通过基于TCP UDP协议封装起来的RPC机制实现了跟不同系统的通信 xff0c 进而协同各个系统完成一系列业务流程和功能的执行 xff0c 在这个过程中 xff0c 每个参与合作的子系统都有自己的能力描
  • 以太坊的三种同步模式

    全同步 xff1a 获取区块链所有区块的header和body xff0c 并校验其中的每一笔交易 xff0c 需要下载所有的区块数据信息 xff0c 同步速度最慢 xff0c 但是数据最全 xff1b 快速同步 xff1a 获取区块链所有
  • 基于订单号可重入的交易系统接口设计探讨

    基于订单号可重入的交易系统接口设计探讨 在交易系统的设计和实现中 xff0c 接口的可重入性设计是及其关键的 xff0c 可重入性也叫接口操作的冥等性保障 xff0c 那么什么叫冥等性呢 xff1f 在交易系统中 xff0c 为什么需要这个
  • 什么是手机的IMEI?

    一 xff0c IMEI是什么 xff1f IMEI xff08 International Mobile Equipment Identity xff09 是移动设备国际身份码的缩写 是由15位数字组成的 电子串号 xff0c 该码是全球
  • PBOC2.0安全系列之—脱机认证之静态数据认证(SDA)

    PBOC2 0安全系列之 脱机认证之静态数据认证 SDA 一 xff0c 什么是PBOC2 0 2005年3月13日 xff0c 人民银行发布第55号文 xff0c 正式颁发了 中国金融集成电路 xff08 IC xff09 卡规范 简称P
  • 第三方支付架构设计之—帐户体系

    第三方支付架构设计之 帐户体系 一 xff0c 什么是第三方支付 xff1f 什么是第三方支付 xff1f 相信很多人对这个名字很熟悉 xff0c 不管是从各种媒体等都经常听到 xff0c 可以说是耳熟能熟 但 xff0c 如果非得给这个名