HookShield
Start monitoring

SHOPIFY WEBHOOKS

webhook.deleted

Shopify deleted your webhook subscription after failed deliveries

Shopify retries failed webhook deliveries (19 attempts over ~48 hours), then deletes the subscription entirely. After deletion, the shop fires events at nothing — no subscription, no errors, no events. It’s the most complete silent drop in the ecosystem.

Why Shopify webhooks fail silently

Deletion is permanent and quiet

Once the subscription is removed, your app receives nothing — and nothing in the Shopify admin makes it obvious unless you re-check your webhook list.

Notification goes to the developer email

Shopify warns the app’s developer contact — often an old personal inbox or a developer who left, never the ops channel.

Failure usually starts elsewhere

A deploy that moved the route, an expired SSL cert, or a host change starts the failure chain — Shopify just finishes it.

The fix

  1. 1

    List your webhook subscriptions

    Query the Admin API webhook list (or check your app’s shopify.app.toml subscriptions) — if the topic is missing, it was deleted.

  2. 2

    Fix the delivery failure first

    Whatever was failing (dead route, cert, slow handler) must be fixed before re-registering, or you’ll be deleted again within 48 hours.

  3. 3

    Re-register the subscription

    Re-create the webhook via the Admin API webhookSubscriptionCreate mutation or your app config.

  4. 4

    Backfill the gap

    Deleted-subscription events are unrecoverable — reconcile via the REST/GraphQL resources API for the outage window.

  5. 5

    Heartbeat the inbound stream

    With HookShield as the ingest target, a heartbeat ping proves the shop→you path is live. When events stop arriving, you’re alerted — before Shopify gives up on you.

DEAD-MAN'S SWITCH

Never find out about a dead webhook from a customer again

Point Shopify 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 Shopify webhook fixes