> ## Documentation Index
> Fetch the complete documentation index at: https://storekit.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Retry Policy

> Reference for the exponential backoff retry schedule for failed webhook deliveries — including timing, attempt limits, and unreachable endpoint handling.

If your endpoint doesn't return a successful response, storekit will retry the webhook multiple times with exponential backoff.

## What Counts as a Failure?

A webhook delivery is considered failed if:

* Your endpoint returns a non-2xx status code
* Your endpoint doesn't respond within 15 seconds
* The connection to your endpoint fails

## Retry Schedule

Failed webhooks are retried with exponential backoff over approximately 3 days:

| Attempt | Delay After Previous |
| ------- | -------------------- |
| 1       | Immediate            |
| 2       | 5 seconds            |
| 3       | 5 minutes            |
| 4       | 30 minutes           |
| 5       | 2 hours              |
| 6       | 5 hours              |
| 7       | 10 hours             |
| 8       | 24 hours             |

After all retry attempts are exhausted, the webhook is marked as failed.

## Endpoint Disabling

If all delivery attempts to a specific endpoint fail for a period of **5 consecutive days**, the endpoint will be automatically disabled to prevent further failed deliveries.

To re-enable a disabled endpoint:

1. Go to your storekit Dashboard
2. Navigate to **Settings > Webhooks**
3. Find the disabled endpoint
4. Click **Enable Endpoint**

## Manual Retries

You can manually retry failed webhooks from the dashboard:

1. Go to your webhook endpoint details
2. Find the failed message in the logs
3. Click **Retry** to resend

## Recovering from Outages

If your service experiences downtime, you can recover missed webhooks:

1. Go to your endpoint in the dashboard
2. Click **Options > Recover Failed Messages**
3. Select a time window to replay

<Tip>
  Design your webhook handler to be idempotent so that receiving the same webhook multiple times doesn't cause issues.
</Tip>
