解构电商、O2O:电商系统的CPU-交易系统
编辑导语:交易系统就是用户在确定购买内容后和电商平台签约并生成订单的过程,主要功能是负责处理用户提交的信息。本篇文章系统地分析了电商平台的交易系统主要流程和功能,一起来看看。
交易系统,顾名思义负责完成用户交易过程的系统。交易的过程主要指通过各种交易的先决条件来判断应该如何确定最终交易的内容、事项、金额等信息,整合后提交订单系统完成订单生成的工作。
通俗地来说就是用户在确定购买内容后和电商平台签约并形成书面合同(也就是订单)的过程。
所以合约签订的计算、判断、处理工作都需要交易系统来完成,所以把交易系统可以称得上是电商平台的运行“CPU”了。
交易系统的主要功能就是负责处理用户提交的信息以及针对这些信息进行预处理计算,最后完成订单提交。从流程上来看交易系统负责的是生成订单以前的所有环节,而订单系统则负责订单生成后直到履约完成的过程。
在一些平台也会将订单系统包裹在交易系统之内,订单管理作为大交易系统的一个子模块。我们这里把两个系统作为平行的关系进行了拆分,拆分以后的系统对于职能边界上来说更为清晰些。我们可以用户下单的整个过程以订单提交为节点前面部分属于交易系统,而后面的部分属于订单系统。
这里特别要单独说一下购物车,购物车原则上属于前台系统,但由于他的特殊性,也会涉及到大量的促销计算和运费计算的逻辑。购物车的后台可以通过调用交易系统的服务来实现上述计算。如图:
就像买房买车一样在签订合同之前销售人员会针对你的情况和购买的商品做很多预先的准备工作,比如资质的评估、费用的评估、是否有优惠的力度等等。这些信息都会通过核对沟通最终达成一致后录入到合同当中。
在电商平台也是一样,我们在确定下单之前交易系统也会充当销售人员的角色根据用户填写信息进行核准判断、交易金额的明确、促销情况的明确等,确认通过后完成订单的下单提交。所以在用户端负责对接交易系统进行订单确认的页面一般也叫订单确认页或者结算页。
接下来我们来看看订单合同一般都需要对那些事情进行处理和预先确认。
合同双方分别是电商平台和用户,用户的身份信息就需要记录下来。这里面有用户的账户信息和收货人信息。合同中需要交易的商品信息也是合同的主要内容之一,包括商品的名称、编码(一般系统中以商品ID为准)、商品价格、商品购买数量等。合同中需要记录乙方(电商平台)对于甲方(用户)提供的服务条款和服务收费明细准则,按照电商的术语说就是运费规则、促销规则、配货规则等。根据上述对于订单合同的描述我们可以将事项分为几个部分:信息的录入核准、费用的计算核准、履约形式的确认。交易系统的主要功能包括几项:
用户信息记录商品金额计算促销优惠计算运费计算配送逻辑支付方式判断逻辑一、用户信息记录
记录用户信息如名称、收货人地址(姓名、联系方式、地址)、可收货时间、收货方式、支付方式、发票等。信息记录看起来是比较简单的功能,但这些信息与后面一些计算逻辑是有密切相关的。举个例子,收货人地址电商平台目前业内通用的都是五级地址,即国家、省、市、县(区)、镇(街道)、详细地址。
通过这五级地址可以计算出仓库配货的情况,是否有移仓等信息。而用户账号的信息可以判断是否享受VIP价格等优惠。
二、促销优惠计算
在计算商品金额之前,我们需要优先把促销优惠的金额计算出来。促销优惠根据促销载体来看会分为商品促销和集合促销两种情况。
商品促销指的是将优惠的金额直接在商品的价格上做减免或打折,那么当前商品的销售价格应该为促销的价格或者折后的促销价格。
而集合促销指的是多个商品捆绑进行优惠,比如满减、满折等。在计算这种促销时候需要根据促销的优惠规则将优惠的金额按照商品价格占比摊到每个商品上。
假定本次购买有N件商品参与优惠,分摊的逻辑为:
前N-1件商品优惠分摊逻辑:平摊在商品上的订单优惠补贴=单品优惠价*(订单优惠总金额 /(参与订单优惠的商品对应的单品优惠价之和))。剩余1件商品优惠分摊逻辑:订单优惠金额 – 平摊在(N-1)件商品上的优惠金额。优惠券作为一种特殊的促销形式也需要按照上述促销的思路进行计算。最终所有的优惠金额都会在商品和订单两个维度体现出来。
促销、优惠券在计算时还需要考虑两者之间的关系,即是互斥还是共享。在促销上我们将促销分为限时抢促销和其他促销,因为原则上限时抢属于单品范畴的最低价格。
而券种上除了一般意义上的红包优惠券外,我们将线下单独售卖的储值卡单独分开判断。加上单品的VIP价格我们共有五种优惠方式需要参与计算。
在判断是否是共享还是互斥的大体思路是尽量避免在同一个细分维度比如品类、单品上做两次以上促销减扣,同时核销方式不同的促销形式可以进行一定程度的叠加。
这样来看我们互斥和共享的情况如下:
当然在O2O的场景下单品如果已经执行了特价则订单不能再进行优惠券的使用,这也是为了避免有同一方承担双重补贴的问题。
三、商品金额计算
商品金额计算是指计算当前订单需要消费的金额情况,这部分的明细内容同订单系统是一样的。订单的最终消费金额 =Sum(商品售卖价格) – 促销优惠金额 – 优惠券优惠金额– 储值卡优惠金额 – 其他抵扣 + 运费 + 保险费用。
其中运费的判断来自于是否满足运费减免条件,一般平台的减免掉件都是金额门槛满足即可减免运费。其他抵扣指的是可能出现的虚拟货币的抵扣,比如积分抵扣等。
商品金额计算时候要做最小容错校验,订单的最终金额不能出现负数。当订单金额小于等于0时考虑核销的原因订单金额一般记录为0.01。有可能出现的场景为多个优惠减免导致,则落订单时由于已经减免到最小值所有将所有优惠减免项按照优先级判断使用哪个。
四、运费计算
运费是指使用配送服务后需要用户成单的运输费用。现在大多数的电商平台或者店铺都会通过满足一定订单金额减免运费,但运费依然是订单金额的一个有效组成部分。
运费金额主要是根据配送区域和配送方式来计算的,所以运费的计算依赖于收货地址的确定。同时运费的计算维度一般是按包裹单进行计算的(关于包裹单的概念后面配送逻辑会讲解)。这几个维度都会决定运费金额的差异。
运费金额一般是通过运费模板来进行设置的,设置的时候就会从这些维度来进行细分,包括但不限于按照收货地、发送方式、商品件数、金额、是否分合包裹、发出仓、顾客身份等。此外配送方式的多种多样决定了运费也会不同,平台一般会配置多套运费模板来设定对应运送方式下的运费规则用以计算使用。配送方式包括:
普通快递送货上门平邮特快专递(EMS)自提3小时递(8-17点之间下单且完成支付的订单)慢递优惠顺丰快递转送(如京东配送等)……五、支付方式判断逻辑
在支付方式的选取上也需要进行一系列的校验和判断处理,一般来说电商平台的支付方式包括以下几种:第三方在线支付、银行卡、余额、白条、储值卡、优惠券、积分抵扣、COD。
如果选择COD需要根据收货地址判断是否支持,而储值卡或者优惠券在单个订单上只能使用一张。多种支付方式则需要在生成订单时将金额对应到品上以便订单可以进行后续的操作。
六、配送逻辑
配送逻辑包括配货逻辑和预计送达时间计算,这两块逻辑是紧密关联的。根据配货时远近、商品在库库存是否充足、是否需要移仓调拨来满足订单等信息,最终预估出预计送达时间。所以送达时间计算的前提是配货逻辑。
在讲解配送逻辑前我们先理解下配送的维度是基于什么维度进行作业的。一般来说我们通常讲配送订单都理解为按照订单维度进行作业,但实际上订单也有几层关系:交易单、订单、包裹单。
交易单是指顾客一次提交订单中的所有商品集合,由于电商平台下单形式是加入购物车后二次选择进行提交,所以单次提交的商品中可能包括不同商家或者店铺的商品。有一些平台级别的集合促销行为也是基于这个维度进行计算金额的。
交易单不作为配送的标准订单,系统会按照商家加配送方的维度将交易单拆分成若干的订单,订单的判断依赖于几个维度:收货人信息、配送方式、支付方式、发票。这个维度的订单是属于用户的,但实际配送的时候还会根据实际情况进行合拆单。
合拆单是按照配货逻辑的不同来判断是否可以一次进行配送即打包成一个包裹,所以这个维度的订单也叫包裹单。这个订单是真正意义上可以追踪的用户订单,在这个维度用户可以进行售后、评价等行为的处理。
理论上商家的配送方式和发货仓都是统一的,所以订单和包裹单一般情况数量会是相等,但如果出现同一笔订单有不同的发货方式或发货仓则就会出现一笔订单多个包裹单的情况。我们讲的配货逻辑是针对于最终的包裹单来说的。
配货逻辑定义是根据顾客购买地、购买商品品种和库存计算包裹发出仓和发送方式的逻辑。不同的结果会影响到预计送达时间的变化。配货逻辑的计算基准是基于收货人信息五级地址中的第四级也就是我们通常说的行政区。
如果平台在同一个城市有多个仓则会按区域划分不同的配送方,但如果同一个城市只有一个仓则可以按照三级城市来进行判断。一个仓库可以对应多个区域或者城市进行配送的设置。仓库我们按照收货地址的远近分为本地仓(或者本区域仓)或者外地仓。
如果本地仓无法完成全单配送,则需要通过移仓逻辑完成调动或者判断是否通过外地仓进行配送。在仓配模式上有几种情况:
子母仓指在全国范围内指定部分母仓来覆盖几个区域,每个区域有子仓。配货时优先查看子仓是否全单满足,如果不满足则从母仓调拨。如果母仓全单满足,则直接从母仓发货不做调拨。
子母仓的结构要确保母仓商品品类丰富充足,母仓即可以当做子仓的供应方又可以作为子仓的补足快速发货减少移仓时间和成本。子母仓的结构在时下比较流行的新零售领域被称为大仓和前置仓的概念,逻辑上也是类似。
网状仓指每个母仓都覆盖多个区域,可以为不同区域的子仓进行调拨,满足子仓的订单出库。网状母仓之间覆盖会有一定的区域重合,配送时选择哪个母仓调拨优先考虑物流成本和时效。中央仓直发,指
在建立一个全品类的中央仓,中央仓建立在物流较为便利的城市中。
通过中央仓直发商品来解决兜底无法配送的问题。在配置仓库时无论是母仓还是子仓原则上还是遵从就近原则,尽可能减少运输成本和移仓次数。
确定配货逻辑后就可以根据配送情况估算配送时效即预计送达时间了。预计送达时间的处理是根据顾客的收货地址、下单时间、发送方式、送货时间、发货仓库、支付方式、截单时间计算预计送达时间。按照上述发货的方式分为直发订单时间预估和移仓转发订单时间预估。
直发订单:预计送达时间 = 生产时间 + 最长送货时间移仓订单:预计送达时间 = 移仓时间 + 直发订单发送时间交易系统作为购买流程的中枢系统之一,承担着所有订单的计算判断。很多相关业务系统都可以通过调用交易系统的服务来实现交易环节的功能。上述描述的都是交易系统的核心功能,也是交易系统对外提供的服务能力。
七、总结
交易系统和订单系统作为电商平台的运行枢纽,负责搭建承前启后的工作。用户端大量的处理计算逻辑需要通过交易系统进行处理操作。搭建好交易体系是一个电商平台稳定运行的开端。
#专栏作家#
高晖,微信号公众号:产品老高,人人都是产品经理专栏作家。10余年IT经验,互联网老兵。多年电商公司经历,曾参与过B2B/B2C/O2O等多个方向的电商项目,熟悉电商全流程产品线情况。
本文原创发布于人人都是产品经理。未经许可,禁止转载。
题图来自 Unsplash,基于CC0协议
电商背后的交易系统是如何设计的?
交易这个行为已经有了多年历史,随着移动互联网等技术的发展,在线交易也变得愈发普遍。而在在线交易背后隐藏着的,是交易系统。怎么设计好交易系统呢?本文尝试从货币交易这一点出发,对电商背后的交易系统设计做了解读,一起来看看吧。
前言
交易,是一个从古老社会体系就开始产生的行为,从原始的物物交换到货币等价物,再到如今互联网的发展,人们已经开始习惯了在线交易,在互联网发展的黄金时代,人们的交易场所、载体或形式都发生了前所未有的变化。电子支付方式给生活带来的便利,面对这些错综复杂的交易支付行为,背后实际上是一套复杂的支付结算系统在支撑着。
在移动互联网发展的近 10 年以来,人们已经非常熟悉在线的交易了,在中国有各式各样的 APP,都能够实现线上下单、线下消费。对于消费者而言,发起交易到完成交易的过程是非常简单的,而这背后,却有一套不为人知的复杂的交易系统。
本文将从货币的交易开始讲起,说明电商背后的交易系统是如何设计的。
一、货币的产生和发展
人类社会之所以会诞生货币,是因为交易的产生。在一个简单的社会体系中,一些基本生存物质的存在,让人们产生了交换的需求,因此就产生了交易。
在远古社会,物质还不是特别丰富的体系中,人们完全可以通过物物交换的方式实现交易。但是当社会中存在的物品变得越来越多时,物物交换的体系的平衡就会被破坏。
图 1 交易的产生
物物交换的生态之所以会被破坏,交易的本质要求价值的平衡。交换商品日益增多,范围也日益扩大,在物物交换的系统中,每个物品同另一个物品的如何进行价值对等,这个系统显然超过了后来的交易需求。
那么如何使交易变得更加顺畅呢?这就诞生了一般等价物,即货币。
图 2 越来越复杂的物物交换网络
有了货币以后,交易系统中的所有物品都需要通过一般等价物进行价值的评估。
图 3 一般等价物
接下来的问题是把什么作为一般等价物呢?它应该具备以下各种,普遍的接受性,即大家都认可它的价值;耐久性,即不会特别容易损坏;价值稳定性,即不会出现价值的波动等等。事实上,这也是一个物品能被作为货币的必要特征。
最初充当一般等价物的商品是不固定的,它只在狭小的范围内暂时地交替地由这种或那种商品承担,当一般等价物逐渐固定在特定种类的商品上时,它就定型化为货币。货币的产生也是伴随生产力和商品经济的发展不断变化的,在人类社会发展的历史上,大致可以分为实物货币、金属货币和纸质货币,一直到现如今的无现金社会。
图 4 货币的发展形态
1)实物货币
在中国历史上,龟壳、海贝、蚌珠、皮革、齿角、米粟、布帛、农具等都曾作为实物货币被使用过。使用这些物品进行交换的缺点是价值不稳定,而且不能够被大众普遍接受,甚至不耐久。
2)金属货币
冶金技术的发展,使得金属货币取代实物货币成为可能,与此同时,金属货币还具备普遍接受性、价值稳定性、统一性、可分性、耐久性的特点。但是金属货币在流通中会磨损减重,就会形成劣币驱逐良币的现象,此外金属货币如果价格不稳定,就会阻碍社会资金的流通。
3)纸币
纸币是国家发行和强制流通的价值符号。纸币产生于货币的流通手段职能,货币在流通中充当商品交换的媒介。中国是世界上最早使用纸币的国家。公元11世纪,北宋的交子,元、明、清发行的宝钞,均是典型的纸币。
货币之所以要变得越来越通用,也与世界商业发展的需要有巨大的关系。我们可以从货币的发展发现以下规律:
1)交易的产生取决于两个条件
社会生产力发展产生剩余。生产的产品在满足生产者自身需要后有了一些剩余后,形成了交易的基础。
社会分工协作的产生。每个人的角色不同,每个人生产和需要的产品多样化,而一个人无法生产自身所需要的所有产品,形成了交易的需求。
2)新技术的使用和市场需要,让货币形态产生变化。 从冶金技术到造纸技术,一直到互联网技术的发展,现金的形态都发生了巨大的变化。
3)在商业发展过程中,货币的形态是朝着越来越轻便的方向发展的 ,直到变为无形,而货币的形态在一定程度上加速了交易的进行。
二、支付交易模式的演变
货币作为一般等价物,使得社会中的支付变得可参考,而支付通道同样也会遇到同样的问题。在一个开放的市场中,对于交易系统来说就会遇到”资金流“和”信息流“处理这两个问题。
以一个常见的场景为例:
一个人在城市 A 的工商银行存了 100 元,来到城市 B 后在建设银行取了 100元,这个过程工商银行和建设银行是如何记账的?
图 5 银行之间的处理跨行交易
罗斯柴尔德家族(Rothschild Family)是欧洲乃至世界久负盛名的金融家族。19 世纪初,老罗斯柴尔德打通不同银行间银票的通兑,银行间清算就一直延续到现在。老罗斯柴尔德与银庄的掌柜商定,后续客户可以使用通用的银票换取金币,银庄之间根据银票再次交易,从这个时候开始,也标志着现代银行的通存通兑业务就开始了。
银行之间的通兑业务同物物交换的模式一样,同样会遇到一个复杂网络的问题,如下图所示,当所有银行都可以进行相互兑换时,系统建设的成本显然会比收益高许多。
图 6 多银行的跨行交易
1984年中国人民银行专门行使中央银行职能之后,我们国家确立了法定存款准备金制度。央行的备付金系统正式确立,之后所有金融机构都在央行开立清算账户,由央行为商业银行统一清算。于是银行之间的交易系统就变成下方的模式:
图 7 央行统一清算模式
这个模式的好处是很明显的,规范了银行之间的交易模式,同时每一家商业银行只需要完成一次系统对接。(当然这个系统的建设和复杂程度,远非三言两语就可带过,只是这个模式可以被认为一种通用的模型。)我们可以在另外一篇文章中解构一下中国的支付结算体系。
三、“清分-清算-结算”三大流程
不同的财务结算系统,其对于系统命名可能稍有不同,但从大面上来看,核心的订单系统可以分为两个阶段处理。
第一阶段是订单的生成,包括订单的生成和计算逻辑,主要为用户提供下单能力、为商家提供接单能力。
第二阶段是订单的清算。用户和商家一笔订单的完成,并不意味着订单真正完成这笔订单实际进入第二阶段,对订单的分账处理,根据结算模式等进行计算,生成分账流水,支付通道则根据结算结果进行资金理。
完成结算后,账户系统就需要根据分账流水,完成相应的记账功能。当然对于大型集团公司,还会有财务 EBS汇总计算企业资金,则需要依据财务的要求进行资金的汇总记录,本篇不赘述。
图 8 订单处理流程简图
作为消费者,在线交易已经变得再熟悉不过了,C 端产品经理会想方设法将用户的交易简化再简化,以致于从 C端感知层面,消费者的感知就是从下单到支付环节,没有特别复杂的操作,但当我们回到电商系统背后的结算时,那就不是如此简单了。
以一个典型的电商平台为例,这个平台聚集了非常多的商户,这意味着电商平台同样需要建设一套独有的清结算系统,从而完成与商家的资金清算工作。为了能理清这一过程,我们首先介绍一些专有名词:
清分:可以理解为系统的记账,系统需要将每一笔订单记录下来,即为“清分”。清算:可以理解为算账,如两个账户之间有多条记录来往,最后汇总可以发现两个账户正向或逆向支付,完成账户的“清算”。结算:可以理解为转账,根据清算的结果,完成账户加币和减币动作。下面是一幅超级简化版的订单处理流程图,可以大致理清订单从生成到结算整体的处理流程,由于业务开展的复杂情况,系统中还会有很多特殊情况处理等。
图 9 订单-计费-结算系统处理流程
在整体的交易系统中,可以分为订单系统、计费系统、结算系统,其在交易环节的处理如下:
1)订单系统
订单系统将记录每一笔交易的状态以及订单详细信息,订单详细信息除了订单 ID,从消费者的角度,应该实付金额信息,附加活动优惠券信息,与此同时要附带平台与商户清结算基本信息,用于分账,即平台的抽取费用。
2)计费系统
计费系统的工作就是定时拉取订单,并根据计费公式,汇总金额的拆分。这个系统的难度在于需要处理复杂业务下的公式,如退单的处理,活动费用的处理、费率的处理(如计费方式变更是体现在订单上的,则需要根据订单生成的时间计算费率)计费系统会约定按照一定周期进行汇总。
显然这个周期的时间越短,对于系统计算消耗也越大,并且由于订单存在一定的生命周期,对于后续费用的回退也是一个重要的逻辑(如订单已完成结算,但后续订单取消)。
3)结算系统
结算系统是最后对账户完成转账结果,需要处理信息流和资金流。信息流方面,需要将平台与商家的账户资金计算清楚,资金流方面,则需要依赖支付通道,完成资金的转账。(资金流就需要运用到中国的支付结算体系)
四、总结
通过对货币演变、银行支付系统设计,我们可以发现,尽管每时每刻都在发生的交易行为十分复杂,但“清分-清算-结算”的过程,几乎可以套用在任何的交易系统中,我们可以根据这个处理原则,去设计产品系统。
本文并没有详细赘述一个完整的结算系统是如何设计的,因为不同行业的交易模式不同,其清结算系统的处理就会千差万别,对于产品经理来说,重要的是能够理清楚整体的处理方法,同时在整理交易系统设计的过程中,也获得一些启发:
社会生产力的极大发展是商业交易的基础,一项变革性的技术将会改变人们的生产交易模式。 互联网技术改变的是信息记录、表达和计算的方式,提升了信息的传播效率,从而提高了商业发展的速度。 从中国的支付结算体系设计可看见一个大型交易支付系统的影子,这些设计并非自然而来,都能看到自然的业务,是很好的参考样例。本文也特别参考了文章:http://www.woshipm.com/pd/385099.html非常值得大家阅读。
本文由 @小T 原创发布于人人都是产品经理,未经许可,禁止转载
题图来自 Unsplash,基于CC0协议。
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。
相关问答
电子商务 的 交易模式 有哪些?主要可以分为以下六种类型:1、企业与消费者之间的电子商务(BusinesstoConsumer,即B2C)。2、企业与企业之间的电子商务(BusinesstoBusiness,即B2B)....
什么是 电子商务交易模式 它有哪几种类型..._电子商务_帮考网电子商务交易模式是指在互联网上进行商业交易的方式和方式。主要有以下几种类型:1.B2B模式(企业对企业):指企业之间通过互联网进行交易的模式,如供...
电子商务 的 交易模式 有哪几种..._电子商务_帮考网电子商务的交易模式按照交易对象可分为大致6个模式:1、C2C(个人对个人的交易模式)这种交易模式是比较常见的交易模式,淘宝就是这种模式的交易。2...
甲公司通过阿里巴巴将产品出售给乙公司这属于哪一种 电子商务交易模式 ?甲公司通过阿里巴巴平台将产品出售给乙公司属于B2B(企业对企业)电子商务交易模式。在B2B模式中,交易双方都是企业或组织,通常涉及大宗商品或服务交易。阿里巴...
电商的七种 模式 ?1、B2C企业与消费者之间的电子商务(BusinesstoCustomer,即B2C)。这是消费者利用因特网直接参与经济活动的形式,类同于商业电子化的零售商务。随着因特网的...
互联网支付与 电子商务 八种运作 模式 ?八、工厂直接到消费者F2C指的是Factorytocustomer,即从厂商到消费者的电子商务模式。有时写作FtoC,但为了简便干脆用其谐音F2C(2即to)。交易双方网上先...
B2B、B2C、C2C分别是什么含义,又有什么不同?_作业帮[回答]B2B指的是BusinesstoBusiness,即商家(泛指企业)对商家的电子商务B2C(BusinessToCustomer)是电子商务按交易对象分类中的一种,即表示商业机构对...
什么是b2b 交易模式 ? - 傻不拉叽咩咩叫oo 的回答 - 懂得B2B,B2C和C2C是电子商务模式基本形式:B2B(businesstobusiness):是企业与企业之间通过互联网进行产品、服务及信息的交换。目前基于互联网的B2B的发...
电子商务交易模式 有哪几种分类..._电子商务_帮考网按交易对象分类的商业模式:1、B2B模式企业对企业的电子商务模式特点:1.交易次数少、交易金额大;2.交易对象广泛;3.交易操作规范分类:1.水平型B2B:...
电子商务模式 的概念是什么?电子商务模式电子商务模式可以分为以下三种类型:1.企业与消费者之间的电子商务(BusinesstoCustomer,即B2C)。这是消费者利用因特网直接参与经济活动的形...