Why Isn't My Payment Gateway's Webhook Reaching WooCommerce?

A payment gateway's webhook request being blocked before reaching WooCommerce's endpoint, due to a firewall or misconfigured URL

Why WooCommerce Webhooks Matter

Webhooks let the gateway notify WooCommerce asynchronously about events that happen outside the immediate checkout request — a delayed payment confirmation, a dispute being opened, a subscription renewal succeeding on the gateway's own schedule. When a webhook fails to arrive, WooCommerce simply never finds out about that event, which can leave orders stuck in an incorrect status indefinitely rather than producing an obvious error.

Common Causes of a Missed Webhook

  • The webhook endpoint URL configured in the gateway's dashboard is incorrect, outdated after a domain change, or was never actually set up during initial gateway configuration.
  • A firewall, security plugin, or hosting-level bot protection blocking the gateway's server IP ranges, mistaking legitimate webhook traffic for an attack — this is a very common and often overlooked cause.
  • A webhook still configured for test/sandbox mode after the store switched to live, or vice versa, sending events to an endpoint that isn't listening in the current mode.
  • A caching plugin intercepting the webhook request and returning a cached response, rather than letting it reach WooCommerce's actual endpoint handler.
  • A webhook signature verification failure silently rejecting genuine requests, if API keys or a webhook signing secret were rotated on one side but not updated on the other.

How to Diagnose and Fix It

  1. Check the gateway's own webhook delivery log (most dashboards show delivery attempts and their response codes) to see exactly what happened on send.
  2. Confirm the endpoint URL is correct and matches the current mode (test vs. live) the gateway is running in.
  3. Temporarily disable firewall/security plugins on a staging copy to test whether one is blocking the request.
  4. Verify any signing secret or API key used for webhook verification matches on both sides if signature validation is failing.
  5. Exclude the webhook endpoint from caching if a caching plugin is active and might be intercepting the request.

Orders stuck in the wrong status because of missed webhooks? See WooCommerce fixes.

Available for new projects

NEXT STEP

Rather have it fixed than keep reading?

Based in Bangladesh — serving clients worldwide. Tell me what's happening and you'll have a reply within one working day.

  • Reply within one working day
  • Fixed quote before work starts
  • UK, EU and US hours covered