12博官网
12博官网 关于我们 业务领域 新闻中心 在线留言 联系我们
 

联系我们

网址: 12博官网

地址: 东莞市高埗镇振兴北路华宏西街1号

 

解构电商O2O:订单系统平台的“生命中轴线”




作者:12博官网     发布时间:2021-03-01 15:30

  订单系统作为电商系统的“中轴线”贯穿了整个电商系统的全部流程。所有的核心系统都是围绕订单进行构建的。订单的发展也是随着电商、O2O行业发展逐渐演变进化的,今天跟大家来解构下这个平台的“生命中轴线”。

  设计订单系统时包含几个大的方向需要考虑,这些内容决定了订单系统的稳定性和可持续性。

  订单字段包含了订单中需要记录的信息,他的作用主要用于沟通其他系统,为下游系统提供信息依据。

  订单号作为订单识别的标识,往往由一串数字组成,根据订单的增加进行自增,也可以在设计订单号的时候考虑订单加密设置(否则别人通过订单编号就能计算出你们家的销售量)。订单号后续用作订单唯一标示用于对接WMS和TMS时的订单识别。

  这里指购买人的相关信息,主要包括姓名、地址、手机号。O2O还会多一种情况就是自提点,这样地址则会变为自提点的地址。地址信息在后续会作用在WMS和TMS上用于区分区域和配送安排。

  这里指购买商品的基本信息和库存,金额由于比较特殊所以我把金额独立在商品信息以外说,不过逻辑上其实都属于商品信息范畴。商品信息主要影响库存更新和WMS生产。

  订单产生的商品信息,这里面除了要记录最终的金额,过程金额也需要记录。比如商品分摊的优惠金额、支付金额,应付金额等。在后续的订单结算、退换货、财务等环节都需要使用。

  订单流程是指整个订单从产生到完成整个流转过程。他包括正向流程和逆向流程。

  订单正常生产到配送的过程。这里面列举的模块是一般电商通用的功能,部分可能根据实际业务场景有所增加调整。020场景下出库、合包裹、发票准备等工作是由商家方进行,部分工作是属于线下场景。

  订单生成环节存在超时未支付自动取消的过程。库存的占用会在订单取消后释放。

  如果选择COD(货到付款)则支付环节相应转移到订单配送之后,而过程中所有与款项相关的逻辑变为只操作金额数字,不对结算和账户进行打退款操作。

  订单系统审核主要用户对恶意用户或者刷单情况进行处理。系统可根据白名单、黑名单、消费频次、促销品购买量当方面做风控规则。如果后续会进入到人工审核,则规则上可以适当从宽。当触发规则需要进行订单退订的行为。此处设计时要小心对用户体验的损害,往往前台文案上说明当前节点是审核状态或者是等待接单。

  在O2O领域有催单的概念,而传统电商则是通过关联第三方物流的物流信息进行跟踪。催单触发考虑到实际场景,一般会设定一定的时间间隔,间隔时间内只触发一次催单的请求。

  预售等货和移仓需要做成SOA服务,以便在交易页面计算预计时间和预计到货时间。移仓处理依赖仓库的情况,也会涉及到后续拆分和合并包裹的逻辑。

  订单生产时先要判断报缺情况,如果出现报缺问题则要考虑整单报缺、部分报缺、换货或者换转退的情况(库存,仓促调拨和退款)。报缺情况分为系统报缺和实物报缺,这是承接但相对独立的两个环节。

  电商系统要考虑7天无理由退货的情景,即订单状态完成后申请退货。此时主要涉及的是金额上的计算以及一些财务程序(如发票等)问题的处理。

  逆向流程则指订单发生取消、退货等情况时引发的订单流程过程。在设计逆向流程时建议和正向独立分开,通过订单号等信息进行关联,避免耦合过多逻辑无法延展设计。

  关于状态机的一个极度确切的描述是它是一个有向图形,由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而“运行”。每个事件都在属于“当前” 节点的转移函数的控制范围内,其中函数的范围是节点的一个子集。函数返回“下一个”(也许是同一个)节点。这些节点中至少有一个必须是终态。当到达终态, 状态机停止。

  由上述定义可以看到,状态机的概念是用来表示按照一定的方向通过触发不同节点产生数据流转的过程。在订单中通过情景触发订单状态的变化来表达订单流转的过程就是订单状态机。

  电商和O2O的主体流程是相同的,不同的在于物流配送环节电商较O2O更为复杂,此处只表明了主要的订单状态机,仓储物流内的物流单流转不在此范围内。状态机原则上使用结果值而不使用过程值,比如使用支付成功作为节点而不使用支付中作为节点。

  订单状态机要融合订单流程来设计触发节点,订单流程的逻辑点要多于状态机,一般在当前流程环节完成后最后更新状态机。

  当状态机发生变化时,需要将对应的变化情况告知给相关人员以便了解当前订单的情况。这就是订单推送的作用。

  电商平台的搭建变迁也是订单逐步稳固发展的过程。我们来看下订单的发展过程,结算环节由于是一个比较大的话题,这里面不展开说明了。

  平台搭建的第一阶段要实现基本的订单流转,支持一些营销活动的购买(这里依赖附属系统的搭建情况,这里默认认为具备基本功能)。

  这个阶段搭建时核心是解决订单的基本流转,所以原则上一些功能可以后续再逐步完善。比如催单、拆单、系统审核等。

  另外在搭建订单结构的时候如果条件允许,在设计之初可以就考虑用子母单的形式,即两层结构

  随着平台的发展,越来越多的接入方需要订单的支持,POP平台的商家接入、第三方仓配的接入,更多快递合作伙伴的接入等等。订单的功能进入第二阶段的扩充。

  拆单、合单逻辑主要是用于解决不同系统之间的耦合问题(如配送单主要运用于TMS,支付单提交给支付系统)。他们都通过交易订单信息项重新组合后添加部分自有系统的信息项而组成,通过订单编号来做关联。交易单和支付单是1:1,交易单和物流单也叫配送单则可能是N:N的关系。

  移仓的逻辑和预计送达时间要依赖仓配结构和运输能力的测算,当然也可以通过拆包裹分多次发的方式减少移仓的次数,不过要考虑要前台用户体验和免责说明。

  当自营品和商家品或者多个商家品的时候,优惠券的分摊计算要注意。要区分商家券和全场通用券可分摊的比例和优先级。

  当平台发展到足够大的规模,提效、稳定变成一个重要的话题。这里面介绍两种情况:

  场景:无实物库存,但是顾客可以下单预定。当实物到货后,按照正常订单进行配送。

  预售单需要设置预售库存数和预计到货时间。用户下单后不会直接进入生产,将预售订单放入单独的订单库(或增加预售品标识)。

  预售商品到货后要判断涉及到货库存和预售订单是否相等。当实际库存小雨预售订单则按下单时间释放等量订单进行生产。系统需要回告库存系统重新计算预售占用库存量。

  这里面需要说明的是JIT场景可以延伸为不入库直接由供应商提供物流配送后续工作,平台提供订单、发票等服务。这是流程会变为

  订单是电商、020的生命中轴线,他主导、串联了整个全部链路的系统。所有的系统都是围绕订单进行改建和扩张的。订单系统的强壮决定了平台的稳定性。

  您好,订单生成和订单生产有什么区别吗?订单生成我的理解是用户购买商品的过程中,提交商品至结算,此时系统根据商品所属的店铺来生成订单。不知道这样理解是否有误,那订单生产呢?

  如果我没理解错的话:这里说的订单生产,是完成订单内容的生产;订单生成是系统生成具体的订单

  不好意思,一直在忙没注意看。我简单解释下。订单生成应该比较容易理解,就是交易系统提交给订单系统相关交易信息,订单系统生成一条或多条订单数据。这里面会记录订单的基本信息包括商品、金额、订单号等。订单系统拿到后会为了生产做一系列准备,比如拆单、调拨、分配仓库等。然后按照仓库提交给WMS。WMS会收到订单信息进行生产。当然实际业务上可能会更复杂,但基本逻辑是这样的。

  我看系统关系图内没有交易系统相关的,向请教下,交易系统和各个系统之间的关系是什么,以及交易系统内都有哪些功能

  交易系统的可以去我的公众号:产品老高上看下。那里面有一篇交易系统的文章,大概讲解了交易系统的基本架构和情况

  听到很多言论说在中国程序员是吃青春饭的,那么产品经理呢,也吃青春饭吗?

  人人都是产品经理(是以产品经理、运营为核心的学习、交流、分享平台,集媒体、培训、社群为一体,全方位服务产品人和运营人,成立9年举办在线+期,线+场,产品经理大会、运营大会20+场,覆盖北上广深杭成都等15个城市,在行业有较高的影响力和知名度。平台聚集了众多BAT美团京东滴滴360小米网易等知名互联网公司产品总监和运营总监,他们在这里与你一起成长。

12博官网



  • 上一篇:90后本科生为啥要当物流装卸工 数学建模、交叉
  • 下一篇:从0到1学习订单管理体系
  •  
    24小时咨询热线:
    12博官网 关于我们 业务领域 新闻中心 在线留言 联系我们 网站地图
     
     
    手机:  地址:东莞市高埗镇振兴北路华宏西街1号
    ©2018 东莞市天发物流公司 版权所有