如何提高 Stripe 订阅价格?

Col*_*n C 14 stripe-payments

我有一个基本产品和一个高级产品,它们都有遵循“好-更好-最好”方法的月度年度定价结构。

假设由于成本增加,我想将所有订阅者的基本每月计划的价格提高 5 美元。如何提高订阅价格,并开始向所有当前和新订阅者收取更高的价格?据我了解,Stripe 的定价是一成不变的,但这在订阅行业中并不罕见。

例如,Netflix 今年早些时候提高了所有人的定价。'

我是否需要在该基本产品下创建一个新价格,并以某种方式将所有用户迁移到该新价格?

koo*_*jah 18

你的直觉就在这里。您将为新金额创建一个具有不同 id 的新 Price 对象price_ABC。然后,您可以首先将新客户切换到新价格,并查看它如何影响转化。该价格与底层的同一产品相关联,但它是价格的新“版本”。这是通过更改代码并确保使用新价格创建新订阅来完成的。

将来(尽管可能是立即),当您准备好时,您可以将您的客户迁移到新的 Price。最干净的方法是使用SubscriptionSchedule。这个想法是,您可以定义订阅可以经历的多个“阶段”。这允许“链接”或“计划”您的订阅的未来更改。您的 SubscriptionSchedule 将有两个单独的阶段:

  1. 当前期间结束之前的当前“旧”价格
  2. 新价格加上下一周期额外 5 美元

使用此方法的优点是,您可以将价格更改推迟到下个月,以便它准确反映他们在下一个周期(例如月底)之前支付的费用。缺点是管理这些对象可能会有点困难,因为它们有点复杂。

另一种有时更简单的方法是立即更新订阅价格。这样做会导致按比例分配,因为我们计算他们已支付的费用和所欠费用之间的差额。通常,对于像您这样的迁移,您希望禁用按比例分配,这是通过proration_behavior: 'none'在更新期间传递来完成的。

您需要编写代码来使用 List Subscriptions API循环所有订阅。您可以传递price参数以仅查看该特定价格的订阅。