- Shipped
- October 22, 2026 at 9:01 PM UTC
- Author
- Kamo
- Commit
- 4866460
The live webhook endpoint renders events at 2026-03-25.dahlia; stripe-java pins 2024-12-18.acacia, so every invoice, payment and subscription event since has failed and account_invoices never received a row. When an event body cannot be read, fetch the object it names by id - that request goes out at the pinned version, so it always deserializes - and dispatch that. StripeWebhookReplaySweep (every 15 min, single pod) re-fetches events still unprocessed after 10 minutes and runs them through the same dispatch, for the 30 days Stripe keeps them. That also recovers the October events Stripe stopped retrying.
