我正在使用Stripe来处理我正在设置的订阅服务的付款。
我从我的客户那里收集了相关信息,然后在服务器端,我使用Stripe PHP IDE设置了一个新客户,并为我设置为订阅的price
对象创建了一个结帐会话。我将结帐会话ID保存到我的数据库中,然后使用相同的会话ID客户端通过重定向到Stripe从客户那里获取付款。
然后我需要第二个webhook checkout.session.completed
来从订阅ID中获取订阅的状态。
感觉好像我做错了什么。我正在使用两个webhook来获取我需要的信息。如果checkout.session.completed
webhook在customer.subscription.updated
webhook之后到达,那么我的逻辑将失败。
有没有更好的/正确的方法来管理这个流程?
发布于 2020-08-05 21:56:09
您只需要在这里使用checkout.session.completed
。该事件表示成功结帐和付款。
我会忽略初始的customer.subscription.updated
事件,如果您需要该状态,则在收到checkout.session.completed
事件时使用https://stripe.com/docs/api/subscriptions/retrieve获取订阅。
https://stackoverflow.com/questions/63273971
复制相似问题