Duplicate invoice creation incident
A strong production bug example balancing technical evidence and business impact.
Source input
Several merchants reported duplicate invoices after retrying a failed checkout update. Issue appeared after the latest billing-service deploy. Repro: trigger payment failure, refresh the checkout summary, then retry invoice generation. Logs show duplicate invoice-create event emitted when the client retries before idempotency state is committed. 18 support tickets in 24 hours. Affected merchants are primarily EU pilot accounts. Finance ops escalated because duplicates create reconciliation work.
Structured output
root cause summary
The likely root cause is a duplicate invoice-create event emitted during retry before idempotency state is fully committed.
severity
High - customer-facing financial duplication with operational impact.
impacted users
EU pilot merchants retrying checkout updates; Finance operations handling reconciliation; Support team fielding repeat tickets
fix recommendation
Enforce idempotency before the retry path can emit a second invoice-create event and add a guard on duplicate invoice creation.
prevention steps
Add regression coverage for retry/idempotency sequence; Alert when duplicate invoice-create events occur for the same order; Review retry timing around idempotency commit
owner
Billing engineering lead (or incident owner)