如何使用 firebase 条带扩展添加多个订阅?

Posted

技术标签:

【中文标题】如何使用 firebase 条带扩展添加多个订阅?【英文标题】:How to add multiple subscriptions with firebase stripe extension? 【发布时间】:2021-11-29 02:18:11 【问题描述】:

我正在尝试将类似于 Patreon 的订阅计划集成到我的项目中。

我的目标是拥有一个与条带同步的数组,如下所示:

activePlans: [planId1,planId2,planId3],所以我可以在前端验证它。

我遇到了 Firebase Stripe 扩展,在测试它时我发现我只能向 firebase auth 自定义声明添加一个订阅。

在声称有stripeRole 字段,我只能用订阅产品的一个字符串来设置它。如果用户订阅另一个它会被覆盖,而不是成为一个数组。

由于条带扩展将用户与 firestore 数据库同步,但它再次缺少带有用户订阅计划的 activePlans 数组,而是包含订阅文档的子集合,其中包括有效和过期的会员资格。

有没有办法修改这个扩展来实现我的目标,还是它只能处理单个订阅计划?

【问题讨论】:

【参考方案1】:

不支持使用相同的结帐会话,唯一的方法可能是创建一个具有多个价格的订阅。

一种选择是创建多个订阅;对于 N 个订阅,您的系统将需要向用户发送 N 次结帐。

另一种可能性是不使用结帐功能,而是使用元素收集客户的付款详细信息。 这是一个可以帮助您的文档:https://stripe.com/docs/billing/subscriptions/fixed-price

本指南将引导您了解如何为照片托管服务创建固定价格订阅。它向您展示了如何使用 Stripe Elements 创建您嵌入到应用程序中的自定义付款表单。

使用 Elements 的 Github 示例:https://github.com/stripe-samples/subscription-use-cases/tree/v1.0/fixed-price-subscriptions

Elements 在输入时验证用户输入。为了帮助您的客户发现错误,请监听卡片元素上的更改事件并显示任何错误。

【讨论】:

以上是关于如何使用 firebase 条带扩展添加多个订阅?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Stripe Firebase 扩展 Webhook 运行订阅付款未触发

条带结帐会话与 Firebase ***等待错误的集成

如何使用 Firebase 云功能向客户端(Swift)发送条带响应

如何使用条带测试卡测试订阅中的“未付费”和“未完成”状态?

Firebase 扩展:使用 Stripe 运行订阅付款不会返回 sessionId

在条带客户门户中,有没有办法显示用户订阅的更多信息?