Customer buys Product.

 

Order Service Create Order

Publishes OrderCreated

 

Inventory receives Reserve Stock

Publishes StockReserved

 

Payment receives Charge Card

Publishes PaymentSucceeded

 

Shipping receives Create Shipment

Done.

 

Now payment fails.

 

Inventory Already reserved.

Saga publishes PaymentFailed

Inventory receives Release Stock

Order receives Cancel Order

Everything becomes consistent again.