我可以使用以下内容从数据库中检查订阅。 这将输出数据库中的数据。
{{Auth::user()->subscriptions }}
但是,如何通过Stripe检查该订阅是否仍然有效?
如果订阅被取消或用完,该数据库/系统如何知道这一点。
我希望有类似 ConnectToStripe('CustomerStripeID')的内容来检索订阅详情
p.s - 没有足够的代表添加标签:5.4,Stripe或Cashier
答案 0 :(得分:0)
我没有使用Stripe,但根据docs,您可以应用->subscribed('plan_name'
)来检查订阅,快速示例:
if(Auth::user()->subscribed('plan_name')){
//he is subscribed!
}
所以你必须循环你的订阅计划来检查所有:
@foreach(Plans::get() as $plan)
{{(Auth::user()->subscribed($plan->plan_name)) ? 'Subscribed!' : 'Not Subscribed'}}
@endforeach
答案 1 :(得分:0)
我在订阅状态方面遇到了同样的问题。有时订阅在 Stripe 中成功,但在我的本地数据库中没有。所以我不得不用 Stripe 检查它并手动更新它。
$user = Auth::user();
$subscription = $user->subscription('default');
$id = $subscription->latestPayment()->id;
$payment = new Payment(
StripePaymentIntent::retrieve($id, Cashier::stripeOptions())
);
if($payment->isSucceeded()){
// update subscription status
}