Foundation · 2 min
What you need to know
Why does checkout fail during high traffic?
Checkout fails during high traffic when application, database, inventory, tax, shipping, fraud or payment capacity reaches a limit. Increased retries can make overload worse if they are uncontrolled.
How should checkout be protected during traffic spikes?
Reserve capacity for checkout, isolate it from optional browsing features, cache safe reference data and apply rate limits or a waiting room before overload. Monitor every dependency and preserve order integrity ahead of speed.
What happens if payment succeeds during a system outage?
The store must query or receive the provider’s final payment status using the original attempt ID, then create or repair the order without charging again. Keep the customer informed while reconciliation is pending.
How should orders recover after partial system failure?
Store each completed step and resume from the last trustworthy state using stable order and attempt IDs. Compensation may release inventory or void a payment only after the system confirms what actually succeeded.
How do I prevent duplicate orders during retries?
Use one order-intent ID and idempotency key across retries, plus a unique database rule that prevents a second order for the same accepted intent. Return the existing result when the same request arrives.
How should payment and order systems recover after an outage?
Reconcile provider payments, order intents and inventory reservations after service returns. Repair missing orders, release safe reservations, address unmatched charges through the defined workflow, and document every manual action.
A quick store check
Replay a payment timeout in a test environment and verify one payment attempt produces at most one order and a reconcilable final state.
Foundation · 2 min
Frequently asked questions
Should a customer retry payment after a blank screen?
The store should first check the attempt status and present safe guidance, because the payment may already have succeeded.
Can the order be created before payment is complete?
Yes, if it has a clear pending state and the workflow later confirms, expires, or reconciles it without releasing goods too early.