电子商务系统支付账户体系设计:从基本概念到需求分析

2024-08-26
来源:网络整理

账户体系是支付系统的基础,它的设计直接影响整个系统的特性。这里我们讨论如何设计电子商务系统的支付账户体系。我们从一些基本概念开始,了解如何建模。

支付账户与登录账户

账户体系设计首先要区分两个概念:支付账户和登录账户,这是两个不同业务领域的概念:支付账户是指用户在支付系统中用于交易的资金所有权凭证;登录账户是指用户在系统中的登录凭证和个人信息。一个用户可以有多个登录账户,一个登录账户可以有多个支付账户,如零钱账户、储值卡账户等,一般来说,支付账户不会在多个登录账户之间共用。如无特别说明,下文提到的账户默认均指支付账户。

帐户设计要求

在支付系统中,账户的设置主要从以下几个方面考虑:

交易需求,比如检查账户是否被锁定,余额是否充足,是否有效等。记账需求,根据公司会计需求记录账户上的所有动作,包括支出,充值,转账等。对账需求,包括支付渠道,商户,个人需要对账,检查交易和账户余额是否正确。风控需求,比如反洗钱,反欺诈等,都是依靠账户体系提供核心数据。本文暂时不分析这方面内容,《支付风控》和《支付反洗钱》两篇文章会对信用需求进行详细分析。在评估用户、资产、商户等主体的信用时,也需要依靠账户体系提供的核心数据。这方面内容暂时不分析,会在《信用与支付》一文中进行分析。

这五项要求按照设计的优先顺序,也从支付、核算、对账、风控四个方面进行,支付系统会根据发展阶段,逐步将新的要求纳入设计中。

交易和账户

账户设置通常从交易开始,交易的实现必须有账户支撑,账户是交易的基本组成部分。从支付体系的角度看,一笔交易所涉及的资金流,就是资金从一个账户流向另一个账户。发起交易的一方称为交易主体,可以是个人,也可以是机构。

资金从主体拥有的账户流出。接受交易的一方称为交易对手,也可以是个人或机构。与第三方支付或金融机构的交易不同,在电子商务系统中,交易还会涉及渠道。

由于电商系统本身不具备清结算资质,所有从交易标的到交易对手账户的资金流,大多数情况下并不经过电商系统,而是由电商系统通过支付通道提供的接口调用,完成实际的支付流程。当然,通道并不是活雷锋,在这个过程中,通道是要收取费用的。

因此在电子商务系统中,一笔交易会涉及到三个账户:交易主体账户、交易对方账户、支付渠道账户,如何在这三个账户中完成一笔交易将在后续的《交易与会计》一文中详细分析。

簿记和会计

公司的会计需要对每一笔交易进行详细的记录,也就是记账。公司每天都会产生大量的交易,为了便于管理和统计,一个简单的方法就是对交易进行分类,比如食品、带宽、办公用品等。这种分类可以有一、二、三或更多层级的结构,这取决于公司的规模和业务的复杂程度,这被称为会计科目。记账时,除了交易明细外,还需要对每一层级的交易金额进行汇总。

一般来说,将一级科目汇总的叫总帐科目,将详细记录的叫明细科目。在电子商务系统中,由于涉及的参与者较多,核算相对复杂,但基本方法大同小异。电子商务参与者可分为商家、买家、渠道商。针对这三类参与者,需要分别建立总帐科目和明细科目。

内部和外部帐户

当用户使用银行卡支付时,电商支付系统需要连接银行,从用户银行卡所代表的账户中扣除资金。扣款或充值都是在这些机构的账户中进行的,这些账户被称为外部账户。对于外部账户,支付系统只能在系统内记录该账户的明细和累计消费金额,却无法知道账户的实际余额。电商玩的是零钱的概念,就是让用户充值零钱,然后在使用时直接从零钱中扣除,这就需要一个零钱账户,这是电商系统自己设置的账户,所以也叫内部账户,电商系统知道账户的所有消费明细和余额。当然,除了零钱账户,还可以有储值卡账户、积分账户等。

那么问题来了,什么时候需要创建账户呢?比如优惠券需要创建账户吗?一次性储值卡还是可充值的储值卡需要创建账户呢?这里有个雷区,后面我会在介绍支付和记账的时候,给出答案。

怎么用医保共济账户支付_账户支付功能被关闭怎么解除_支付账户

收款账户和收单账户

电商企业在跟银行打交道的时候,往往会被要求开立一个收款账户,当用户通过这个银行支付的时候,钱就打到这个账户上。第三方支付也是一样,收款账户开在银行或者第三方支付方就是通道方,一般来说通道方可以每天把这个账户的交易流水提供给电商企业进行对账,这样通道方就成为了电商方的支付收单机构。在这里建立一个跟这个收款账户对应的收款账户进行对账,用来记录通过这个通道方进行的交易流水。

账户建模

说这么多的目的就是为了对账建模。账本模型和公司的业务息息相关,不同规模、不同发展阶段的公司需要的模型也不尽相同。账本建模本身包括三个核心模型:实体模型、账本模型、交易模型。从交易模型中可以衍生出各个角色的账本流转,也就是明细模型,明细模型用来支撑对账。

实体模型

实体模型与用户、商户模型有重叠,下面是专门针对支付设置的实体属性,一般来说,支付相关的实体模型需要包含以下属性:

帐户模型

根据业务需要,可以设置多种账户,如支付账户、预付卡账户、借记账户、找零账户、结算账户等。从类别上讲,这里的账户一般都是指总账账户。涉及的账户类型有:

对于这些账户,需要设置以下属性:基本属性,包括:

账户控制相关:

资金相关:

银行卡及第三方支付信息:

注意有些第三方信息是不能保存的,比如用户账号密码,信用卡CV号等,为了防止账号信息被爬取或者数据库信息被意外泄露,密码等敏感字段一般都需要加密保存,甚至保存到另外的表中。另外,为了防止账号信息被意外修改,可以增加一个校验字段,这个字段在写入数据时设置,在读取数据时进行校验,一旦出现问题,账号就会被关闭。

交易模式

交易记录、交易流转、账户流转、交易账本是三个容易混淆的概念,但从数据角度看,它们并不复杂,核心是交易流转,账户流转是从账户角度看的交易流转。一笔交易涉及很多方面,到底应该记录什么呢?考虑到交易记录会用于风险控​​制和信用分析,收集的信息越全面越好。

总结

如上所述,模型非常复杂,无论是账户还是交易。有必要记录这么多信息吗?如何在交易中使用这些模型?请关注后续文章。

原文来源:

结尾

分享