聊聊供应链体系中的商品基础模块
本文主要跟大家讲述一下关于供应链体系中的商品基础模块,一起来文中看看~
笔者之前负责国内生鲜电商的供应链体系,后续负责3C海外电商的供应链体系,遇到比较多又有趣的系统机构逻辑。
商品基础模块,是整条供应链来说,相对比较容易的一块,基本上不存在的难度。
商品基础模块分成了基础模块和商品模块两部分:
基础模块:
一般情况,将商品数据和基础数据进行分类,如品类、品牌、仓库、地址库、温区、配送条件、发货时效等,基本上独立建表维护,虽然前期工作量比较大,但对于后期拓展性和灵活性上,具有非常大的便利性。
但对于本身业务场景不复杂或数据非常静态化的情况,可将此优先级降低或者忽略。
商品模块:
生鲜由于标配少,基本上以独立SKU的形式存在;3C或衣帽商品,基本上是以SPU-SKU的形式出现,两者本质在后台逻辑机制上,差异不大,但有一定的逻辑继承关系(本期不描述SPU逻辑)。
商品模块分类
1)商品价税
- 价格:涉及商品的采购价、促销采购价、全局售价、全局促销售价等场景,目前国内基本上通用标准的单仓价,已经很少见到分仓价格的存在。
- 税率:一般设计商品的进项、销项两种;针对于非标品的生鲜商品,可能存在一定的免税商品,可酌情考虑拓展性问题。
2)商品图文
商品图片:主要用于不同端使用的商品图片和商品详情,目前常规区分与小程序、PC和APP三大类。可酌情考虑是否用于全渠道销售。
3)商品销售区域
比较核心的数据,涉及商品匹配对应的地址站点是否可独立生成订单,强关联与库存和搜索模块。
4)商品归属或者类型
一般通过商品归属或者类型,将商品的场景完全定义出来,继而将商品用于活动以外的销售场景。涉及基础架构时,需重点考虑此类核心字段的扩容性问题。
5)商品状态
涉及商品两种状态:
- 商品本身的状态,指向商品是否已经经过了各种审核,一般情况下,商品从创建到达到售卖条件,需要经过一系列的审核,包括采购人员、财务人员、品控人员等。
- 商品售卖状态,达到售卖状态后,方能进行售卖。
6)其他商品基础信息
其他如名称、Slogan、品牌、品类、包装规则、售后规则、最小起订量、箱规等,也属于关键要素,需要针对不同的场景进行定义。
商品模块相关服务内容
因商品基础模块作为最基础的源头,与订单、库存、搜索等模块息息相关,一般会涉及几个核心的服务输出(涉及商品中心架构时,可重点关注下):
- 商品缓存服务,用于输出全平台获取商品信息的一个缓存,使用方包括了订单商品服务(购物车模块使用)、搜索、订单履单、商品分销、开发平台API等;
- 商品下发服务,主要用于将商品信息推送到WMS系统,用于在库商品的处理;
- 商品通知服务。
商品库存初始化
这是历来比较头疼的模块,设计架构时,需要重点考虑!
- 常规方式一:一般情况在SKU创建成功后,就会进行库存初始化,但因为业务原因,经常会导致初始化了一堆无用的商品库存数据。
- 常规方式二:单据初始化,为保证数据有效性,一般会在生成单据时候,再进行库存初始化。本方案的好处是在于可以规避无效数据,但对库存服务处理来说,逻辑处理就比较复杂,需要考虑常规销售和预定销售的场景。
以上是简单的商品基础架构,希望大家多多交流。
本文由 @ 广土卓 原创发布于人人都是产品经理。未经许可,禁止转载
题图来自Unsplash,基于CC0协议
无用的库存初始化基于sku删除直接删除不就可以吗,为啥还要单据
可以详细说一下履单的设计吗(这些是基于计算规则的设计吧)原型上面好像并不需要单独开模块,只是业务规则上面需要加入这些考虑吧
上面说的分开建表是数据库分开建表吗?按你说的什么配送条件建一个表、仓库一个表等等这得多少个表啊
广老师好微信多少?
谢谢分享。另外,再请教一下,什么叫单仓价,什么叫分仓价呢?我问了度娘,没找到答案 🙁
如果创建SKU时或单据生成时初始化库存,库存数量是置为0么?库存单价呢?
创建SKU时候初始化,默认库存是0,有单据初始化,就根据单据关联的数量进行初始化。库存单价要定义,一般会计算成本价,成本价有多种计算方式:移动加权,先进先出这些,一般采用移动加权。
为什么要填库存啊,商品中心不管库存数量,只管商品主数据