An order reserves inventory, charges payment, then times out waiting for reservation confirmation. Cancellation begins. A late inventory success arrives after the refund. Without a state model, stock remains held or payment is refunded twice.
Define events and invariants
OrderCreated -> InventoryReserved -> PaymentCharged -> Confirmed
| timeout
v






