将Stripe签出会话与订阅webhook关联



我正在使用Stripe处理正在设置的订阅服务的付款。

我从我的客户那里收集相关信息,然后在服务器端,我使用Stripe PHP IDE来设置一个新客户,并为我设置为订阅的price对象创建一个签出会话。我将结账会话ID保存到我的数据库中,然后使用相同的会话ID客户端通过重定向到Stripe从客户那里获得付款。

然后,webhookcheckout.session.completed让我将上一个签出会话ID与订阅ID链接起来。然后,我需要第二个webhookcustomer.subscription.updated从订阅ID中获取订阅的状态。

感觉我在这里做错了什么。我正在使用两个webhook来获取我需要的信息。如果checkout.session.completedwebhook在customer.subscription.updatedwebhook之后到达,那么我的逻辑将失败。

有没有更好/正确的方法来管理这个流程?

这里只需要checkout.session.completed。该事件表示结账和付款成功。

我将忽略初始customer.subscription.updated事件,如果您需要该状态,则使用https://stripe.com/docs/api/subscriptions/retrieve当您收到checkout.session.completed事件时。

最新更新