00 / free tool
Stripe webhook error decoder
Paste the error from your logs, or the status from Event deliveries. Get what it means, the fix, and the guide that goes deeper.
01 / decode an error
Remove any secrets first. The text stays in this tab either way.
02 / what it knows
a
Delivery statuses
Redirects (3xx), 400, 401 and 403, 404 and 405, 500, timeouts, TLS errors and unable to connect, as Stripe lists them. Stripe: fix HTTP status codes Stripe: view event deliveries
b
Library errors
The signature errors stripe-node throws, test and live mode mix-ups, and two Supabase auth email errors that break sign-ups. For signature errors, the signature checker finds which input is wrong.
03 / questions
- Where do I find the webhook error?
- In Stripe Workbench, open Webhooks, pick your endpoint, then the Event deliveries tab. Click a failed event to see the HTTP status your server returned. Your own function logs show the error text.
- Does Stripe follow redirects for webhooks?
- No. Stripe counts a 3xx answer as a failed delivery. Put the final URL, after any redirects, in your endpoint settings.
- What does a 401 on a Stripe webhook mean?
- Something asked Stripe to log in before your code ran. Common causes are a Supabase Edge Function that still checks for a JWT, Vercel Deployment Protection on a preview URL, or auth middleware on the webhook path.
- Will Stripe retry failed webhooks?
- In live mode Stripe retries for up to three days with exponential backoff. In a sandbox it retries three times over a few hours.
- Is what I paste sent anywhere?
- No. The match runs in your browser. Still, take secrets out of error text before you paste it anywhere.
04 / catch it next time
Every status above means Stripe marked a delivery failed. CheckoutAlarm reads your Stripe account with a read-only key and emails you when events are still undelivered after about 15 minutes, or when an endpoint gets disabled.
Free: 1 site, checked once a day. Pro: $19 a month for up to 3 sites, checked hourly. We only check sites you prove you own, and for Stripe we only take a read-only restricted key. Compare plans
Watch my app freeFree for one app. Checked every day. No card needed.
05 / more free tools
- Stripe webhook signature checkerPaste the raw body, the Stripe-Signature header and your whsec_ secret. See if they match and why not. Runs in your browser.
- Webhook outage cost calculatorHow much money passed through while your webhook was broken, what Stripe will still retry, and whether a quiet spell in sales is normal.