电商所有模块中,订单系统作为最为核心的模块,决定了整个流程能不能顺畅的执行,起着承上启下的作用。相信很多PM都不陌生,到了一家电商公司,总会觉得公司现有的流程有不少问题,因为问题来自四面八方,一下子摸不着到底是哪里出了问题,PM就跟补丁师傅一样,遇到一个补一个。其实很多日常开发和测试提得需求都是表面需求,而这些表面上呈现出的各种问题,都是源自于流程上的不完整或者流程上某个环节上的缺失导致的。订单系统作为一个承上启下的模块,流程上出了问题,它肯定脱不了干系。

订单系统分为用户端和商家端,今天我们从商家端简单分析一下订单系统该如何设计和完善,才能不断适应公司的业务发展,减少因为流程导致的不必要的返工和“补丁”。为什么说订单系统是承上启下的作用,上游是什么,下游又是什么?这里我们先把问题放在这,后面讲到再作解释。

订单系统

设计订单系统需要考虑几个模块,只有所有模块都考虑清晰了,才能保证订单系统的稳定性和可扩展性。

订单字段

其实呈现在界面上的订单信息,都是由各种订单字段组合而成。订单字段齐全从某个程度上代表着订单流程的完整。

订单字段包括几个部分,其中金额信息因为特殊性,独立出来讲,实质上金额信息属于商品信息。

商品信息:商品信息属于订单系统的上游端,所有订单都是从商品演进而来,从商品到订单,订单系统必须搜集相关的商品信息,包括店铺信息,商品id,商品规格,商品数量,商品价格。获取到的商品信息将在订单详情页内展示,形成订单信息后供仓库方便拣货,包装。

用户信息:用户信息包括购买用户的ID,收货人,收货地址,联系方式。有些平台的用户成长体系是基于用户对平台的活跃度来计算的,例如京东,它有会员等级及积分卡等类似的成长标识,此时获取到的用户信息除了普通的信息字段外,还需要获取该用户的等级,该次购买后所获得的积分,以及该用户所在等级能在该订单上扣除的优惠等信息,具体怎么操作取决于公司的业务方向。

金额信息:因为金额信息的特殊性,所以独立出来讲,理论上金额信息应归属商品信息。金额信息的特殊性在于其不止一种金额,其涉及到商品金额,优惠金额,支付金额。而优惠金额中涉及到的信息较复杂,像有自营和第三方入驻的电商平台,都会有商家优惠和跨店优惠,而这些优惠又分不同类型,例如现金扣减,消费券扣减,积分获取,礼品卡扣减,或者以上几种的组合使用。想要涉及好这一块内容,需要根据目前自己公司的业务情况,列出所支持的优惠类型,再枚举出各种组合下的优惠类型,才能保证流程的完整性。

时间信息:记录各个卡点下的时间,一是记录,二也是方便售后验证和客户分析。订单时间是根据订单状态改变而改变的,比如我们常见的用户,下单未付款:即展示订单创建时间,下单时间;待发货状态:展示订单创建时间,下单时间,支付时间;待收货状态:展示订单创建时间,下单时间,支付时间,发货时间;交易完成状态:展示订单创建时间,下单时间,下单时间,支付时间,发货时间,完成时间;待退款状态:展示退款订单创建时间,申请退款时间;交易关闭-用户取消:展示订单创建时间,下单时间,用户取消时间;交易关闭-仅退款:订单创建时间,下单时间,支付时间,退款申请时间,退款成功时间;交易关闭-退货退款(包含部分仅退款):订单创建时间,下单时间,支付时间,交易完成时间,退款申请时间,退款时间;时间信息看起来不重要,其实是订单系统一个重要的组成部分,原因大家可以思考一下。

订单信息:订单信息在订单系统最为核心,订单信息最重要的又是订单状态。很多公司都有订单状态机的说法,那到底什么是订单状态机,我个人的理解是在订单中,通过各种购物情景,触发订单状态,将订单的流转可视化,是订单状态机的一种具体呈现形式,而它实质就是在描述订单状态的转换。电商购物中,订单状态分别有以下几种:【待付款】【待发货】【待收货】【待评价】【交易完成】【用户取消】【仅退款】【退货退款】。而我们一般会将后三种统一放在订单售后独立呈现,去方便平时商家操作的便捷性。

ok,第一部分订单字段就先写到这,下一部分订单的流程分析,将会详细分析订单的正向流程与逆向流程,包括订单拆分单情况等,目前计划是每周一更,但是工作太忙,希望自己可以坚持完成,虽然码了不多字,但是大热天还在写文章,觉得有用的来个赞鼓励一下吧,感谢支持。

