【产品设计】电商后台系统设计--订单管理

news2024/11/16 3:33:13

电商后台产品,涉及众多模块,而以商品、订单、库存,为核心模块,模块之间存在大量交互。订单较为重要,它记录了所有的交易数据

对电商公司来讲,最核心最难做的有三部分:商品、订单、库存。商品与店铺、营销、评价等相关;订单与会员、营销、支付、库存、物流等相关;库存与订单、采购、WMS(仓储管理系统)、营销等相关。

一.订单流程

订单流程是指C端用户的操作与后台发生交互的运转流程(含正向流程和逆向流程),如下图:
在这里插入图片描述
当然,在实际业务中,订单流程远没这么简单。比如在用户结算付款/取消订单/退款/退货流程中,可能还会涉及到满减、优惠券、积分抵扣等情况。又或者说用户下单后,电商平台与WMS的数据交互,都是整个订单流程中很关键的节点。

二.订单状态

从订单流程图可知,正向流程可分为待付款、待发货、待发货和已收货/已完成/交易成功、四个阶段,再加上交易关闭(逆向流程产生)。下订单流程涉及到的模块主要有支付和库存,对于用户端来讲订单在各个阶段所涉及到的主要操作如下图,分为商品行与订单行的操作(是因为订单的逆向流程中申请退款等售后操作是商品维度的操作)对于商家后台来讲,订单各个阶段端主要操作有发货、审核、退款、修改地址等(可参考:三.订单列表)。
在这里插入图片描述
这里特别说明一下交易成功,是指在收货后N天后,此时除去售后问题外,渠道侧会涉及到平台和支付渠道结算的问题,货款需要从支付渠道流入平台账户;商户侧会涉及到平台需要生成待结算清单问题,明细该笔订单商户结算款是多少。

三.订单列表

订单列表页由搜索区、列表区和操作区组成。
1.搜索区域主要包括:订单编号、订单状态、下单时间、买家姓名、支付渠道、订单等,为了提高工作效率,需要将常用的重要的条件作为筛选项,同时将可以收起次要筛选项,以便于快速查找,一屏展示更多订单。
2.订单列表区的信息来源与订单详情,信息种类以及要素较多(可参考:四.订单详情信息价格图)所以后台列表中不可能直接显示订单相关的所有字段,需商家更关注使用频率更高的字段比如订单编号、订单状态、退款状态等信息。而剩余的其他信息,可以通过下级订单详情页面展示。
在这里插入图片描述

四.订单详情

订单详情的信息包括商品信息、订单信息、用户信息、支付信息、物流信息等,如下图所示:

在这里插入图片描述
1.用户信息包括用户账号、用户身份等级(普通会员/VIP)、用户的收货地址、收货人、收货人电话等组成。用户身份等级信息可以用来和促销系统进行匹配,获取商品折扣。
2.订单信息这里要补充一个概念-拆单。拆单有两次,一次是订单层面的拆单-在用户提交订单之后、支付之前拆单,这个拆单主要是因为多商品合并支付时,各个商品属于不同商家,此时订单需要使用父子订单进行区分。父订单是记录一次下单和合并支付的依据,子订单是买家和商家跟踪物流,售后、结算的依据(对于合并支付的订单,京东是拆为两个不同的订单编号,淘宝也是按照店铺拆为两个订单,但是订单编号相同);二次是商品层面的拆单-在用户下单之后,商家发货之前,去拆分发货单(SKU层面),这个拆单由于商品分属不同的仓库/商品品类需要单独打包发物流。
3.物流信息分两种业务场景来讲。一,平台自营商品通过WMS系统完成订单出库的是可以自动完成包裹物流信息的回传;二,第三方店铺通过自己的仓库打单发货的情况,是需要商家在后台系统手动上传包裹物流信息。补充一点:现在绝大多数物流公司都开放了物流接口,可以根据物流接口获取物流状态信息。当用户收到货后,可以根据物流公司反馈的签收结果,设置提醒用户确认收货。

五.逆向订单

