StripeCloudflareNGINX

Reverse proxy modifies webhook request causing signature verification failure

critical
configurationUpdated Mar 5, 2026(via Exa)
How to detect:

Webhook verification works locally but fails in production when Cloudflare, nginx, or reverse proxy modifies request bytes before they reach the handler. Compression, encoding rules, or security filters alter the payload, breaking signature validation.

Recommended action:

Bypass proxy and hit server directly to confirm. If verification passes, the proxy is modifying requests. For Cloudflare, whitelist Stripe's IP ranges to pass through without transformation. For nginx, disable compression and body modifications on webhook endpoint.