订单管理系统OMS的流程

2 评论 3199 浏览 40 收藏 14 分钟

在订单管理系统中,履约系统是比较重要的一个环节。从销售平台下单到用户牵手,会经历10余个履约节点,涉及多个平台和系统。这篇文章,作者带着我们一起梳理一下。

一、OMS订单履约系统的定义

订单履约系统的职责就是将电商交易平台的订单,按照一定的规则按时按质按量的下发给最合适的仓储进行发货。

订单履约系统由多个子系统组成,包括拆分系统、分摊计算服务、转移系统、履约控制中心。

二、流程

一张实物类的订单从销售平台下单,到最终用户签收,会经历10余个履约节点,涉及销售平台、平台交互层、订单履约系统、中央库存系统、配送管理系统、仓配交互层、仓库和门店等。

1. 订单分仓

每一张实物订单,都需要先匹配到发货仓库,才能将订单下发到对应的仓库系统中进行发货,分仓过程由订单履约系统负责调度,中央库存系统负责提供分仓服务。

在一个完整的履约流程中,有两个环节需要分仓,但其触发时机和目的不同:

一是订单履约系统刚接到订单,需尽快预占库存时的预分仓;二是订单审核完成后,影响分仓结果的核心信息发生变更后的重新分仓,如订单收货地址变更,商品、数量变更等。

分仓规则可以基于最少包裹原则、距离最近原则、成本最优原则。

无论是预分仓,还是重新分仓,分仓成功后均需要预占库存,重新分仓后,如果分仓结果变了,需要释放预分仓环节在中央库存系统中的分配库存。

在分仓时,只有当中央库存系统中的实物库存满足订单需求的时候才能预分仓成功,预售类无实物库存的订单,不需要预分仓(无库存,只会分仓失败),待商品采购入库以后再进行分仓流转。

2. 订单拆分

如果一张订单需要在不同的时间、不同的仓库发出,就需要在订单履约系统中按照拆单规则将订单拆分为多张子订单,每张子订单单独进行流转。

订单拆单会出现在订单履约的多个环节中,可以是系统自动拆单,也可以是人工拆单,所以订单拆分功能应该设计为一个公共功能,供多个环节调用。

拆分可以根据发货商家、订单类型、商品属性(存储条件、配送条件、体积重量)、发货仓库、订单金额等多个规则中的一种或多种来组合完成。

一张订单可经过多次拆分为多张子订单,拆分以后,父订单作废,子订单继续完成履约并同步至销售平台展示给用户。由于拆单可能发生在不同的环节,拆分后的新订单延续原单的状态和流转日志。订单拆分处理逻辑如下。

① 基本信息(收货信息、订单基本信息等公共信息):将父订单中的信息复制到子订单中。

② 财务信息:订单应付总金额/已支付金额/发票金额/物流运费等于按照各子订单的商品总价比例进行分摊,最后一个订单金额为剩余未分配金额,一般单位为元,保留两位小数。

③ 商品信息:按照需要拆分的SKU或者商品数量进行拆分,保证所有子订单的SKU及数量之和与父订单中的SKU及数量一致。

④ 促销信息:针对整单的促销(如整单优惠、满减、平台优惠券、积分抵扣等),拆分时按照订单中SKU金额比例分摊;若是针对订单内某些SKU的促销,拆分时仅考虑参与促销的SKU进行金额分摊,其他SKU不参与促销分摊。

3. 订单审核

正常情况下,订单流转越快越好,尽量减少中间环节和人为干预,但在特殊情况下需要将订单暂停,由人工审核。常见规则如下。

① 订单触发了风控规则,被识别为恶意订单或异常订单,待人工核实。

② 用户有特殊需求备注,系统识别备注信息并暂停订单,待人工核实。

③ 订单金额过大,超过物流公司代收货款的收款限额,需要人为拆单。

④ 订单中的商品数量过多,一个包裹无法正常发出,需要人为拆单。

⑤ 购买商品的特殊性,如医药,必须由药师审核后方可发货。

4. 合并订单

将相同客户的多张订单合并为一张订单进行发货,有诸多好处,于客户而言,多张订单一起送货,只需要签收一次包裹;于企业而言,可以节省仓库的作业成本和物流配送成本。

合单方式可以设置为按频率合单(每××分钟合一波),或者按固定时间点合单。相关人员在进行订单履约系统设计时可以设置订单集中暂停等待,在此等待时间内进入订单履约系统的订单,若符合合并条件,可自动合并;超过等待时期进入系统的订单,可由客服人员手动合并,或者等到下一个合单时间点再进行合并。

订单合并条件包括但不限于同销售平台、同下单会员账号、同收货地址、同收货人、同手机号、同支付方式(在线支付/货到付款/到店支付)、同出库仓库、同订单类型(如普通订单、预售订单)、同开发票方式(都开发票,且抬头信息一样;或者都不开发票)、同配送方式(自提/配送)等。

