New Distribution Capability (NDC)
Shaping the future of intelligent retailing with NDC-enabled Offer and Order APIs.
Overview
The New Distribution Capability (NDC) is an XML-based data standard developed and promoted by the International Airline Transport Association (IATA) that enables airlines to evolve how they retail inventory, including the display of rich content and personalized offer bundles.
Sabre’s NDC-enabled, REST/JSON-based Offer and Order APIs support shopping, booking, fulfillment, and some servicing capabilities of NDC content. Current highlights include:
- An enhanced version of the Bargain Finder Max (BFM) Air Shopping API that integrates NDC, ATPCO, and low-cost carrier (LCC) offers
- APIs for offer verification, order creation, and order modification
- Access to NDC offers from a specific point of sale:
- American Airlines
- Qantas
- Singapore Airlines
- United Airlines
Sabre will deploy additional API capabilities and expand the roster of airlines supplying NDC offers through Sabre’s global distribution system (GDS) channel.
To learn more, visit NDC's Finder Article on Sabre Central, Sabre’s Beyond NDC microsite, and IATA’s NDC website.
Workflows
There are two types of workflows currently supported; prime booking flows with fulfillment, cancel pre-fulfillment, and servicing post-fulfillment:
- Shop > Price > Book > Pay
- Shop > Price > Book > Cancel
- Shop > Price > Book > Pay > Cancel within void period
- Shop > Price > Book > Pay > Refund
Taking a closer look, this entails:
- Shopping for airline offers
- Price validation of the offer
- Creation of an order
- Cancellation of an order (pre-fulfillment)
- Fulfillment of an order
- Cancellation of an order (post-fulfillment)
More details can be found in the New Distribution Capability Workflow.
Interested in testing these workflows via the Postman App? Make sure to check our Postman collection in Github.
Key Concepts
Offer Store - Sabre repository for offers, offer IDs, prices, and all relevant information pertaining to an offer. The Offer Store's content is only accessible via the Offer APIs.
Offer - Content supplied by an airline in response to a shopping request. An offer contains:
- Offer ID: A unique, Sabre-generated identifier for an offer
- Offer time to live: Time until offer expiration
- Offer source: Identifies the offer source, i.e., NDC, ATPCO, LCC
- Offer Item: An entity that contains the following elements:
- Offer Item ID: Unique offer item identifier
- Flight details, (i.e., schedule)
- Attributes (e.g., brand name, baggage allowance)
- Pricing details (e.g., base fare, total taxes, total price)
Order Management System (OMS) - Sabre repository for orders. OMS content is only accessible via the Order APIs.
Order - Entity that holds all reservation details, containing:
- All information relating to flights, payment, ticketing, and passengers
- Order ID: Unique Sabre-generated order identifier
- PNR locator: Reference to the associated passenger name record (PNR) that is generated at the time of order creation
- Payment time limit: The date and time by which the order must be fulfilled to avoid cancellation by the air supplier
- External Order ID: Supplier-side (e.g., airline) reference to the order
Current Release Summary
Sabre will continue to enhance NDC capabilities on an ongoing basis. Current capabilities vary by carrier and include:
Capability | Current Release |
---|---|
Content | Air only |
Carriers | American Airlines (AA), Qantas (QF), Singapore Airlines (SQ), and United Airlines (UA) |
Point of sale | Varies by carrier |
Itineraries | Single adult passenger, "ADT" passenger type code (PTC) only |
Customer type | API users |
Form of payment (FOP) | Single credit card and/or cash |
API access | Limited release to select agency customers |
API activation | Access to these APIs is restricted. Contact your Sabre Account Representative if you are interested in accessing the APIs |
API type | REST/JSON |
IATA NDC message version | 17.2 and 18.1 |
API normalization | Partial (Bargain Finder Max API and Offer Price integrate NDC, LCC, and ATPCO content into a single response; other APIs will be normalized over time) |
State management | Stateless |
Authentication | Session-less Access Tokens (ATK) and session-based Access Tokens (ATH) |
Current Release APIs
API | Description | Endpoint | Type |
---|---|---|---|
Bargain Finder Max | Shop for Air Offers | v2/offers/shop | REST/JSON |
Offer Price | Price an Air Offer | v1/offers/price | REST/JSON |
Order Create | Create an Order | v1/orders/create | REST/JSON |
Order Cancel | Cancel an Order (pre-fulfillment) | v1/orders/cancel | REST/JSON |
Order Change | Fulfill an Order | v1/orders/change | REST/JSON |
Order View | Display an Order | v1/orders/view | REST/JSON |
Offer Cancel Reshop | Reshop to determine cancellation fees | v1/offers/reshop/cancelOrder | REST/JSON |
Questions about NDC APIs
- Can I combine NDC content with non-NDC content in the same record?
- Will NDC content be added into records as HK segments or are they passive segments?
- Are there pre-requisite or conditions on the PNR for Sabre to send the Interface User Record message?
- Do I always need to pass form of payment before order creation? Or can it be done at payment time?
- How do accounting lines work in this NDC implementation?
- Can I create a Manual Price Quote on an NDC reservation?
- Can I issue a ticket on an NDC reservation?
- Can I void a fulfilled NDC reservation?
- Will the Sabre Sales Report (DQB) reflect NDC reservations?
- How can I display a newly issued NDC ticket?
- Can I Refund an NDC ticket?
- Can I Exchange an NDC ticket?
- Does NDC work with online booking tools?
- Is it possible to issue tickets using mid-office?
- Are Sabre NDC APIs available in SOAP or XML?
Can I combine NDC content with non NDC content in the same record?
Yes. NDC content can be combined with air segments from other content sources, as well as hotel and car rental. The content can be added in any order, although developers should take into consideration the changes to the PNR from external sources (e.g. simultaneous changes).
Will NDC content be added into records as HK segments or are they passive segments?
The status code of an NDC air segment will be reflected as HK (confirmed) in both the Order and the PNR. However, in the PNR, these segments are not active air segments – they are considered representational – and functional entries to change this segment do not apply. Specific NDC Order Management APIs must be consumed to service an NDC segment.
Are there pre-requisite or conditions on the PNR for Sabre to send the Interface User Record message?
Like existing ticketing functionality, the Order fulfillment process will trigger sending the Interface User Record (IUR). Currently, manually driving an IUR using the InvoiceItineraryLLSRQ API or DIN format is not possible. Changes may be required within the back-office system to accept NDC order information. Information may not be complete as it is provided by the airline.
Do I always need to pass the form of payment before order creation? Or can it be done at payment time?
The form of payment (FOP) must be included within the order fulfillment process and is not stored within the NDC order.
If an agent requires OB Fee information, the credit card vendor code and BIN can be sent in the pricing request. This is mandatory for some airlines, as the OB fee is stored in the order and the amount must be accurate when fulfillment is processed.
How do accounting lines work in this NDC implementation?
An automated accounting line will be generated and added to the PNR for applicable customers as it is today. The air accounting line is not technically linked to the NDC air segments, so the only permitted action is deleting the accounting line. Adding manual air accounting for NDC air segments (via the AddAccountingLineLLSRQ
API or via the host) is not restricted at this point, but will not invoice at the time of end transaction. Accounting lines at the time of refund are not currently added and the information will not be transmitted to the back/mid office.
Can I create a Manual Price Quote on an NDC reservation?
NDC air segments in a PNR are not valid for manual pricing. All fare data originates from the airline. If non-NDC air content is included in the PNR, then a manual PQ may be added to the PNR. However, the manual PQ will not be updated in the Order. To create a manual pricing record, a segment-select qualifier must be included in an Order to build the manual PQ that references only the non-NDC air content. The logic described applies to both the ManualPriceQuoteAddInfoLLSRQ API and the command.
Can I issue a ticket on an NDC reservation?
The /orders/change API is used to fulfill an NDC reservation. Ticketing commands and existing APIs (AirTicketLLSRQ or AirTicketRQ) are not valid for PNRs created via the NDC Order. NDC air segments are not traditional air segments and the existing error that is returned when air segments are not present will be returned. Errors are returned for any variation of ticketing commands, including Future Processing (FP) line processing.
Can I void a fulfilled NDC reservation?
Yes, but note that this can only be accomplished by canceling the order. Start with the offers/reshop/cancelOrder
request to determine if the ticket is in the void period. Then, follow up with the orders/cancel request and include the offer ID from the re-shop response.
Will the Sabre Sales Report (DQB) reflect NDC reservations?
Yes. NDC documents will be updated and visible on the Enhanced Sales Report (DQB) which is available via the TKT_TravelAgencyReportsRQ
API. The legacy DailySalesReportLLSRQ
API will not reflect this data.
Note: The stock-type on the display will show as XX
since no stock-type applies.
How can I display a newly issued NDC ticket?
The /orders/view API returns the latest order and ticket image for NDC reservations. NDC documents will not be displayed via the ticket display functions or existing display APIs (eTicketCouponLLSRQ
or TKT_ElectronicDocumentServicesRQ
). An error response will be returned if a display command includes an NDC document number.
Can I refund an NDC ticket?
Yes, but note that this can only be accomplished by canceling the order. Start with the offers/reshop/cancelOrder
request to determine if the ticket is in the void period. If it is not, any penalty fees will be returned in the response, along with the refund amount. Follow up with the orders/cancel request and include the offer ID from the re-shop response.
Can I exchange an NDC ticket?
Yes, exchanges can be performed via the Offer re-shop & Order management APIs.
- Offers Reshop Shop (obtain reshop offers)
- Orders Change Exchange (modify itinerary)
- Orders Change (exchange ticket)
If an NDC document number is included in any Sabre ticket exchange API (AutomatedExchangesLLSRQ
, ExchangeBookingRQ
, ExchangeShoppingRQ
, TKT_ExchangeRQ
, or AutomatedRefundRQ
) or command, an error will be returned.
Does NDC work with online booking tools?
Yes, the online booking tools (OBT) will need to use the Sabre Offer and Order APIs to shop, price, book, and fulfill. For example, Sabre's online booking tool, GetThere, supports booking NDC offers and utilizes the Sabre Offer and Order APIs to perform these processes.
Is it possible to issue tickets using mid-office?
Yes, mid-office can issue the ticket. It will need to use the Sabre Order APIs to process tickets. Sabre's Ticket Express solution supports the automated fulfillment of NDC orders created through Sabre.
Are Sabre NDC APIs available in SOAP or XML?
No. Sabre's Offer and Order APIs are available in REST/JSON only.