需要一些关于使用 Stripe 区分订阅的建议

问题描述 投票:0回答:1

在条纹中我有 2 个产品。 每月订阅(初学者 50 美元)。 每月订阅(高级版 70 美元)。

用户(家长)可以填写“将学生添加到课程”表格。结果是为每个报名参加课程的孩子创建包含特定内容的选项卡。 如果用户为每个孩子支付订阅费用,则在我的 supabase“订阅”表中,student_id 列将填充学生 ID,该 ID 是学生表的外键。 因此,家长可以为他/她的每个孩子订阅多个内容。

问题:假设两个孩子都是课程的初学者。如果我从父级页面转到 stripe 客户门户,我将有 2 个订阅,均名为“每月订阅”。

如何区分两者?类似“汉娜的每月订阅”和“保罗的每月订阅”,或者添加带有他们名字的描述或标签,idk。我被困住了...

看起来我只能创建一个客户门户,但我只能看到 2 个订阅“每月订阅”

next.js stripe-payments supabase
1个回答
0
投票

因此,如果您告诉我您的订阅是使用 Stripe Checkout 创建的,那么您就有了一个完美的解决方案。
如果没有,你还有办法,但是够尴尬的了……

如果您从后端创建结账会话,那么您可以使用此代码创建具有自定义名称的变量产品:

 const session = await stripe.checkout.sessions.create({
   success_url: 'https://example.com/success',
   line_items: [
     {
        price_data: {
          unit_amount: amount,
          currency: 'usd',
          recurring: {interval:'month'},
          product_data: {name: 'Monthly Subscription for Hannah'}
        },
        quantity: 1,
     },
   ],
   mode: 'subscription',
 });

结果:

除非我误解了你的问题,否则这正是你想要的:

  • 集成简单,UI 类似于计费门户。
  • 产品准确地展示了您想要的样子。
  • 这些临时价格和产品仅适用于本订阅,它们不能用于其他客户/订阅,并且不会扰乱您的 Stripe 帐户。

如果您不使用 Stripe Checkout,那么它就不太好,因为您无法创建那些临时产品。您可以创建临时价格,但这对您没有好处,因为计费门户上显示的是 Product.name,与价格无关。
最终,如果您不使用 Checkout,那么您需要在订阅之前单独创建每个产品(例如使用

name='Subscription for Hannah
)。

© www.soinside.com 2019 - 2024. All rights reserved.