Braintree - 未来订阅取消
Braintree - Future subscription cancellation
我正在寻找一种方法来设置 'expiry' 到期订阅的日期。当前的业务规则允许用户在计费期结束之前仍然可以访问系统。
因为在那段时间里,用户仍然可以购买插件,而 Braintree 的按比例分配帮助我们对这个即将到期的订阅收费。以下是我的一些想法:
1) 将计费周期数从INFINITE设置为0或-1?我没有找到太多关于此的文档,我想知道我是否这样做,在下一个计费周期,订阅会 "expire"? (我会 运行 测试它,但我想我会把它放在这里)
编辑:计费周期数必须大于 0,但将值设置为 1 似乎将到期日期设置为在周期结束时到期,这可能会解决我的问题。 (我猜 Braintree 假设当前计费周期被计为 1。)
2) 如果用户决定继续订阅,我可以将计费周期改回 INFINITE 并继续订阅,就好像什么都没发生一样。
3) 当用户升级到不同的包时,会发生同样的情况。将创建新订阅,并在当前订阅计费周期结束后开始使用未来日期。
4) 还是我必须将它们全部带回家并让我自己 CRON/Jobs 运行 处理这些情况?
请告诉我您的想法,或者提出更好的解决方案。
ANSWER: I solved this issue by setting the number_of_billing_cycles
to be equal to the current_billing_cycle
as mentioned by jellenberger. This sets an expiry date to the current subscription thus allowing me to still charge to the same subscription.
完全披露:我在 Braintree 工作。如果您有任何其他问题,请随时联系 support.
在循环计费中,有许多方法可以解决此类问题,并且没有针对每个计费流程的 "right solution"。但最重要的是,您可以根据 billing_period_end_date
和 current_billing_cycle - number_of_billing_cycles == 0
.
计算最终周期中的到期日期
如果您希望允许客户在最后一个计费周期完成后接收插件,您可以将计费周期数延长一个,然后将 price to be zero, or add a discount with amount
更新为等于订阅价格。或者,更简单地说,您可以使用客户的默认付款方式为按比例分配的金额创建新交易。
为了帮助更好地管理这些操作,有许多 Webhooks that pertain to subscriptions, and may aid in avoiding the need to write your own cronjob. If you need further help with your integration, feel free to reach out to Braintree Support。
我正在寻找一种方法来设置 'expiry' 到期订阅的日期。当前的业务规则允许用户在计费期结束之前仍然可以访问系统。
因为在那段时间里,用户仍然可以购买插件,而 Braintree 的按比例分配帮助我们对这个即将到期的订阅收费。以下是我的一些想法:
1) 将计费周期数从INFINITE设置为0或-1?我没有找到太多关于此的文档,我想知道我是否这样做,在下一个计费周期,订阅会 "expire"? (我会 运行 测试它,但我想我会把它放在这里)
编辑:计费周期数必须大于 0,但将值设置为 1 似乎将到期日期设置为在周期结束时到期,这可能会解决我的问题。 (我猜 Braintree 假设当前计费周期被计为 1。)
2) 如果用户决定继续订阅,我可以将计费周期改回 INFINITE 并继续订阅,就好像什么都没发生一样。
3) 当用户升级到不同的包时,会发生同样的情况。将创建新订阅,并在当前订阅计费周期结束后开始使用未来日期。
4) 还是我必须将它们全部带回家并让我自己 CRON/Jobs 运行 处理这些情况?
请告诉我您的想法,或者提出更好的解决方案。
ANSWER: I solved this issue by setting the
number_of_billing_cycles
to be equal to thecurrent_billing_cycle
as mentioned by jellenberger. This sets an expiry date to the current subscription thus allowing me to still charge to the same subscription.
完全披露:我在 Braintree 工作。如果您有任何其他问题,请随时联系 support.
在循环计费中,有许多方法可以解决此类问题,并且没有针对每个计费流程的 "right solution"。但最重要的是,您可以根据 billing_period_end_date
和 current_billing_cycle - number_of_billing_cycles == 0
.
如果您希望允许客户在最后一个计费周期完成后接收插件,您可以将计费周期数延长一个,然后将 price to be zero, or add a discount with amount
更新为等于订阅价格。或者,更简单地说,您可以使用客户的默认付款方式为按比例分配的金额创建新交易。
为了帮助更好地管理这些操作,有许多 Webhooks that pertain to subscriptions, and may aid in avoiding the need to write your own cronjob. If you need further help with your integration, feel free to reach out to Braintree Support。