Cri*_*ian 5 laravel stripe-payments laravel-cashier
我需要对当前的订阅系统进行更改,并且需要添加用户根据他们想要的功能(模块)按订阅收费的选项。这是一个例子:
BasePlan1_2015:10 美元
功能 1:5 美元
功能 2:10 美元
功能 3:5 美元
续费时,拥有 BasePlan1_2015 和 Feature1 & Feature2 的用户应付费
$10 + ($5 + $10) = $25.
到目前为止我有两个选择:
选项 1:侦听创建的发票的 Webhook,并根据所选功能应用发票行。用户第一次选择他们的功能时,我会将它们添加到发票中,然后开具发票。然后我只需在收到所需发票行的每个 Webhook 处添加即可。
选项2:即时创建新计划。我将在数据库中存储每个功能的成本,当用户选择功能组合时,我将动态创建计划,将总成本等于基本订阅的成本加上所选功能,然后将它们订阅那个具体的计划。如果有人删除或添加新功能,我将创建一个新计划(如果尚未创建)并按比例分配。
我倾向于第二种选择,因为它更加自动化,并且很可能在续订时一切都在 Stripe 端完成。
到目前为止,这两个是我能想到的唯一选择,但我有一种感觉,可能还有其他选择。
有没有人使用过或正在使用 Stripe 类似的东西并且有其他选择?
编辑1
@koopajah I understand that Option 2 is more complicated (already tested it and it feels not so hard to manage) but so far I just cannot get my head around Option 1. I understand how it should work but I find it hard to put it in code. Basically, my issues comes to when users start adding or changing features and when I might need to prorate the time they did not use. I am using a yearly subscription and I have to prorate because of the longer billing cycle.
您是否有任何关于我可以查看并更好地理解如何执行选项 1 的软件包或资源的想法?
Also, I cannot really test webhooks live with stripe but only if I do a daily subscription and wait for days to come and see how webhooks work.
更新 1
遇到了选项 3(来自Stripe FAQ):
以 1 美元购买 BasicPlan1_2015。基本计划的数量为 10 => 10 美元。每个功能都会分配一个数量编号:
功能 1:数量 5 意味着 5 美元
功能 2:数量 10 意味着 10 美元
功能 3:数量 5 意味着 5 美元
现在,当用户添加或删除一项或多项功能时,我只需更新计划数量,我想一切都应该可以正常工作。
BasicPlan1_2015 包含功能 1 和功能 2 的数量应为 10 + (5 + 10) = 25,每个计费周期产生 25 美元的费用。
现在,比较所有三个选项,我更倾向于选项 3。只有一个计划,多个选项和相同的结果,而其他选项则要求我有多个计划或使用 webhooks!
| 归档时间: |
|
| 查看次数: |
883 次 |
| 最近记录: |