Stripe:使用 Stripe 客户 ID 来识别客户 Webhook 安全吗?

问题描述 投票:0回答:1

我知道我可以将

client_reference_id
设置为结帐会话,但我需要根据 webhook 事件上的条带数据来识别我的系统用户:
charge.succeeded
customer.subscription.deleted
charge.failed
但这些事件似乎不存储
client_reference_id
我可以简单地使用 stripe 客户 id 将我的系统用户链接到任何 webhook 中的 stripe事件然后我也会 为了避免复杂性,即使在结帐 Webhooks 上也忽略
client_reference_id
管理,以避免复杂性,问题是:客户是否可以删除其 id(由客户或 stripe 而不是开发人员)或在 stripe 生命周期中进行更改?(
first_subscription > posterior payments > cancel subscription > resubiscribe
)

stripe-payments
1个回答
0
投票

即使取消订阅,

customer.id
在订阅的整个生命周期中也不会更改。请记住,客户与订阅紧密结合,因此删除客户将导致其订阅被取消。

之所以

charge.succeeded
customer.subscription.deleted
charge.failed
没有
client_reference_id
,是因为该属性特定于 Stripe Checkout,而不是费用和订阅。

作为依赖

customer.id
的替代方案,您可能需要考虑使用
metadata
属性来存储相关客户信息。更具体地说,请查看下面链接的文档中的“间接设置元数据”部分。

获取

client_reference_id
的另一种方法是
list
所有 Checkout 会话,迭代 Checkout 对象并查找
client_reference_id
。请参阅下面链接的 API 参考指南。

相关链接:

© www.soinside.com 2019 - 2024. All rights reserved.