1.修改订单,此操作发生在预下单过程中,用户没有提交订单,可以对订单一些信息进行修改,比如配送信息,优惠信息,及其他一些订单可修改范围的内容,此时只需对数据进行变更即可。值得一提的是,在预下单也就是确认订单时,是不支持用户修改选购商品的规格和数量的。这是为啥呢?
在这里插入图片描述
2.取消订单,此操作用户主动取消订单和用户超时未支付,两种情况下订单都会取消订单,而超时情况是系统自动关闭订单,所以在订单支付的响应机制上面要做支付的限时处理,尤其是在前面说的下单减库存的情形下面,可以保证快速的释放库存。
3.退款,待发货订单状态下取消订单时,分为商户退款(库存不足或者其他原因)和用户申请退款。其中用户退款分三种场景:商家还未发货,系统应该支持用户申请退款(无需审批);若商品还未出库,则需要推送至WMS从而在仓库内进行拦截,拦截成功则暂定出库,释放库存,同步订单系统同意取消订单,同时进入退款流程;若商品已出库,系统不支持退款申请,双方达成一致后,由卖家点同意退款系统更新退款状态,对订单进行退款操作,金额原路返回用户的账户,同时关闭原订单数据。
4.退货退款,需要与商户进行协商,如果协商过程存在争议平台客服介入进行协调。如无争议,商户审核通过后告知用户退货流程及退回的收件信息,进入退货流程后,商家收到用户退货商品后,库存系统进行补回,退货入库,订单系统确认后进行退款,同时关闭订单。

六.总结

以上是订单管理层面的一个整体总结和说明,在完整的电商架构中其实还有调度中心(串联WMS系统与订单管理中心)后面争取在梳理库存的时候一起分析总结一下这个模块。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/410723.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

记一次中大规模数据库迁移过程,从MySql到PostgreSQL.

从MySql到PostgreSQL迁移的决策过程就不说了。我也是第一次用PostgreSQL,也没法说好不好。决策已经定了,下面介绍一下执行过程。 一、数据基本情况 服务器:4核CPU,8G内存,1T硬盘,8Mbit网速。 数据库&…

【建站】手把手教你搭建惊艳的博客

系列文章目录 第一章 手把手教你搭建自己的博客 文章目录系列文章目录前言一、网站软件的选择二、网站空间的选择1. 建议选择有名、大厂的2. 上手容易,丰富而详实的文档3. 要稳定,少出问题4. 及时处理并有能力处理问题三、 环境准备四、 安装PHP81. 首先…

sql知识点复习以及项目中的例子

常见的聚合函数: avg(),求平均值; sum() 求和; count(),计算和; min()求最小值; max&#xff…

ChatGPT想干掉开发人员,做梦去吧

很多人都发现ChatGPT可以做一些代码相关的工作,不仅可以写一些基础的类似python、java、js的代码段,还可以做一定量的调优,于是就开始担忧起来,到哪天我的开发工作会不会被ChatGPT这个工具给取代了? 目录 1. ChatGPT…

腾讯云轻量应用服务器镜像修改限制说明(必看)

腾讯云轻量应用服务器镜像可以更换或修改吗?可以!镜像可以修改,镜像是指轻量服务器的预装操作系统,轻量服务器创建成功后镜像也是可以更换的,如下图: 腾讯云轻量应用服务器镜像可以修改 目录 轻量服务器修…

计算机系统基本组成于基本功能

什么是计算机系统 计算机系统中的各个抽象层: C语言程序设计层 数据的机器级表示,运算语句和过程调用的机器级表示操作系统、编译和链接指令集体系架构(ISA)和汇编层 指令系统、机器代码,汇编语言微体系结构和硬件层 …

365天深度学习训练营-第J9周:Inception v3算法实战与解析

目录 一、前言 二、论文解读 1、Inception网络架构描述 2、Inception网络架构的优点 3、InceptionV3的改进 三、模型搭建 1、Inception-A 2、Inception-B 3、Inception-C 4、Reduction-A 5、Reduction-B 6、辅助分支 7、InceptionV3实现 一、前言 🍨 本…

ASP一个简单的网上教务系统模型的设计与实现

对于一个学校来说,大量教师信息,学生信息管理,学生成绩管理,基本数据的维护都难于通过传统的方法进行管理:这就迫切需要利用计算机技术来帮助学校管理者处理这些日常管理。本系统正是为了简化教学任务的管理&#xff0…

