店铺管理:同一个小程序商城开3家店,系统怎么让它们各卖各的?

0 评论 189 浏览 0 收藏 19 分钟

当一家国产运动品牌决定在微信小程序同时运营三家店铺时,如何实现商品、价格、库存的独立管理?本文以真实案例为线索,从渠道与店铺的概念区分切入,逐层拆解多店体系背后的数据隔离逻辑与系统设计要点,揭示如何用store_id串联起商品圈选、价格策略、结算账户等关键环节,并直击库存混乱、价格失控等实战陷阱。

从一个真实决策开始

品牌X是一家国产运动品牌,今年决定把微信小程序商城做深。之前只有一个”品牌X官方商城”,现在要同时运营三家店:旗舰店(当季新品,标价899)、折扣店(过季尾货,一口价399)、会员商城(专属款,会员价599)。

三家店在同一个微信小程序里、卖同一个品牌的货、共用同一个中心仓——但选品不同、价格不同、促销规则不同、结算方式也不同。

产品经理面临的核心挑战是:系统怎么搭,才能让这三家店各卖各的、各算各的账?

这就是店铺管理要解决的核心问题。下面我们沿着”搭建这套多店体系”的真实决策链,一层层拆解。

Step 1:先搞清概念——渠道和店铺,到底什么区别?

品牌X要扩张,第一个问题不是”开几家店”,而是”在哪开”。天猫、京东、微信小程序、线下——这些叫渠道,回答的是”用户从哪来”。

举个通俗的例子:假设某个运动品牌同时在天猫开了旗舰店、专卖店、奥莱店——三家店在同一个天猫渠道下,卖同一个品牌的货,但选品不同、价格不同、运营团队也不同。天猫是渠道,每家店是独立的经营单元。

理解了这个逻辑,回到品牌X的微信小程序商城也是一样的。在同一个微信渠道下,品牌X选择开3家店(旗舰、折扣、会员商城),每家店有独立的运营团队、选品策略、价格体系和KPI——这叫店铺,回答的是”谁来经营这盘生意”。

关键结论:渠道是流量入口,店铺是独立经营单元。 一个渠道下可以有多家店铺,每家店有自己的运营团队、选品策略、价格体系和KPI。

避坑提示: 把渠道和店铺混为一谈 = 把”用户从哪来”和”谁在做生意”搞混了——后面的商品、库存、价格、订单、结算全部会跟着乱。

概念清楚了,下一个问题自然就来了:品牌X 的旗舰店和折扣店“各卖各的”,在系统里具体是哪些数据不同?

Step 2:一家店铺在系统里到底管什么?

回到品牌X 的案例。三家店都开了,运营团队各就各位——但系统里怎么让它们”各卖各的”?答案是:每家店独立绑定4层数据,每层都通过 store_id 隔离。

核心逻辑: 所有数据通过 store_id 串联——商品圈选、价格策略、运营规则、结算账户,构成一家店铺的完整”骨架”。

关于装修配置: 店铺的视觉展示(主题、Banner、页面布局)同样需要按 store_id 隔离,但装修管理是独立的一级模块,在Step 5会详细展开。

4层数据搞清了“一家店管什么”。但品牌X的三家微信商城店都是自己运营的直营店——如果有一天,一个合作方找上门说“我想在你们小程序里开一家店”,系统怎么支持?这就引出了下一个问题。

Step 3A:品牌X自己开店——直营模型的系统要求

前面两步讲的是品牌X自己开3家直营店的情况:旗舰店、折扣店、会员商城。这就是最经典的直营模型。

直营模型的核心特征

品牌X 的旗舰店、折扣店、会员商城都是直营,总部完全把控。所有决策总部说了算:商品/价格/库存总部可控,运营直接操作后台上下架,价格变更走审批流,库存按销售预测从中心仓分配额度。

系统要求: 审批流 + 操作日志 + 多店数据聚合报表。系统设计最简单,但运营成本全品牌自己扛。

这条线到这里已经跑通了。接下来讲另一条故事线——某一天,一个合作方找到品牌X。

Step 3B:合作方来了——三种店铺类型的选择

品牌X 的微信小程序商城做起来了,月活50万。这时候,一家运动用品经销商”动力体育”找上门:“你们小程序流量不错,我想在里面开一家店,卖你们的货。”

产品经理收到需求后,第一个问题不是”开不开”,而是:开什么类型的店? 因为不同类型意味着完全不同的系统设计。

