Replay safety
Replay can come from legitimate retries, internal reprocessing or your own queueing layer.
Minimum defense
- Unique key per
event_id - Transactional state update
- External side effects only after persistence
- Compensation jobs for out-of-order events
Never confuse a repeated event with an invalid event. The correct behavior is to recognize it, log it and avoid duplicate side effects.
Did this page unblock the next step?
Feedback stays inside the docs flow and should never include customer or card data.