如何在Stripe invoice.payment_succeeded事件中添加产品名称?
解决方案:在Stripe Webhook事件中直接获取产品名称
你遇到的问题是Stripe默认不会在invoice.payment_succeeded事件的price对象里内嵌完整的product信息,仅返回product ID。要避免额外API调用直接拿到产品名称,可通过以下方式实现:
方法1:配置Stripe Webhook的Expand参数
Stripe支持通过Expand功能在Webhook事件中展开关联对象,具体操作步骤:
- 登录Stripe Dashboard,进入「Developers > Webhooks」页面
- 找到对接Salesforce的Webhook端点,点击「Edit」
- 在「Expand」设置项中,添加展开路径:
line_items.data.price.product - 保存配置后,后续触发的
invoice.payment_succeeded事件中,price对象会内嵌完整的product数据,其中包含name字段(即产品名称)
配置后,你收到的事件数据会类似这样:
"line_item": { "id": "il_1PquZpH7y1vTSDCCuvYIkWJG", "price": { "id": "price_1PXgkiH7y1vTRsp1KGus2gRw", "product": { "id": "prod_PjY8saXZSU4b", "name": "示例产品名称", "metadata": {}, // 其他产品相关字段 }, "currency": "usd", // 其他price相关字段 }, // 其他line_item字段 }
方法2:检查Salesforce连接器的扩展配置
如果你使用的是官方或第三方Salesforce-Stripe连接器,部分连接器会提供可视化配置选项,允许你选择要展开的Stripe对象。在连接器的Webhook事件配置界面,查找是否有「扩展关联对象」或类似选项,勾选展开product关联即可。
如果连接器没有提供该选项,直接采用方法1在Stripe端配置Expand参数即可生效。
内容的提问来源于stack exchange,提问作者SFDC-Beginner
相关产品推荐
相关产品推荐

