【发布时间】:2022-01-23 11:10:33
【问题描述】:
我目前正在将 Stripe 结帐添加到我的应用程序中。我的目标实际上是至少拥有尽可能多的代码。
documentation 说我需要处理至少三种不同的 webhook 类型:
- checkout.session.completed
- invoice.paid
- invoice.payment_failed
我尽量避免在 Stripe 中处理任何客户,我认为结帐组件没有必要。
但是,我仍然需要 webhook 中的用户 ID 来相应地更新状态。
在后端创建会话时,我将添加字段client_reference_id。
对于状态checkout.session.completed,我得到了这个字段,一切都很好。
对于invoice.paid 我不明白,我需要在会话中使用subscription_data.metadata 来获取此数据。
对于invoice.payment_failed,我不知道如何获取它或如何使用 CLI 对其进行测试,因为我无法添加元数据,也无法添加 client_reference_id。
您知道这里的最佳做法是什么以及我应该如何实施吗?或者我真的应该在 Stripe 中处理客户吗?
谢谢!
【问题讨论】:
标签: stripe-payments