FreeRTOS 任务调度及相关函数详解(一)

文章目录一、任务调度器开启函数 vTaskStartScheduler()二、内核相关硬件初始化函数 xPortStartScheduler()三、启动第一个任务 prvStartFirstTask()四、中断服务函数 xPortPendSVHandler()五、空闲任务一、任务调度器开启函数 vTaskStartScheduler() 这个函数的功能就是开启任…

【ROS2指南-1】配置ROS2环境

资料来源Configuring your ROS 2 environment — ROS 2 Documentation: Dashing documentationhttp://docs.ros.org/en/dashing/Tutorials/Configuring-ROS2-Environment.html 目标:本教程将向您展示如何准备 ROS 2 环境。 教程级别:初学者 时间&…

js控制页面随浏览器放大缩小,页面布局不变

一.给App.vue设置minWidth、minHeight、maxWidth以及maxHeight,值为浏览器的可视窗口大小(我的浏览器不全屏的时候是1920*937,全屏的时候是1920*1080) 1.在main.js中获取浏览器的宽高,并挂载到全局变量上以便使用 // 浏览器窗口,这个地方值不会变,你任意拉扯浏览器也不会改变…

【数据库基本操作】打开数据库

一、启动与关闭 只介绍一种方法: 打开命令行工具,以管理员身份运行 1.启动数据库 net start mysql80 //80是在安装的时候设置的名字(默认),不用在意 2.关闭数据库 net stop mysql80 如题已经成功&#…

场景搭建、素材库、在线标绘等,四维轻云地理空间数据云管理平台新增了这些功能

四维轻云是一款地理空间数据云管理平台,具有地理空间数据在线管理、展示及分享等功能。在四维轻云平台中,用户可以不受时间地点的限制,随时随地管理、查看及分享各类地理空间数据。 为了更好地满足用户需求和进行地理空间数据在线管理&#…

【C++从入门到放弃】string全方面分析(常用接口、模拟实现)

🧑‍💻作者: 情话0.0 📝专栏:《C从入门到放弃》 👦个人简介:一名双非编程菜鸟,在这里分享自己的编程学习笔记,欢迎大家的指正与点赞,谢谢! strin…

d2l 文本预处理textDataset

这一节极其重要,重要到本来是d2l的内容我也要归到pyhon封面,这里面class的操作很多,让我娓娓道来! 目录 1.要实现的函数 2.读取数据集 3.词元化 4.Vocab类 4.1count_corpus(tokens) 4.2class中的各种self 4.2.1 _token_fr…

CS5260设计电路|替代RTD2169设计方案|Typec转VGA方案应用设计

CS5260,RTD2169,AG9300都可实现Type-C TO VGA转换器设计,适用于笔记本电脑、主板、台式机、适配器和对接系统等多个细分市场和显示器应用程序, CS5260设计电路如下: 2. CS5260功能特性: USB-C型规格1.2 VESA显示端口tm (DP) v1.4兼容接收机…

nvm安装及使用

nvm是一个node的版本管理工具。 nvm-windows下载 1、安装 首先要卸载电脑上已经有的node版本,注意需要卸载干净,再安装nvm 一路 next 安装就可以了。 安装成功后,以管理员身份运行(很重要!!!&…

MIPI 打怪升级之DCS篇

目录1 Overview2 Display Architectures2.1 The Type 1 Display Architecture3 Power Level3.1 Type 1 Display Architecture Power Change Sequences3.2 Type 2 Display Architecture Power Change Sequences3.3 Type 3 Display Architecture Power Change Sequences4 Gamma C…

unity的学习,准备搞一款mmo小游戏,服务器和客户端从零学

如代码所示,简单了解一下。 using System.Collections; using System.Collections.Generic; using UnityEngine;public class test : MonoBehaviour { void Awake(){Debug.Log("awake hello world!");}// 当脚本可用时,也就是打勾的时候可以…

线程同步-信号量-互斥量-条件变量

文章目录线程同步信号量互斥量条件变量线程同步 线程同步其实实现的是线程排队。防止线程同步访问共享资源造成冲突。多个线程访问共享资源的代码有可能是同一份代码,也有可能是不同的代码;无论是否执行同一份代码,只要这些线程的代码访问同…