繁体   English   中英

如何在 Stripe 结帐中访问项目元数据 session

[英]How to access items metadata in Stripe checkout session

当我创建 Checkout session 时,我正在使用price_dataproduct_data属性即时创建价格。 对于每个项目,我将元数据放入product_data.metadata属性中。

支付成功后,我获取session数据,以便向客户显示支付成功页面。 但由于某种原因,项目的元数据是空的。 当我在仪表板中检查时,项目的元数据存在,但当我使用 API 获取它时,它们是空的。

我尝试使用扩展line_items属性获取整个 session 数据:

const session = await stripe.checkout.sessions.retrieve(session_id, { expand: ['line_items'] });

而且我还尝试直接获取项目:

const line_items = await stripe.checkout.sessions.listLineItems(session_id);

在这两种情况下,每个项目的元数据都是空的。

在动态创建项目时,元数据最终位于产品属性中,而不是价格属性中。

所以我通过使用产品数据扩展项目解决了这个问题:

const line_items = await stripe.checkout.sessions.listLineItems(session_id, {
  expand: ['data.price.product'],
});

响应具有product属性中的元数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM