我有一个基本产品和一个高级产品,它们都有遵循“好-更好-最好”方法的月度和年度定价结构。
假设由于成本增加,我想将所有订阅者的基本每月计划的价格提高 5 美元。如何提高订阅价格,并开始向所有当前和新订阅者收取更高的价格?据我了解,Stripe 的定价是一成不变的,但这在订阅行业中并不罕见。
例如,Netflix 今年早些时候提高了所有人的定价。'
我是否需要在该基本产品下创建一个新价格,并以某种方式将所有用户迁移到该新价格?
koo*_*jah 18
你的直觉就在这里。您将为新金额创建一个具有不同 id 的新 Price 对象price_ABC。然后,您可以首先将新客户切换到新价格,并查看它如何影响转化。该价格与底层的同一产品相关联,但它是价格的新“版本”。这是通过更改代码并确保使用新价格创建新订阅来完成的。
将来(尽管可能是立即),当您准备好时,您可以将您的客户迁移到新的 Price。最干净的方法是使用SubscriptionSchedule。这个想法是,您可以定义订阅可以经历的多个“阶段”。这允许“链接”或“计划”您的订阅的未来更改。您的 SubscriptionSchedule 将有两个单独的阶段:
使用此方法的优点是,您可以将价格更改推迟到下个月,以便它准确反映他们在下一个周期(例如月底)之前支付的费用。缺点是管理这些对象可能会有点困难,因为它们有点复杂。
另一种有时更简单的方法是立即更新订阅价格。这样做会导致按比例分配,因为我们计算他们已支付的费用和所欠费用之间的差额。通常,对于像您这样的迁移,您希望禁用按比例分配,这是通过proration_behavior: 'none'在更新期间传递来完成的。
您需要编写代码来使用 List Subscriptions API循环所有订阅。您可以传递price参数以仅查看该特定价格的订阅。