订单合并以后,各原单作废,合并后生成一张新订单继续完成后续履约流程,不过在销售平台的用户侧,展示的仍然是用户下单时的原单。在对合单做订单发货、取消等操作后,将每一张子单同步给销售平台。合并订单的处理逻辑如下。

① 基本信息(下单人、收货人、渠道等信息):取任意一张子订单(因为订单基本信息都一样)。

② 财务及发票信息:订单应付总金额/已支付金额/发票金额/物流运费=各子订单金额相加。

③ 商品信息:将所有需要合并的子订单的SKU及数量进行汇总。

④ 促销信息:将所有子订单促销明细集中到合单中。

5. 分配物流

没有自营物流的企业,通常会与多家三方物流公司签约,在合单以后,需要匹配合适的物流公司,以及获取物流电子面单号。如果是自营配送,不需要分配物流,只需要获取电子面单号即可。分配物流由配送管理系统提供服务支撑,订单履约系统将合单后的订单信息(收件人信息、发货仓库信息、支付方式、商品类型等)传给配送管理系统,获取合适的物流公司和物流单号。

① 如果是自提订单,不需要获取物流公司和物流单号。

② 物流配送的订单,如果没有指定发货物流,则调用配送管理系统服务分配物流公司,然后基于传入的订单信息获取物流公司的物流单号。

③ 如果指定了发货物流,则不用再重新分配,直接获取物流单号即可。

6. 订单取消

在电商新零售中,订单取消场景主要有三类。

① 用户发起的订单取消。

② 客服人员代为取消。

③ 系统取消。

7. 订单拉回

在订单履约过程中,已经分仓的订单,常常因为仓库库存不足需要调整发货仓库、或者应客户要求修改订单信息等,便需要将订单状态拉回至分仓之前进行修改或者重新分仓,再重新审核下发。订单履约系统对订单拉回的处理逻辑如下。

① 如果订单已经下发到仓库或门店,调用仓储管理系统或门店管理系统接口将原订单取消,若已发货,就不允许拉回了。

② 订单履约系统基于原订单生成一张待审核的新订单,以便客服人员进行修改和调整,调整以后将新订单重新履约出库,原订单作废。

8. 订单暂停

订单暂停的场景有两种:系统暂停和人工暂停。系统暂停发生于订单合单前的等待期,以及需要人工审核的订单,或是还未到下发仓库的时间时由系统将订单暂停,人工暂停多由客服人员发起,因客户要求或是当问题订单需要处理时,临时将订单暂停。

暂停只是一个中间状态,不是订单的最终状态,仅打上一个临时暂停的标记,待暂停期过后,由系统或人工取消暂停,订单继续流转出库。取消暂停的逻辑为:若订单未下发仓库,直接取消暂停标记,订单继续流转,若订单已下发仓库,则通知WMS取消暂停。

9. 订单加急

如果希望订单优先出库,就需要进行订单加急处理。订单加急功能的设计思路为:为每张订单设置一个“出库优先级”属性,属性值为高/中/低。在订单履约系统和仓储管理系统处理订单履约时,在同等条件下,优先处理优先级高的订单。

10. 订单信息修改

在订单履约过程中,难免会遇到下单以后客户又要求修改收货地址、电话等需求,所以订单履约系统需要提供订单收货信息修改的功能供客户和客服人员使用。修改订单收货信息的逻辑如下。

① 若订单尚未下发到仓库或门店,只需要修改订单履约系统中的收货信息即可,若订单已下发到仓库或门店,需要先修改仓储管理系统和门店管理系统中的信息,再修改订单履约系统中的信息。

② 收件信息影响到分仓和物流分配,故修改地址以后,需要重新进行分仓和物流分配,已分仓订单要释放占用库存,已预约物流的订单需要取消后再重新预约一个新的物流单号。

③ 仅在订单未发货前支持修改订单信息,一旦发货或者订单取消了,就不能再进行修改了。

11. 订单全程跟踪

订单履约系统负责提供完整的履约轨迹,以便能让用户清晰地知道当前订单的进展情况,我们称之为全程跟踪,履约过程越详尽和透明,用户体验自然越好。从用户在销售平台下单开始,到最终签收,订单会分别经历销售平台下单、订单履约系统履约、仓库发货和包裹配送。要实现全程跟踪,则需要将相关系统中的关键节点信息的操作日志同步至订单履约系统,再由订单履约系统按照节点时间封装成轨迹信息展示到前台用户侧,如图所示。

12. 履约时效监控

订单履约系统是唯一能够监控订单履约全流程的系统,若想整体地了解履约流程,以便对无法按时履约的订单及时进行处理,一张基于履约全环节的监控报表是必不可少的。

本文由 @逸轩Ethan 原创发布于人人都是产品经理。未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 请教一下,如果是两个订单合并订单,那么物流的快递单号是一个快递单号还是不同的两个快递单号?

    来自河北 回复
    1. 一个,合单的目的之一就是减少用户的难度。减少签收、取件次数。

      来自浙江 回复