Skip to content

价格体系

价格体系用于在商品零售价之外定义可选的扩展价格,例如“会员价”“渠道价”“员工价”。扩展价格是应用级通用交易能力,不属于某个营销方案或营销场景。

普通应用不需要配置价格体系。没有扩展价格时,商品只维护并使用零售价,现有交易流程不受影响。

整体关系

三处配置各自负责不同内容:

位置负责什么示例
设置 → 价格体系定义价格名称、状态和排序创建“会员价”
商品 SKU 售卖价格为每个 SKU 填写具体扩展金额红色/L 会员价 238 元
资格提供方决定什么身份可以使用哪种价格营销方案会员等级选择“会员价”

价格体系只定义“有一种价格叫会员价”,不会自动给商品打折,也不会自动判断哪些用户是会员。

创建价格类型

进入 设置 → 交易履约 → 价格体系,点击 新增价格类型

字段约束填写建议
价格名称必填、最多 20 个字符、应用内不能重名使用用户和运营都能理解的名称,例如“会员价”
排序大于等于 0数字越小越靠前;可按 10、20、30 留出插入空间

保存后系统自动生成稳定标识。运营不需要输入或维护标识;以后修改价格名称也不会改变商品和等级的关联。

新增价格类型本身不会改变任何商品价格。还需要在商品 SKU 中填写金额,并由资格来源引用后才会对用户生效。

编辑价格类型

点击行内 编辑 可以修改名称和排序:

  • 改名会更新后台和后续用户端使用的显示名称。
  • 改名不会改变内部关联,不需要批量修改商品。
  • 历史订单继续显示下单时保存的名称和成交价格快照。
  • 修改排序只改变管理端展示顺序,不改变用户成交价。

价格名称用于表达业务含义,不要在名称中写具体金额,例如不要命名为“会员价 238 元”,因为不同商品和 SKU 的金额可以不同。

在商品中配置扩展价格

应用创建扩展价格后,商品编辑的 SKU 规格与售价 或店铺 售卖配置 会按排序显示对应价格列。

每个 SKU 独立填写

同一商品的不同 SKU 可以使用不同金额:

SKU零售价会员价渠道价
红色 / M268 元238 元218 元
红色 / L288 元258 元238 元

扩展价格金额是可选项:

  • 填写大于 0 的金额:用户资格命中时使用该价格。
  • 留空:该 SKU 对应身份回退零售价。
  • 不允许填写 0、负数或无效金额。

单店和多店如何维护

商品编辑入口如果同时维护商品源数据和当前店铺售卖数据,会在同一张 SKU 表中显示零售价与扩展价格,保存时由系统分别写入正确的商品数据。

铺货或店铺售卖配置入口只编辑当前店铺的售卖价格。无论单店还是多店,用户实际购买使用的都是店铺售卖 SKU 中的零售价和扩展价格,不需要在两个无关位置重复维护同一个价格体系。

与其他价格字段的关系

  • 零售价必须大于 0。
  • 有商品指导价时,零售价仍需满足指导价约束。
  • 划线价不得低于零售价。
  • 扩展价格只要求大于 0,不强制高于成本价,也不强制低于零售价。

允许扩展价格低于成本价,是为了支持平台补贴、亏本清仓和引流商品;运营必须自行评估利润、佣金和资金池成本。

哪些用户使用扩展价格

价格资格由其他业务能力提供。当前已经支持营销方案中的等级可选引用扩展价格。

例如:

text
普通用户:按商品零售价
会员:会员价
服务商:会员价
合伙人:渠道价

多个等级可以共用一个扩展价格,也可以分别选择不同价格。一个身份一次最多使用一种扩展价格,不会把会员价和渠道价叠加。

营销方案等级的具体配置参见权重分佣。未来其他会员、企业客户或渠道身份也应复用同一价格体系,不需要再给商品增加固定的“会员价字段”。

价格如何解析

服务端按以下顺序确定用户本次基础购买价:

text
读取 SKU 零售价
-> 读取用户下单前已经具备的价格资格
-> 查找资格引用的扩展价格
-> 检查价格类型是否启用
-> 读取当前 SKU 对应金额
-> 有合法金额:使用扩展价格
-> 无资格、已停用或金额缺失:使用零售价

未登录用户没有身份资格,使用零售价。用户登录后,商品列表、详情、购物车和结算会按当前身份重新解析。

