Shopify 脚本迁移到 Function 后折扣被算了两次
现象#
迁移完成后同一笔订单出现两条相同减免,一条来自自动折扣、一条来自折扣码;订单详情里的折扣合计正好是原来的两倍。
原因#
- 原脚本同时覆盖自动与手动场景,迁移时建了两个折扣节点,各减一次
- 折扣节点上的组合设置允许叠加,函数之间又互不知情,减免被累加
- 一条逻辑留在 Scripts 未停用,新函数也在跑,两边同时生效
- 同一函数被重复激活,或多个 app 装了同类折扣函数,最多 25 个并发
处理步骤#
- 在 后台 折扣 列表核对
discountAutomaticApp与discountCodeApp条目 - 只保留一个入口,另一个删除或把
combinesWith设为 false - 别只改
discountApplicationStrategy,叠加由折扣节点控制 - 停用仍在跑的旧脚本,检查 应用 → Script Editor 里没有残留
- 用带码测试单核对订单折扣合计与日志里
discounts条数
验收标准#
同一购物车只产生一条减免,订单详情折扣合计等于单次计算值,Function 日志里 discounts 只有一项。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。