Advanced
Open
Pro
Designing a Saga for Order Placement
Design a saga for: reserve inventory → charge payment → confirm order, across three services (Inventory, Payment, Order), each with its own database. The payment step can fail (card declined) and, rarely, the confirm-order step can fail after payment succeeds (a bug in the Order service).
- Choose choreography or orchestration and justify.
- Write out the forward steps and the compensations for each failure point.
- What isolation anomaly could a customer observe mid-saga, and how would you mitigate it?
- How do you guarantee the compensations themselves are not lost if the orchestrator crashes mid-flow?
Share this question