---
title: "GDS vs NDC: Airline Distribution Architecture"
description: "Compare GDS and NDC across airline shopping, Offers/Orders, content ownership, servicing and integration architecture."
slug: "gds-vs-ndc"
translationKey: "guide-gds-vs-ndc"
locale: "en"
type: "guide"
category: "architecture"
tags: ["travel-distribution","architecture","canonical-model"]
publishedAt: "2026-09-26"
updatedAt: "2026-09-26"
reviewedAt: "2026-09-26"
technicalVerifiedAt: "2026-09-26"
codeExampleStatus: "illustrative"
sources:
  - title: "IATA — Distribution with Offers & Orders (NDC)"
    url: "https://www.iata.org/en/programs/airline-distribution/retailing/ndc/"
---
GDS and NDC do not solve the same problem at the same layer. A GDS is a multi-party travel distribution network and commercial-access layer, while NDC is an IATA data-exchange standard organized around Offer and Order processes. An NDC connection may still be delivered through an aggregator or GDS.

## Architecture difference

A GDS integration provides supplier access, aggregation, ticketing and servicing capabilities according to the provider contract. NDC can expose airline retail offers, ancillaries and order lifecycle more directly.

```text
Airline → GDS/Aggregator → Seller
Airline → NDC API/Aggregator → Seller
```

## Offer and Order

An NDC shopping result is more than itinerary plus price. Preserve offer identity, owner, expiry and eligibility. After order creation, servicing and cancellation should remain attached to the same order lineage.

## Choosing an approach

The useful question is not which is universally better. Evaluate coverage, airline access, servicing, commercial terms, latency, content richness and operational support.

## Failure modes and observability

Track offer expiry, repricing, ancillary mapping gaps, duplicate orders, unknown order state after timeouts and airline-specific schema differences. Search success and order success need separate KPIs.


## Production checklist

- maintain a source capability matrix,
- model Offer/Order/PNR/Ticket separately,
- define reprice/revalidation boundaries,
- separate ticketing/fulfillment state from booking state,
- verify provider-specific servicing capabilities,
- provide UNKNOWN and reconciliation paths,
- preserve source lineage and correlation IDs.
