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 set of messages defined by IATA that enables airlines to evolve how they market and sell their products. New capabilities include personalized offers, dynamic pricing, and fare brands.
- Sabre’s NDC-enabled, REST/JSON Offer and Order APIs support shopping, booking, fulfillment and servicing of NDC content.
- Shopping results are exposed via an enhanced version of the Bargain Finder Max (BFM) Air Shopping API that integrates NDC, ATPCO, and low-cost carrier (LCC) offers.
- New APIs have been developed for offer pricing, order creation, and servicing.
- Sabre is continually deploying new capabilities and enhancements whilst expanding the list of airlines supplying NDC solutions 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 cancel pre-fulfillment and servicing post-fulfillment:
Prime Booking Flow
- Shop > Price > Book
- Shop > Price > Book > Cancel
Servicing Workflows
- Display Order > Fulfil Order
- Display Order > Reshop Cancel > Cancel
- Display Order > Reshop Itinerary > Book > Fulfil Order
- Display Order > Display Seat Map > Book Seat > Fulfil Seat Order Item
- Display Order > Cancel Order and Retain Ticket
- Display Order > Void Ticket
- Display Order > Synchronize Order
Taking a closer look, this entails:
- Shopping for airline offers.
- Price validation of the offer / Price with an unused ticket.
- Creation of an order.
- Cancellation of an order (pre-fulfillment).
- Retrieving the order.
- Calling a servicing function.
- Processing the servicing steps.
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: A 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 - An entity that holds all reservation details, containing:
- All information relating to flights, payment, ticketing, and passengers.
- Order ID: A 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 APIs
API | Description | Endpoint | Type |
---|---|---|---|
Bargain Finder Max | Shop for air offers | v5/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 Reprice | Reprice an order (pre-fulfillment) | v1/offers/repriceOrder | REST/JSON |
Order Change | Fulfill an order | v1/orders/change | REST/JSON |
Order Change | Cancel an NDC order when there is other air content in a PNR | 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 |
Order Cancel Void & Refund | Cancel a fulfilled order | v1/orders/cancel | REST/JSON |
Offer Reshop Shop | Reshop a fulfilled order for alternative flights | v1/offers/reshop/shop | REST/JSON |
Order Change Exchange | Rebook a passenger on new flights | v1/orders/change/exchange | REST/JSON |
Order Sync | Synchronize an order with a carrier | v1/orders/sync | REST/JSON |
Questions about Offer and Order 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 prerequisites or conditions on the PNR for Sabre to send the Interface User Record message?
- Do I always need to pass the form of payment before order creation? Or can it be done at payment time?
- How do accounting lines work in the NDC implementation?
- Can I create a manual price quote for an NDC reservation?
- Can I issue a ticket for 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 Offer and Order 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 hotels and car rentals. The content can be added in any order, although developers should take into consideration changes made to the PNR in 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 NDC air segments 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 these segments do not apply. Order Management APIs must be called to service NDC segments.
Are there prerequisites or conditions on the PNR for Sabre to send the Interface User Record message?
Similarly to the existing ticketing functionality, the order fulfillment process triggers sending of the Interface User Record (IUR). Changes may be required within the back-office system to process NDC order information. Data may not be complete as it is dependent on the response from 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 it is not stored within the 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 at time of fulfillment.
How do accounting lines work in the NDC implementation?
An automated accounting line will be 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, 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 for an NDC reservation?
NDC air segments in a PNR may not be manually priced. All fare data originates from the airline. If there is non-NDC air content 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 to build a manual PQ that references the non-NDC air content. This logic applies to both the ManualPriceQuoteAddInfoLLSRQ
API and the functional command.
Can I issue a ticket for an NDC reservation?
The orders/change
API is used to fulfill an NDC order. Ticketing commands and existing APIs (AirTicketLLSRQ
or AirTicketRQ
) are not applicable to NDC segments created via an NDC order. NDC air segments are not traditional air segments; a preexisting error used when air segments are not present will be returned. The error is returned for any variation of ticketing commands, including Future Processing (FP) line processing.
Can I void a fulfilled NDC reservation?
Yes, but note that for some airlines 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. Some airlines support a process where the ticket is voided and the order is retained.
Will the Sabre Sales Report (DQB) reflect NDC reservations?
Yes. NDC documents are updated and visible in the Enhanced Sales Report (DQB), which is available via the TKT_TravelAgencyReportsRQ
API. The legacy DailySalesReportLLSRQ
API does 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 are not displayed via the ticket display functions or existing display APIs (eTicketCouponLLSRQ
or TKT_ElectronicDocumentServicesRQ
). An error is returned if the 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 and order management APIs.
- Offers Reshop Shop (obtain reshop offers)
- Orders Change Exchange (modify itinerary)
- Orders Change (exchange ticket)
If an NDC document number is used with any Sabre ticket exchange API (AutomatedExchangesLLSRQ
, ExchangeBookingRQ
, ExchangeShoppingRQ
, TKT_ExchangeRQ
, or AutomatedRefundRQ
) or command, an error is returned.
Does NDC work with online booking tools?
Yes, online booking tools (OBT) have been enhanced to use the Sabre Offer and Order APIs to perform shop, price, book, and fulfill operations. For example, Sabre's online booking tool GetThere supports booking of NDC offers and utilizes the Sabre Offer and Order APIs to complete 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 automated fulfillment of NDC orders created through Sabre.
Are Sabre Offer and Order APIs available in SOAP or XML?
Sabre's Offer and Order APIs are only available in REST/JSON.