使用asp.net在Stripe中定义的计划之上的额外付款

时间:2015-03-24 07:16:29

标签: asp.net vb.net webforms stripe-payments

On Stripe是否存在任何API,客户可以在单笔交易中支付额外费用以及计划金额? 场景是,总费用基于用户数量。意味着1个用户需要100美元才能收费,基本计划金额为3000美元。虽然购买许可证客户必须定义​​用户数量,例如5(所以5 * 100 = 500)+ 3000(基本计划金额)所以总计3500美元应该在单笔交易中支付。用户数可能会有所不同。那么如何为这种情况编写Stripe代码。

1 个答案:

答案 0 :(得分:0)

首先,您将创建100美元的计划,并根据您的客户目前拥有的用户数量设置quantity,以便数量为5时最终支付500美元。您可以更新数量并让Stripe处理比例。

然后,您将使用Invoice Items更改您希望在每个结算周期向客户收取的金额。发票项目会自动添加到客户的下一张发票中,以便您可以收取3000美元+ 500美元的费用。

然后,您必须使用Stripe的webhooks来通知您的Stripe帐户中发生的事件。这样,您就可以收听invoice.created事件并为此发票创建发票项目,以更改向该客户收取的金额。

最后,您将遵循以下步骤:

  • 使用卡片令牌在Stripe中创建客户。
  • 为第一张发票创建第一个$ 3000发票项目,因为默认情况下该发票总是关闭。
  • 使用预期的quantity创建100美元月度计划的订阅。这将自动计算之前创建的发票项目。
  • 每个月,都会收听invoice.created事件,并以3000美元的价格创建一个新的发票项目。

有些人发现更容易构建的另一个解决方案是使用订阅的quantity参数向每个客户收取不同的金额。例如,您可以创建一个1美元的月度计划,并为仅支付一个用户(3100美元)或3500个支付5个用户(3500美元)的客户设置数量为3100。 subscriptions guide中也详细说明了这一点。