Webhook Debugging Guide
Work through these four steps in order when a webhook is not arriving. The first two tell you whether your endpoint is reachable at all, and the table after them matches what you saw to what to do about it.
Step 1: Check the Webhook Itself
- Go to Account > Webhooks.
- Check the webhook is active, with the toggle on.
- Check the URL is right, and that it is HTTPS.
- Check the event types you have subscribed to.
Step 2: Test the Connection
- Click Test Webhook.
- If it succeeds, your endpoint is reachable and the problem is further down.
- If it fails, find the symptom in the table below.
Step 3: What Each Failure Means
| Symptom | Cause | Fix |
|---|---|---|
| Test fails | The endpoint cannot be reached | Check the URL, the DNS record and your firewall |
| Test fails | An SSL or TLS error | Renew or repair the certificate |
| Test fails | The endpoint answered with something other than 200 | Return a 200 from the endpoint |
| Events missing | The wrong event types are subscribed | Check which events the webhook is subscribed to |
| Events missing | Nothing has been sent | Events only fire while you are sending |
| Intermittent | Your endpoint is rate limiting us | Raise the limit, or buffer what arrives |
| Intermittent | Your endpoint is timing out | Raise the timeout on your server |
Step 4: Watch a Payload Arrive
Point the webhook at webhook.site for a few minutes. It gives you a URL that captures whatever we post to it, so you can read the payload and its headers and confirm your own endpoint is reading the JSON the same way.