Foundation · 2 min
What you need to know
What is a timeout?
A timeout is a limit on how long a caller waits for an operation before treating it as unsuccessful. It protects customer time and system resources, but it does not cancel every remote action automatically.
Why do ecommerce requests time out?
Requests time out when processing or dependencies exceed the configured limit because of overload, network problems, locks, or slow code. They also time out when the limit is shorter than normal valid work.
Should failed requests automatically retry?
No. Automatically retry only temporary failures and safe operations, with a maximum attempt count and delay. Validation errors, declined payments, and other permanent outcomes need correction or a clear customer response.
When can retries cause duplicate operations?
Retries create duplicates when the first request succeeds, but its response is lost, so the caller repeats a create, charge or inventory change. A stable idempotency key lets the receiver return the original outcome instead of repeating the action.
What is exponential backoff?
Exponential backoff increases the delay between each retry, usually with random variation called jitter. It gives a recovering service time to stabilize and prevents many clients from retrying together.
How should ecommerce systems handle temporary failures?
For temporary failures, preserve the request state, use bounded retries with backoff, show an honest pending or retry message, and reconcile the final outcome. Prevent duplicates throughout the process.
How should permanent failures differ from temporary failures?
Permanent failures should stop automatic retries and return a specific next step, such as correcting an address or choosing another payment method. Temporary failures may use a safe retry or delayed recovery path.
A quick store check
List every automatic retry in the order and payment path with its timeout, maximum attempts, backoff and idempotency protection.
Foundation · 2 min
Frequently asked questions
Should every timeout be retried?
No. Retry only failures likely to be temporary and only when the operation is safe to repeat.
Can longer timeouts reduce errors?
They may reduce visible timeout counts while making customers wait and consuming more capacity; fix the cause and set an intentional limit.