在 checkout.session.completed 中为首次付款提供订阅
Provision subscription in checkout.session.completed for first payment
当我创建结帐会话时,我在元数据中包含 user_id。这允许我在触发 checkout.session.completed
事件时检索 user_id,我需要它来为该用户在数据库中保存条带客户 ID。
这是正确的方法吗?
我现在遇到的问题是,每当创建第一笔付款时,鉴于此逻辑,我将需要在 checkout.session.completed
事件中提供订阅,以后的付款将由 invoice.paid
处理事件。这是因为 invoice.paid
只能通过客户 ID 识别用户,客户 ID 由 checkout.session.completed
填充。
问题:
- 我存储客户 ID 的方法是否正确?
- 如何从
checkout.session.completed
事件中为第一笔付款提供订阅,然后由 invoice.paid
提供未来的付款?
要配置和监控订阅,Stripe recommends 监听三个事件:checkout.session.completed
、invoice.paid
和 invoice.payment_failed
。
如果您需要 user_id
来提供订阅,那么可以将其添加到结帐会话元数据中。
当您收到 invoice.paid
事件时,您可以使用 subscription
property of the invoice. And then, if needed, you can find the Checkout Session for that subscription with the list checkout sessions 端点检索关联的订阅并传递订阅 ID。
当我创建结帐会话时,我在元数据中包含 user_id。这允许我在触发 checkout.session.completed
事件时检索 user_id,我需要它来为该用户在数据库中保存条带客户 ID。
这是正确的方法吗?
我现在遇到的问题是,每当创建第一笔付款时,鉴于此逻辑,我将需要在 checkout.session.completed
事件中提供订阅,以后的付款将由 invoice.paid
处理事件。这是因为 invoice.paid
只能通过客户 ID 识别用户,客户 ID 由 checkout.session.completed
填充。
问题:
- 我存储客户 ID 的方法是否正确?
- 如何从
checkout.session.completed
事件中为第一笔付款提供订阅,然后由invoice.paid
提供未来的付款?
要配置和监控订阅,Stripe recommends 监听三个事件:checkout.session.completed
、invoice.paid
和 invoice.payment_failed
。
如果您需要 user_id
来提供订阅,那么可以将其添加到结帐会话元数据中。
当您收到 invoice.paid
事件时,您可以使用 subscription
property of the invoice. And then, if needed, you can find the Checkout Session for that subscription with the list checkout sessions 端点检索关联的订阅并传递订阅 ID。