电商订单系统设计简析(一)相关推荐

  1. Java电商平台-电商订单系统全解析

    说明:Java电商平台-电商订单系统全解析主要讲解OMS的内容,设计,开发,架构等知识 今天分享将会分为以下三个环节来阐述: 1.订单系统的介绍 2.订单系统的解构 3.垂直电商订单系统设计思路 一. ...

  2. 电商“订单号”的思考

    1.三个真实的案例 案例1:最近面试的将近20位产品经理里面,我都会问一道问题:请您为我公司的订单系统设计一套订单号的生成规则.应聘者里面有一两年的职场新人,也有工作将近十年的老鸟,当然也不乏运营或者 ...

  3. 支付退款流程设计_电商订单系统,你该如何设计

    文章来自:https://baijiahao.baidu.com/s?id=1602959656926168475&wfr=spider&for=pc 作者:人人都是产品经理 点击加入 ...

  4. 支付退款流程设计_电商之下:电商订单系统,从0到1设计思路

    一个订单系统的设计并不简单,它需要一批又一批的人去维护.去优化,根据公司的业务情况做出改变与兼容.这篇文章主要与大家分析一下电商订单系统该如何设计. 在一个电商所有模块中,订单系统作为最为核心的模块, ...

  5. 基于TableStore的海量电商订单元数据管理

    一.背景 订单系统存在于各行各业,如电商订单.银行流水.运营商话费账单等,是一个非常广泛.通用的系统.对于这类系统,在过去十几年发展中已经形成了经典的做法.但是随着互联网的发展,以及各企业对数据的重视 ...

  6. 电商订单ElasticSearch同步解决方案--使用logstash

    电商订单ElasticSearch同步解决方案--使用logstash 参考文章: (1)电商订单ElasticSearch同步解决方案--使用logstash (2)https://www.cnbl ...

  7. 电商订单批量导入API接口功能

    与主流的第三方物流快递信息服务商合作完成API对接,可以使整个平台订单管理以及物流货单管理高度自动化,因为在发货订单量较多(上万单时),电商卖家根本无法依靠在人力在合作的物流系统中一个个录入来完成. ...

  8. 【阿里云流计算】- 电商订单和销量统计案例

    背景 随着新零售的概念慢慢崛起,互联网电商行业竞争越来越激烈!实时数据信息对于电商行业尤为重要,那如何从实时不断的数据流中获取我们想要的信息呢?以下案例是 流计算的合作伙伴袋鼠云用阿里云流计算来解决电 ...

  9. 商家必备的电商订单打单软件,会用这个工具,随时随地完成快递打单工作

    特大好消息,家必备的电商订单打单软件升级啦!「快递管家小程序」支持连接多蓝牙打印机啦 !! 目前快递100快递管家电商订单打单软件,已支持连接的蓝牙打印机设备有:快递100云打印机.汉印A350.汉印 ...

最新文章

  1. 经典SQL语句大全(提升篇)
  2. Beta阶段——第4篇 Scrum 冲刺博客
  3. (21)xilinx PCIE 开发方法(学无止境)
  4. lisp如何调用linux头文件,Lisp之 程序的交互执行和非交互执行
  5. vue指令02---自动获取焦点(全局自定义指令Vue.directive())和全局过滤器Vue.filter() 的学习...
  6. 支付宝回应 AI 换脸风险;新 iPhone 或将于 13 号接受预订;Linux Lite 4.6 发布 | 极客头条...
  7. thymeleaf菜鸟教程_Spring MVC应用程序中的Thymeleaf模板布局,无扩展
  8. 手机群控还有这种事半功倍的操作?快来看强大的Rest API脚本功能
  9. 电脑重装系统苹果电脑开不了机的原因分析
  10. 对抗样本生成算法之DeepFool算法
  11. 大一学计算机需要准备做东西,我是浙江大学大一的学生,以后打算学习计算机专业,想去卡耐基梅隆大学或MIT读研,不知道需要做哪些准备?...
  12. 【ChatGPT】GPT-4
  13. win10+AV1+VS2017 编译器内部错误
  14. crontab使用实例
  15. mp4,m3u8,rtsp,rtmp,flv,直播流在线测试地址
  16. 永远等你先挂电话[ZZ]
  17. 统计学基础知识梳理(三)
  18. @Transactional注解用法
  19. Nexus Repository Manager 3 远程命令执行漏洞(CVE-2020-10204),CVE-2020-11444 越权漏洞
  20. Oracle OCM之路

热门文章

  1. NURBS Curves
  2. 那些年微信开发过的鸡肋功能,及其带给我们的思考
  3. 【时空序列预测第四篇】PredRNN++: Towards A Resolution of the Deep-in-Time Dilemma in Spatiotemporal Predictive
  4. CentOS 安装Oracle 11g R2
  5. OCP 11G 051题库解析汇总链接
  6. Qt 报错1:cannot find -lGL
  7. ForkJoinPool线程池
  8. 用计算机处理表格说课稿,信息技术《电子表格的特点及应用》的说课稿
  9. python getcwd_Python os.getcwd()函数的实际应用方案介绍
  10. python3.6library 学习 1.introduction,2.built-infunction