Travel Booking Saga and Compensation Patterns

Design Saga and compensation patterns for travel booking, payment, cancellation and refund workflows where rollback is impossible.

Editorial information
Advertisement

A travel booking distributed transaction cannot be rolled back atomically. Supplier booking, payment capture, ticketing and refund occur in separate systems, so failures require compensating actions.

Saga flow

Travel booking SagaTravel booking Saga

Mermaid source (.mmd)

Compensation is not rollback

Booking cancellation can incur fees, return different inventory conditions or complete asynchronously. Refund can be delayed by settlement, create FX differences or leave non-refundable payment costs. Compensation therefore needs its own tracked outcome.

Orchestration vs choreography

Orchestration

A central Saga orchestrator knows the next step. This improves debugging, explicit state and operational visibility, at the cost of a more complex orchestrator.

Choreography

Services react to events. Coupling is looser, but the global flow is harder to reason about and duplicate/out-of-order events can have wider consequences.

For financially critical travel workflows, explicit orchestration is often easier to operate.

Saga step model

Persist operation, status, forward action, compensation action, idempotency key, attempt count, last evidence and next retry time for every step.

Forward recovery or compensation?

When capture fails, do not automatically cancel the booking. First decide whether capture can be retried safely, another payment path exists, traveler liability is preserved, cancellation fees apply, or manual operations are safer.

Compensation matrix

Forward stepFailureCompensation
authorizebooking failedvoid
capturebooking later cancelledrefund/void
booking confirmedpayment unrecoverablecancel booking
ticket issuedservicing failedprovider-specific servicing
cancellation confirmedrefund failedrefund reconciliation

UNKNOWN compensation

Do not blindly compensate while the original outcome is UNKNOWN. Gather authoritative evidence first; otherwise compensation may itself create an incorrect state.

Failure modes

Duplicate compensation, compensation UNKNOWN outcome, ignored cancellation fees, compensating too early, choreography event loops and marking partially compensated flows as completed.

Observability

Track Saga completion, compensation rate and outcome, forward-recovery rate, manual interventions, time in RECOVERY_REQUIRED and financial cost of compensation.

Production checklist

Use explicit Saga state, idempotent forward and compensation actions, provider-specific compensation policy, UNKNOWN-safe recovery, financial-impact visibility, manual escalation, audit trails and replay-safe event handling.

Technical advisory

Let’s review your architecture.

We can assess your travel distribution and metasearch architecture for scalability, failure modes and operations.

Discuss your project →

Related content

architecture

Payment + Booking Distributed Transaction

Model payment and supplier booking as a distributed transaction using authorization, capture, compensation, UNKNOWN outcomes and reconciliation.

paymentbookingdistributed-transaction
Explore →
troubleshooting

Payment Authorized/Captured but Booking Unknown/Failed

Diagnose payment-booking divergence when payment succeeds while booking remains unknown or fails, then choose safe recovery and compensation.

paymentbookingdivergence
Explore →
distribution-api

Hotelbeds API Suite: Bedbank Distribution Profile

developer.hotelbeds.com

A technical profile of the HBX Group Hotelbeds API Suite covering hotel booking, content and cache APIs for B2B accommodation distribution.

hotelbedshbxbedbank
Explore →
distribution

OTA vs Metasearch vs Travel Marketplace: Key Differences

Compare OTA, metasearch and travel-marketplace models by transaction ownership, supplier relationships, monetization, handoff and technical architecture.

otametasearchtravel-marketplace
Explore →
distribution

Package Holiday vs Hotel Metasearch: Architecture Differences

Compare package-holiday distribution with hotel metasearch by offer identity, pricing, supplier topology, booking ownership and cancellation.

package-holidayhotel-metasearchtour-operator
Explore →
distribution-api

Sabre Travel APIs: GDS and Travel Distribution Profile

developer.sabre.com

A technical profile of Sabre Travel APIs covering air, lodging, car, booking and agency workflows across a GDS-oriented B2B platform.

sabregdsflight-api
Explore →