Intentkiln

Last verified 2026-07-14

stripe webhook delivered twice double ship

Webhook retries that double-ship are an idempotency bug, not a Stripe outage. Key fulfillment on payment intent, replay twice, confirm one side effect.

Open free leak checklistCashkiln home

The actual problem

Idempotency gaps cause duplicate fulfillments when Stripe retries webhooks.

Do this

  1. Key fulfillment on payment_intent / charge id, not event id alone.
  2. Log and ignore already-processed event ids.
  3. Re-test with Stripe CLI resend of the same event.
  4. Audit last week’s double-ship tickets against webhook logs.

Tools for this job

Related intents

Run the operator leak checklist

Cashkiln’s free checklist covers six cash leaks operators miss before scaling ads — use it, then deepen with Tillkiln or Netkiln as needed.

Also from Cashkiln

Deep-dive report — $29

Self-serve checklist expansion for this query family. PayPal Checkout. No call.