从条带事件中获取产品 ID(结帐会话已完成)

Posted

技术标签:

【中文标题】从条带事件中获取产品 ID(结帐会话已完成)【英文标题】:Get product id from stripe event(checkout session completed) 【发布时间】:2021-10-27 05:37:19 【问题描述】:

在我的 webhook 上完成付款后,我收到了来自 stripe 的事件。 事件类型是 "checkout.session.completed" 通过下面的代码我可以检索会话 ID

        IHasId session = stripeEvent.Data.Object as Session;

但我也需要产品 id,有什么办法可以找回它?

【问题讨论】:

您将检索会话的行项目(例如stripe.com/docs/expand#includable-properties),然后可以查看产品详细信息:stripe.com/docs/api/checkout/sessions/… 我的会话不包含 line_items( 是的,您必须单独检索它(我的第一个链接),它们是默认情况下不包含的“可包含”属性。 【参考方案1】:

您必须调用条带 API 才能获取订单项。

https://stripe.com/docs/api/checkout/sessions/line_items

在您的 webhook 收到 "checkout.session.completed" 事件后。您可以使用询问行项目调用会话 GET API。然后您会在订单项中找到您的产品 ID。

【讨论】:

以上是关于从条带事件中获取产品 ID(结帐会话已完成)的主要内容,如果未能解决你的问题,请参考以下文章

获取与 Stripe 结帐会话关联的费用 ID

条带结帐会话与 Firebase ***等待错误的集成

使用贝宝快速结帐完成付款后如何获取授权ID

无法将价格传递给 Stripe Checkout nodejs

如何通过phpunit上的所有测试保留会话?

如何使用 Ajax 提交 Flask-WTF 表单