购物车不保存固定成交价。用户升级、价格改动或价格类型停用后,再次进入购物车和结算时会重新读取当前有效价格;正式创建订单仍由服务端重新计算,不能以前端显示金额作为成交依据。

与活动和优惠的顺序

扩展价格属于用户身份对应的基础购买价,不属于优惠券或立减金额。

text
SKU 零售价
-> 身份扩展价格
-> 商品活动价
-> 自动立减
-> 优惠券
-> 积分抵扣
-> 余额抵扣

活动价只有严格低于当前用户基础购买价时才生效。

例如零售价 268 元、会员价 238 元:

活动价普通用户会员
250 元250 元238 元
218 元218 元218 元

会员价与零售价之间的差额不作为优惠券、立减或活动优惠金额统计。

停用价格类型

停用前,系统会统计有多少营销方案等级、商品和 SKU 正在引用该价格。

停用后的规则:

  • 新订单不再使用该扩展价格,统一回退零售价。
  • 等级中的价格引用保留,不自动清空。
  • 商品 SKU 已填写的金额保留,不批量删除。
  • 历史订单不受影响。
  • 重新启用后,原等级绑定和商品金额自动恢复生效。

因此,停用适合临时停止一种价格制度。停用前应关注回退零售价是否会造成用户看到的价格突然变化。

删除价格类型

删除是不可恢复的配置清理,只允许在以下条件全部满足时执行:

  • 没有营销方案等级引用;
  • 没有任何商品 SKU 保存该价格金额;
  • 没有其他当前业务配置引用。

仍有引用时系统会拒绝删除,只能停用。若确实要删除:

  1. 先解除所有等级或其他身份绑定。
  2. 清理所有商品 SKU 中对应价格金额。
  3. 再回到价格体系执行删除。

不要为了删除价格类型直接批量修改历史订单。历史订单依赖自己的成交快照,不依赖当前价格体系继续存在。

方案切换和商品场景调整

  • 商品不保存营销方案或等级信息。
  • 商品切换营销场景不会修改扩展价格。
  • 切换营销方案不会扫描或批量改写商品。
  • 目标方案等级没有绑定扩展价格时,新订单按零售价。
  • 切回原方案后,原方案等级绑定继续生效。

这使一个应用即使有大量商品或频繁切换方案,也不需要重新建立商品价格。

成交价格何时确定

用户资格以预结算和正式创建订单时已经存在的身份为准。

例如普通用户购买 268 元升级礼包,支付后升级为会员:

text
本单:下单前还是普通用户,按 268 元成交
支付后:升级为会员
下一单:若 SKU 配置了会员价,则按会员价成交

支付、确认收货或奖励结算后获得的新身份,不会反向改变本单成交金额。

订单会保存成交时的零售价、基础购买价、价格来源、价格名称和资格快照。以后改名、停用、改价或切换方案都不会重算历史订单、退款和对账金额。

常见问题

新建“会员价”后,商品为什么还是零售价

只创建名称还不够。需要给商品 SKU 填写会员价,并让用户当前身份绑定该价格。

商品填写了会员价,普通用户为什么没使用

扩展金额不是公开促销价。用户必须具有引用该价格的有效身份;普通用户没有资格时使用零售价。

等级已经绑定会员价,部分商品为什么仍是零售价

检查当前商品和选中的 SKU 是否填写了会员价。SKU 金额缺失时按规则回退零售价。

停用后为什么等级和商品配置还在

这是可逆设计。停用只让新交易回退零售价,不删除业务绑定;重新启用后可以直接恢复。

为什么扩展价格可以高于零售价

系统只把它作为身份基础购买价候选,并不强制必须打折。虽然技术上允许,但名称为会员价却高于零售价通常会引发客诉,应由运营检查业务合理性。

上线前检查

  • 价格名称是否清晰、无重复。
  • 排序是否符合商品编辑时的维护习惯。
  • 所有需要使用的商品 SKU 是否已填写金额。
  • 资格提供方是否绑定到正确价格。
  • 未登录、普通用户和各身份用户的商品列表、详情、购物车、结算价格是否一致。
  • 活动价与身份价同时存在时是否按更低的有效规则结算。
  • 停用时回退零售价是否符合预期。
  • 已完成一笔下单、身份升级、改价和退款测试。

为中小企业量身打造的新一代业务引擎