6 分钟阅读 Subscriptions

Shopify结账UI扩展中的订阅价格显示

订阅结账页面可能在产品更换后显示错误的周期性价格。本文说明如何在构建任何东西之前,先从销售计划而不是结账扩展入手找出原因。

Shopify 结 账 UI 扩 展 ( checkout UI extension ) 无 法 重 写 订 阅 者 在 结 账 时 看 到 的 周 期 性 价 格 。 这 个 数 字 来 自 销 售 计 划 ( selling plan ) 的 定 价 政 策 , 所 以 当 产 品 更 换 后 价 格 看 起 来 不 对 时 , 需 要 修 复 的 是 计 划 本 身 , 而 不 是 扩 展 。

一 位 经 营 蜡 烛 订 阅 的 卖 家 在 Shopify 社 区 帖 子 中 描 述, 客 户 换 成 更 便 宜 的 补 充 装 后 , Recurring Subtotal 仍 然 一 直 显 示 起 始 价 格 。 我 们 自 己 的 支 持 队 列 中 也 看 到 同 样 的 困 惑 : 90 天 内 有 13 个 关 于 订 阅 结 账 的 问 题 , 其 中 包 括 不 清 楚 结 账 承 诺 的 金 额 与 实 际 扣 费 金 额 有 何 不 同 的 卖 家 。

周 期 性 价 格 到 底 从 哪 里 来

Shopify 将订 阅 产 品组 织 到 销 售 计 划 组 ( selling plan groups ) 中 。 每 个 计 划 都 带 有定 价 政 策, 该 政 策 有 两 种 形 式 : fixed ( 固 定 ) , 对 整 个 订 阅 只 调 整 一 次 ; recurring ( 周 期 性 ) , 在 初 始 周 期 结 束 后 应 用 不 同 的 调 整 。 结 账 会 直 接 读 取 该 行 所 对 应 的 政 策 。

结 账 UI 扩 展 位 于 该 数 字 旁 边 , 而 不 是 在 其 内 部 。Shopify 文 档将 其 描 述 为 放 置 在 结 账 区 块 前 后 的 区 块 或 静 态 内 容 。 价 格 计 算 由 Shopify Functions 单 独 处 理 , 而 不 是 由 UI 扩 展 处 理 。

如 果 自 上 一 个 截 止 日 期 以 来 , 你 还 没 有审 核 过 结 账 和 账 户 扩 展, 在 添 加 另 一 个 扩 展 之 前 , 先 从 这 里 开 始 是 个 好 选 择 。

人 们 所 说 的 “ 产 品 更 换 ” 其 实 是 两 回 事

在 排 查 问 题 之 前 , 先 区 分 这 两 种 情 况 : 一 种 是 计 划 内 置 的 周 期 变 化 , 例 如 蜡 烛 从 起 始 价 格 变 为 补 充 装 价 格 , 中 间 客 户 不 需 要 采 取 任 何 操 作 ; 另 一 种 是 买 家 在 订 阅 期 间 主 动 更 换 为 另 一 个 产 品 。 上 面 提 到 的论 坛 案 例属 于 第 一 种 。 手 动 更 换 是 不 同 的 操 作 , 但 底 层 更 新 的 是 同 一 个 定 价 政 策 对 象 。

排 查 步 骤 : 找 出 到 底 是 哪 里 出 了 问 题

  1. 通过你的订阅应用后台,或Admin GraphQL的sellingPlanGroups查询,获取该产品背后的销售计划,并查看它的定价政策。
  2. 检查它携带的是一个政策还是两个。只有一个政策意味着两个周期按设计显示并收取相同的金额。
  3. 如果你预期应该有两个价格,通过你的订阅应用添加缺失的recurring政策,让第一周期收取起始价格,之后的周期收取更换后的价格。
  4. 保存更改,下一笔真实的测试订阅订单,并在告诉任何人问题已解决之前,在你的订阅应用里检查它的首次待扣费金额。
  5. 如果两个政策都已经正确,而结账页面仍然显示不清楚,那是措辞问题,不是定价问题。请转到下一节,而不是再次修改计划。

为什么值得在下一次迁移之前修复这个问题

在结账时看到一个价格、在账单上看到另一个价格的订阅者,往往会取消订阅或发起拒付。这种情况常常恰好在商店迁移订阅应用时暴露出来。

我们还见过支付方式与定价无关、单独出故障的支持工单,例如在更换支付服务商后出现“iDEAL/Mollie payments not working”这样的问题。这是一个独立的故障,值得单独检查。

如果你在权衡迁移是否值得,我们的订阅成本细分涵盖了大多数商店会忽略的费用。

当金额正确但措辞有问题时

基于Shopify原生定价模型构建的应用,会以与Shopify相同的方式存储更换记录。例如,Progus Subscriptions将每个计划的定价政策保存为调整类型和调整值的配对,这与结账所读取的是同一个对象,所以无论哪个应用管理订阅,上面的排查方法都同样适用。

如果实际扣费金额已经正确,你只是想在更换发生之前提供额外说明,开发者可以在订单摘要附近添加一个结账UI扩展。它可以读取存储在metafield中的未来价格,并将其显示为一条说明。这条说明不会改变Recurring Subtotal这一行,它只回答旁边的问题。

Shopify将信息、配送和支付步骤上的结账UI扩展限制为Shopify Plus套餐商店。订单摘要附近的扩展遵循不同的目标类型(target type),所以在向任何人承诺之前,请先确认你的确切放置位置。

结语

结账UI扩展是展示层,而不是定价引擎。当某个数字看起来不对时,先检查销售计划的定价政策,只有在确认实际扣费金额本身正确之后,才去构建自定义扩展。

订阅应用会因为收购、迁移以及服务商功能下线而变化,频率比大多数商家预期的要高。在发生这些事件之后,请分别重新测试定价政策和支付方式配置,因为其中一个出故障,另一个不一定受影响。

FAQ

结账UI扩展能不能隐藏错误的周期性订阅价格?

不能。结账UI扩展只是在结账核心功能旁边添加内容,无法删除或覆盖那一行。你可以在旁边放一条说明,但原生价格仍会显示。

要修复两级定价的订阅价格问题,一定需要找开发者帮忙吗?

通常不需要修复政策本身。大多数订阅应用都允许你在自己的后台设置起始价格和续订价格;只有在结账内添加额外说明时才需要自定义代码。

把结账页面修好之后,Thank you页面会不会也一起恢复正常?

不会。Thank you页面使用与结账不同的扩展目标(target),所以修复定价政策后需要单独检查它。

这个问题是不是只有升级到Shopify Plus才能解决?

只是部分如此。信息、配送和支付步骤上的扩展需要Plus套餐,但订单摘要附近的扩展遵循不同的target,所以请先确认你的确切放置位置。

怎么确认修复之后,系统实际扣费确实是正确的?

更改定价政策后下一笔真实的测试订阅订单,在关闭工单之前,在订阅应用后台检查它的首次待扣费金额。

在 Shopify 上销售订阅. 了解 Subscriptions ›