HookShield
Start monitoring

STRIPE WEBHOOKS

endpoint.disabled

Stripe webhook endpoint disabled — why events silently stopped

Stripe automatically disables webhook endpoints that fail repeatedly — usually after days of non-2xx responses or timeouts. Once disabled, Stripe stops attempting delivery entirely, and events vanish with no retry and no error in your logs.

Why Stripe webhooks fail silently

Auto-disable is the default behavior

Stripe disables endpoints after sustained delivery failures (roughly several days of non-2xx responses or unreachable hosts in live mode). The only notification is an email to your account admin — easy to miss.

No dead letters after disable

Once an endpoint is disabled, Stripe doesn’t queue or retry. New events are generated but delivered nowhere — the classic silent drop.

Health checks only test the host, not the handler

Uptime monitors ping your domain, not your webhook route. Your endpoint can be returning 404s for weeks while the site health check stays green.

The fix

  1. 1

    Check endpoint status in the Dashboard

    Go to Developers → Webhooks. If the endpoint shows "Disabled," that’s your confirmation — Stripe stopped sending.

  2. 2

    Fix the failure mode first

    Ensure the route returns a 2xx quickly (under a few seconds). Move heavy processing to a queue — Stripe only cares about acknowledgement, not completion.

  3. 3

    Re-enable the endpoint

    In the Webhooks settings, re-enable the endpoint. Stripe resumes delivery for new events immediately.

  4. 4

    Replay the gap

    Missed events aren’t re-sent automatically. Use the Dashboard’s "Resend" on individual events, or reconcile state via the Events/API objects for the outage window.

  5. 5

    Put a dead-man’s switch in front

    Point Stripe at a HookShield ingest URL so every delivery is logged and your endpoint is pinged on a heartbeat — you get alerted the moment deliveries stop arriving, not days later.

DEAD-MAN'S SWITCH

Never find out about a dead webhook from a customer again

Point Stripe at a HookShield ingest URL. Every delivery is logged, signed, and forwarded — and if pings stop arriving, you're alerted before the silence becomes an incident.

More Stripe webhook fixes