使用条带和动态计划的会员订阅

Membership subscription using stripe with dynamic plans

我们的支付网关使用 stripe。

我们有 X 种不同货币的产品,我们希望保留这些产品以供订阅。用户可以选择这些 X 产品的任意组合并支付会员价格(每月)并使用他们选择的组合。

因此,计划可以是客户选择支付的货币的任意随机数。用户选择产品后,将生成月度计划的费用。例如:选择2种不同的产品时,定价可以为x1 + x2 = x3,这可能导致任何数字$ 5.9,€10,£99.89等。

在这种情况下如何创建可以处理多种货币的计划?

有几个选项可以做到这一点,但我正在寻找一种非常优雅的方法来解决这个问题

选项 1: 即时创建计划可能是一种选择,但每个客户都会有一个计划,这最终会导致计划太多并最终弄乱仪表板。

选项 2: Stripe 还提供了一个数量选项,但不确定它在这种情况下会非常有用。

我在这里通常推荐的是在你这边构建逻辑。您跟踪客户订阅的 "plans",以便每个月您都可以修改他们的发票并向他们收取预期金额。我们的想法是为所有客户订阅 $0 计划,以便您每月决定该金额。

为此,您将使用 Invoice Items that can be added to an invoice and appear as a line item on the email receipt. You would then use Stripe's webhooks 来接收有关您的 Stripe 帐户中发生的事件的通知。这样您就可以侦听 invoice.created 事件并为此发票创建一个发票项目以更改向该客户开具的账单金额。您还可以创建多个项目(每个计划一个)以清楚地概述正在支付的内容。

您需要遵循以下流程:

  1. 使用卡令牌在 Stripe 中创建客户。
  2. 为第一张发票创建第一个发票项目(默认情况下始终关闭)。
  3. 创建对 $0 月度计划的订阅 => 自动为之前创建的发票项目开具账单。
  4. 每个月,侦听 invoice.created 事件并为正确的金额创建新的发票项目。

需要注意的是,在这种情况下,您必须按比例分配,但这允许某人添加额外的选项,而不必弄清楚如何将他们转移到新的自定义计划以及所有需要的东西。