我目前正在建立一个网站,使用户可以通过不同的计划订阅不同的报价。
有两个要约:offerA和offerB。 对于这些报价中的每一个,都有几个计划相关联,从而有可能在不同的时间段内计费。 订阅要约A后,您将在应用程序中获得A特权。订阅商品B后,您将在应用程序中获得A特权和B特权。没有办法只能单独获得B特权。
计划示例:
A1 : 5$ billed monthly
A2 : 12$ billed each 3 months
A3 : 20$ billed each 6 months
B1 : 7$ billed monthly
B2 : 17$ billed each 3 months
B3 : 30$ billed each 6 months
我设法通过一个要约使一切正常工作(一次只提供offerA作为选择)。我给用户改变计划的可能性。例如,如果他在A1中,他可以要求更改为A2。系统将取消Stripe中A1的自动续订,并在A1计费期结束时开始/开具新的A2订阅。如果他会在A2开始之前改变主意,那么他可能会取消即将推出的A2,转回A1的自动续订,等等...
现在我有两个要约...我面临一些问题。
我希望用户能够升级他们的报价。
场景: 用户拿A2。因此,他立即被收取12美元的费用,并获得3个月的特权A。在第二个月末,他想切换到B3。我不能让他等到A2期结束才能开始/开新B3!我也不能只是立即取消他的A2并开始B3,这使他在A2的最后一个月中失去了钱。我可以计算一下,以正确的价格为他提供B3,但哇,它开始变得混乱了。
所以我想到了另一种方式:
offerA和offerB可以是累积的。 offerB将不再代表特权A和特权B,而仅代表特权B,因此不能单独使用。
计划示例:
A1 : 5$ billed monthly
A2 : 12$ billed each 3 months
A3 : 20$ billed each 6 months
B1 : 2$ billed monthly
B2 : 5$ billed each 3 months
B3 : 10$ billed each 6 months
场景: 用户拿A2。因此,他立即被收取12美元的费用,并获得3个月的特权A。在第二个月末,他希望获得特权B和A 6个月。我可以开A3 + B3,但他又会在A2的最后一个月中放开钱。 另外,他会收到2张帐单,这是我要避免的事情。
我不知道该如何处理。
你们是否曾经构建过类似的东西,您知道条纹支付的良好做法是什么吗?感谢您的帮助。