SSSiteSignal Express

Stripe webhook 400 Bad Request checklist

A practical checklist for production Stripe webhook endpoints that return 400 errors after a Payment Link or Checkout Session completes.

Fulfilment checks

  • Separate signature-verification failures from JSON parsing, routing, database, and fulfilment errors in private logs.
  • Check that the deployed endpoint receives the raw body and Stripe-Signature header before any framework middleware mutates the payload.
  • Use the live webhook signing secret for the exact endpoint shown in the Stripe Dashboard.
  • Return 2xx only after accepting the event, then retry failed delivery steps idempotently without charging or emailing twice.

Free helper

Paste the visible Stripe-Signature header shape and get server-side verification checks.

Open signature checker

Paid pack

Get the private Stripe webhook starter pack for fulfilment, signatures, product mapping, and delivery logs.

Buy webhook pack - 1.00 EUR

View webhook pack sample

Operational Stripe launch checklist only. Confirm live settings in your own Stripe Dashboard before accepting payments.