You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Stripe先发送invoice.payment_failed事件,即便订阅交易已成功?

Stripe订阅成功却先触发invoice.payment_failed的原因

这种情况在使用Stripe Checkout创建订阅时非常常见,核心原因是订阅初始化与Checkout付款流程的时序差:

  • 当用户进入Checkout页面发起订阅请求时,Stripe会先创建订阅对象并生成对应的初始发票,同时立刻尝试对该发票执行扣款操作
  • 但此时用户还未完成Checkout页面的付款步骤(比如还没输入支付信息或确认付款),这次扣款必然失败,所以会触发invoice.payment_failed事件
  • 等用户在Checkout页面完成所有付款操作后,Stripe会重新处理这张发票的付款(或生成新的有效付款记录),最终完成订阅流程,触发checkout.session.completed事件

简单说就是:Stripe在订阅创建时的“预扣款”是在用户实际付款前执行的,失败属于流程内的正常中间状态,不代表最终订阅付款失败。

你可以查看invoice.payment_failed事件里的发票ID,和后续成功付款的发票ID是否一致——通常是同一张发票,后续会有invoice.paid事件补全完整流程。

内容的提问来源于stack exchange,提问作者JAY

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 12:08:10