试用期满后将信用卡(在应用程序中)添加到现有的 Stripe 订阅

Add credit card (in app) to existing Stripe subscription after trial expires

我们目前正在使用 Stripe(通过 WordPress 插件)获取信用卡信息以用于我们的 SaaS 应用程序的订阅付款。现在我们要添加免费试用选项 无需信用卡。目前,当用户注册时,Stripe 会在我们的应用程序数据库和 Auth0 中开始创建帐户。我们希望通过使用一个简单的表单将他们的姓名、电子邮件和试用结束日期(没有支付方式)推送到 Stripe,然后希望在应用程序中向他们展示一个表单以提供免费试用期结束时他们的信用卡。

我见过许多产品可以让您注册免费试用并在试用时在应用程序中添加付款方式(不是通过 Stripe 电子邮件或门户)到期了,但我们的开发人员无法弄清楚。我知道我们可以在试用期结束后通过 Stripe webhook 通过电子邮件向用户发送发票,但强烈希望他们在应用程序中输入信息。看起来这应该很简单——我们了解用户,可以从 Stripe 获取他们的订阅 ID,并且只需要为定期每月付款添加付款方式。经过几个小时的搜索,我们两手空空。

谁能指导我找到提供此功能的文档或代码示例?在我和我的开发人员之间,我们花了数小时寻找答案,但一无所获。看起来这应该很容易做到。感谢您的帮助!

假设您已经为客户创建了带有试用版的订阅,您需要侦听 invoice.upcoming 事件 [0] 并检查订阅是否有 default_payment_method 或客户是否有invoice_settings.default_payment_method设置。

然后关注https://stripe.com/docs/payments/save-and-reuse 为客户保存一个payment_method并设置customer.invoice_settings.default_payment_method[1].

如果您想使用 IOS/Android SDK 收集付款明细,这将是一个很好的参考:https://stripe.com/docs/payments/integration-builder

[0]https://stripe.com/docs/api/events/types#event_types-invoice.upcoming [1]https://stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method