Nen*_*vic 6 javascript node.js express stripe-payments
当我创建结帐会话时,我正在使用price_data和product_data属性动态创建价格。对于每个项目,我都将元数据放入属性中product_data.metadata。
付款成功完成后,我获取会话数据以便向客户显示付款成功页面。但由于某种原因,项目的元数据为空。当我在仪表板中检查项目时,项目的元数据存在,但当我使用 API 获取它时,它们是空的。
我尝试使用扩展属性获取整个会话数据line_items:
const session = await stripe.checkout.sessions.retrieve(session_id, { expand: ['line_items'] });
Run Code Online (Sandbox Code Playgroud)
我还尝试直接获取项目:
const line_items = await stripe.checkout.sessions.listLineItems(session_id);
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,每个项目的元数据都是空的。
Nen*_*vic 10
动态创建项目时,元数据最终位于产品属性中,而不是价格属性中。
因此,我通过使用产品数据扩展项目解决了问题:
const line_items = await stripe.checkout.sessions.listLineItems(session_id, {
expand: ['data.price.product'],
});
Run Code Online (Sandbox Code Playgroud)
响应具有product属性内的元数据。
| 归档时间: |
|
| 查看次数: |
1624 次 |
| 最近记录: |