品牌X 最终选了方案B(加盟合作)

原因很现实:动力体育有自己的运营团队,但品牌X不想让价格体系失控。加盟合作 = 给合作方一定自主权,但关键规则系统强制执行。

典型事故案例: 合同约定”售价浮动不超过±10%”,但系统未做价格校验。动力体育直接把畅跑Pro从指导价899降到599引流,品牌X发现时已过两周,旗舰店用户纷纷截图投诉”为什么你们卖899别人才599″。后来加了两道防线:前端价格输入时自动校验浮动范围,后端每天跑一次价格异常扫描。

系统要求: 价格浮动校验(前端+后端)+ 每日价格异常扫描 + 商品授权范围管控 + 授权到期自动回收。

如果选了方案C(经销分销)呢?

经销商买断品牌X的货,之后怎么卖品牌管不了。最头疼的三个问题:

  • 窜货:A区域经销商把货低价卖到B区域 → 区域授权绑定 + 订单溯源追踪
  • 乱价:在其他平台远低于指导价出售 → 比价爬虫监控 + 违规扣分机制
  • 过期授权:授权到期了还打着品牌X旗号卖货 → 授权到期自动下线

核心原则:管控力越弱,系统补偿机制越重。 直营靠流程管控,加盟靠规则校验,经销靠监控追踪。

延伸:线下门店为什么再难3倍?

如果品牌X的加盟店是线下门店,复杂度还要再翻一层。线上店铺 = 一组配置数据,线下门店 = 配置 + 空间 + 设备 + 人。多出3个核心挑战:

挑战1:LBS围栏 — 用户打开品牌X小程序 → GPS匹配最近门店 → 展示该店商品/价格/库存。坑:围栏重叠(就近+库存优先)、营业时间(打烊降级为快递)、GPS漂移(5分钟锁定防闪烁)。

挑战2:门店库存 — 门店天然有误差(顾客试穿买走店员忘出库)。设计原则:可售库存 = 系统库存 x 85%,安全水位消耗完自动降级为快递发货。

挑战3:门店权限 — 数据权限按 store_id 隔离,不是按角色隔离。经典事故:加盟商看到了直营店进货价280元,自己拿货价400——引发严重争议。解法:所有成本接口加 store_id IN (可见列表) + 网关AOP拦截。

两条故事线都讲清了——品牌X自己开店(直营)和合作方来了(加盟/经销)。但不管是哪种模式,数据最终都落到同一套表结构——store_id 就是串联一切的钥匙。

Step 4:数据模型——store_id 怎么串联全链路?

前面的商品圈选、价格策略、经营规则、结算账户,以及直营/加盟/经销的不同管控逻辑——最终都要落到数据库里。store_id 是所有这些数据的核心外键。

回到品牌X 的案例,store_id 怎么串联全链路:

畅跑Pro上架到旗舰店 → store_product:BRX-DF-001 + CRP-SPU 中心仓分配500双给旗舰店 → store_inventory:BRX-DF-001 + CRP-BK42 + qty=500 旗舰店定价899 → store_price:BRX-DF-001 + CRP-BK42 + sale_price=899 用户在旗舰店下单 → order:order_id + store_id=BRX-DF-001 货款结算给品牌总部 → settlement:BRX-DF-001 → 品牌X总部账户

store_id 是电商系统的身份证号。 编码混乱 → 报表混乱 → 权限混乱 → 全链路混乱。

数据模型定了,下一步就是最实际的问题:产品经理要设计哪些功能模块、建哪些字段、流程怎么走?

Step 5:落地设计——店铺管理后台怎么搭?

前面4步从概念到模型、从管控逻辑到数据结构,都是”想清楚”的过程。这一步回答”怎么做”——产品经理拿到需求后,店铺管理这个模块具体包含哪些核心模块?

重要说明: 本节聚焦”店铺管理”模块的后台设计。店铺管理包含4个核心模块,其中”店铺运营”模块提供了装修配置的功能入口,实际的装修能力由独立的”装修中心”模块提供(类似商品管理的入口和实现分离)。

建店流程:品牌X 微信折扣店从0到开业

旗舰店已经在运营了,现在要新开一家折扣店(对应 Step 1 的三店布局):

第1步:创建店铺主体 — 填写店铺名称(品牌X微信折扣店)、所属渠道(微信小程序)、店铺类型(折扣店)。系统自动生成 store_id:BRX-OL-002

