我使用laravel收银台创建基于订阅的计划购买系统,Braintree作为支付网关。
我的订阅已成功创建,我的问题是取消时。
我解雇后:
$user->subscription('pro')->cancel();
用户已成功转入宽限期,用户在其计划实际到期之前有剩余天数,但在Braintree上,订阅仍处于有效状态且未取消。
然而,当我解雇时:
$user->subscription('pro')->cancelNow();
Braintree上的订阅现已标记为已取消。
我的问题是,如果收银员没有将Braintree中的订阅标记为已取消,那么Braintree将如何知道不向该用户收费。
也许我在这里遗漏了一些东西......在使用Briantree PHP SDK取消订阅时,我是否需要自己处理?如果有人之前有过这个问题并找到了解决方案,那么您的意见将不胜感激。
答案 0 :(得分:0)
好的,实际上设法解决了这个问题。
解雇:
$user->subscription('pro')->cancel();
cancel() 方法实际上做的是将您在Braintree上的订阅设置为在1个结算周期后结束,以便在下一个结算日期取消Braintree订阅。要验证这一点,您需要做的是。从Braintree仪表板中查找订阅并“编辑”订阅,您将发现结算周期将设置为在1个周期后结束。
调用方法:
$user->subscription('pro')->resume();
对于宽限期内的用户,也会将订阅的结束时间设置为从不