Stripe Webhook静默丢事件?自查与修复
如果你的 Stripe 订阅支付相关 webhook 从未检查过 Event deliveries 视图,过去 30 天内可能有失败投递未被发现。Stripe 对非 2xx 响应会重试最多 3 天(约 16 次),持续失败后自动禁用端点并邮件通知——这是事件静默丢失的最大来源。
常见丢事件原因:
- 端点持久性故障(如签名密钥未同步,返回 400)
- 防火墙封禁 Stripe IP 或端点 URL 变更后未更新
- 端点被手动禁用/删除后未恢复
- 数据库连接池耗尽导致超时
检查方法:打开 Workbench → Webhooks → 对应端点 → Event deliveries 查看最近 30 天失败记录;同时记录每次收到的 webhook(event_id、type、timestamp),与 Dashboard 对比计算丢失率。
修复建议:handler 应快速返回 200,处理放入后台队列,并基于 event.id 做幂等存储;对关键事件(如 invoice.payment_failed)使用 List Events API 定时对账。
原文链接
#开发者 #工具
📢 频道:@DevToolboxHub
Post #600
1