第2步:绑定结算账户 — 直营模式,收入归总部。填写收款账户、结算周期(T+7)

第3步:圈选商品 — 从品牌X 4万SPU中圈选过季尾货300个SPU,写入 store_product 表

第4步:配置价格 — 折扣店一口价399(旗舰店899、会员商城599),写入 store_price 表

第5步:配置规则 — 不参加满减 + 售出不退 + 全场包邮,绑定 store_id = BRX-OL-002

第6步:配置装修 — 在”店铺运营”模块点击”装修配置”,跳转到”装修中心”,选择BRX-OL-002,配置红色主题 + 倒计时Banner

第7步:提交审核 → 开业 — 草稿 → 待审核 → 营业中

装修配置的入口在店铺运营模块,点击后跳转到独立的”装修中心”进行实际配置。建店时可以选择”使用默认装修模板”快速上线。

核心数据表设计

 

 

关店不是删一行数据

假设品牌X 微信折扣店业绩不达标要关店——改个 status 就行?实际上要处理 6 件事:

  1. 未完成订单:处理完所有”待发货””待收货”订单
  2. 库存回收:折扣店库存额度回收到共享池
  3. 促销下线:关联的所有活动自动终止
  4. 售后兜底:已售订单的售后继续,退款退回原结算账户
  5. 数据归档:BRX-OL-002 逻辑删除(status = closed),历史数据保留
  6. 权限回收:该店操作人员的后台权限自动冻结

关店检查清单: 待处理订单 = 0,待结算金额 = 0,活动状态 = 全部终止,才允许执行。

设计好了就万事大吉?不是。下面是真实项目里最常见的5个事故——每一个都对应前面某个具体的设计环节。

踩坑实录:5个高频事故

5步设计讲完了,这一节换个视角——看看设计不到位会出什么事。

5条生命线: 库存隔离、规则隔离、结算拆分、权限边界、展示隔离——在设计店铺体系的第一天就画清楚,出事再补的成本是初始设计的10倍。

拓展视野:不同业态的侧重点

品牌X的案例属于典型的品牌电商。但店铺管理在不同业态下侧重点完全不同:

全局位置:店铺管理的上下游关联

回到全景图,店铺管理是连接商品、库存、价格、订单、结算的”中间层”:

如果店铺这一层设计得不好——store_id 编码混乱、store_type 枚举不够、数据权限没按 store_id 隔离——上面所有模块都会跟着出问题。 这也是为什么店铺管理放在整个系列的第二篇。它是地基。

自查清单:你的店铺体系设计是否扎实?

在真正动手搭建店铺管理系统之前,用这10个问题检验一下设计思路:

基础架构

1. 渠道和店铺在你的系统里是分开建模的吗? 还是把”微信渠道”直接当成”微信店铺”?

2. store_type(店铺类型)的枚举是否覆盖了未来3年的业务场景? 至少包含:直营旗舰/直营折扣/加盟店/经销商/会员商城

数据隔离

3. 价格、库存、促销规则是否都绑定了 store_id? 还是价格存在商品表、规则全局生效?

4. 所有查询接口的 WHERE 条件里都带 store_id 了吗? Code Review 是否卡了这个点?

5. 退货表、售后表是否冗余了 store_id 字段? 否则财务对账会非常痛苦

管控机制

6. 加盟店的价格浮动是否做了前后端双重校验? 合同约定±10%,系统能拦住±30%吗?

7. 促销活动创建时,”适用店铺”是必填项吗? 还是默认全店铺生效?

扩展性设计

8. 线下门店的扩展信息(经纬度/营业时间/POS)是否独立建表? 还是都塞进店铺主表?

9. 关店流程是否包含了”待处理订单=0″的前置检查? 还是直接改 status 就完事?

10. 财务结算报表能否按 store_id 一键拆分? 还是需要财务手动整理Excel?

展示层隔离

11. 店铺装修配置是否绑定了 store_id? 还是全局共享一套Banner/主题配置?

✅ 全部打勾 → 恭喜,你的设计很扎实!

❌ 有3个以上未勾选 → 建议重新审视店铺体系设计,否则上线后会很被动

核心判断标准:能否在不改表结构的前提下,支撑未来3年的业务扩张?

作者:Zoe产品手记 公众号:Zoe产品手记

本文由 @Zoe产品手记 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自作者提供

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 目前还没评论,等你发挥!