Skip to main content

Exchange Shopping

2.5.0
Air
Ticketing
SOAP API
Travel Agency
  • Added capability to use a different target city (PCC) during exchange shopping transaction.
  • Added capability to exempt taxes and fees and include applicable passenger facility charges (PFCs) during exchange shopping transactions.
  • Added capability to override taxes for newly shopped exchange options. This lets you override taxes by tax code and tax amount.
  • Added capability to exempt specific tax or taxes for newly shopped exchange options.
  • Added capability to shop for new exchange options filed with up to four corporate IDs. Previously only one ID was accepted by the API.
  • Added capability to shop for new exchange options filed with up to four account codes. Previously only one account code was accepted by the API.
  • Added capability to shop for new exchange options filed with a combination of corporate IDs and account codes, up to four. Previously no combination was accepted by the API.
  • (11/17/2022) Added ExchangeShoppingRS/Solution/Fare/ReservationSegmentDetails/PassengerBookingDetails/@brandName. This will be returned in case of mixed brands and different brand names. Previously this information was not returned in the service response. This solves ASTSP-437 Jira
  • (04/04/2023) - Fixed an intermittent issue where the API would return "UNABLE TO MATCH FARES" error. From now on, if the service encounters such message from internal provider, it will attempt to remove the last character from agency IATA numbers and retry shopping request. This addresses the request described under [ASTSP-451].
  • (05/30/2023) Added support for capabilities of keeping same cabin (.../TravelPreferences/@keepSameCabinEnabled) and disabling so-called jump cabin logic (.../TravelPreferences/@jumpCabinLogicDisabled). Also, added yet another attribute that expand cabin related features .../TravelPreferences/@avoidCabinDowngradeMode. This one guarantees that lower cabin class will not be applied within single shopping option depending on the chosen mode.
  • (07/15/2023) Introduced Cat 16 exchange shopping via PriceGuarantee mode under /ExchangeShoppingRQ/TravelPreferences/PriceRequestInformation/TPA_Extensions/NonVerifiedSolutions/@priceGuarantee with two modes: "Never" - New Category 16 logic, "Always" (default) - Current category 31 logic. For “Never” options mode it is returned /ExchangeShoppingRS/Solution/Fare/@priceGuaranteed indicator, and it is set as "false".
  • (11/14/2023) Introduced new capability to shop for exchanges for tickets issued in other GDS. This enhancement enables existing and future API users to improve self-service and automation level by enabling the capability to shop for exchanges of tickets that were originally issued in other systems and do not reside in the Sabre database.
  • (11/14/2023) Introduced new capability to shop for Multiple Branded Fares for a single passenger to improve upsell opportunities and provide flexibility to get exchange options with same preferences from original bookings or upgrade to the next available brand. The new capability will support ability to set brand parity modes and apply brand filter preferences.
  • (02/13/2024) Extended the capability to shop for Multiple Branded Fares for multiple passengers. Solutions can now return multiple Fares, each with either single or mixed brands. Moreover, the API can return a Fare@requireSplitPNR indicator, signifying that separate passengers have a different booking code assigned to their specific solutions. This enhancement is combined with multiple fixes for other capabilities exposed by the API.
  • (02/27/2024) Users invoking attributes, that require BrandedFareIndicators/@multipleBrandedFares or @singleBrandedFare will now be presented with well-defined errors, stating that these can only be used when branded fares are enabled. A validation was introduced for BrandedFareIndicators/@keepOriginalBrand, it can only be used when at least one leg is not being shopped for exchange.

API Information

Format
XML
Current Version
2.5.0
Environment
Production

What's New

  • Added capability to use a different target city (PCC) during exchange shopping transaction.
  • Added capability to exempt taxes and fees and include applicable passenger facility charges (PFCs) during exchange shopping transactions.
  • Added capability to override taxes for newly shopped exchange options. This lets you override taxes by tax code and tax amount.
  • Added capability to exempt specific tax or taxes for newly shopped exchange options.
  • Added capability to shop for new exchange options filed with up to four corporate IDs. Previously only one ID was accepted by the API.
  • Added capability to shop for new exchange options filed with up to four account codes. Previously only one account code was accepted by the API.
  • Added capability to shop for new exchange options filed with a combination of corporate IDs and account codes, up to four. Previously no combination was accepted by the API.
  • (11/17/2022) Added ExchangeShoppingRS/Solution/Fare/ReservationSegmentDetails/PassengerBookingDetails/@brandName. This will be returned in case of mixed brands and different brand names. Previously this information was not returned in the service response. This solves ASTSP-437 Jira
  • (04/04/2023) - Fixed an intermittent issue where the API would return "UNABLE TO MATCH FARES" error. From now on, if the service encounters such message from internal provider, it will attempt to remove the last character from agency IATA numbers and retry shopping request. This addresses the request described under [ASTSP-451].
  • (05/30/2023) Added support for capabilities of keeping same cabin (.../TravelPreferences/@keepSameCabinEnabled) and disabling so-called jump cabin logic (.../TravelPreferences/@jumpCabinLogicDisabled). Also, added yet another attribute that expand cabin related features .../TravelPreferences/@avoidCabinDowngradeMode. This one guarantees that lower cabin class will not be applied within single shopping option depending on the chosen mode.
  • (07/15/2023) Introduced Cat 16 exchange shopping via PriceGuarantee mode under /ExchangeShoppingRQ/TravelPreferences/PriceRequestInformation/TPA_Extensions/NonVerifiedSolutions/@priceGuarantee with two modes: "Never" - New Category 16 logic, "Always" (default) - Current category 31 logic. For “Never” options mode it is returned /ExchangeShoppingRS/Solution/Fare/@priceGuaranteed indicator, and it is set as "false".
  • (11/14/2023) Introduced new capability to shop for exchanges for tickets issued in other GDS. This enhancement enables existing and future API users to improve self-service and automation level by enabling the capability to shop for exchanges of tickets that were originally issued in other systems and do not reside in the Sabre database.
  • (11/14/2023) Introduced new capability to shop for Multiple Branded Fares for a single passenger to improve upsell opportunities and provide flexibility to get exchange options with same preferences from original bookings or upgrade to the next available brand. The new capability will support ability to set brand parity modes and apply brand filter preferences.
  • (02/13/2024) Extended the capability to shop for Multiple Branded Fares for multiple passengers. Solutions can now return multiple Fares, each with either single or mixed brands. Moreover, the API can return a Fare@requireSplitPNR indicator, signifying that separate passengers have a different booking code assigned to their specific solutions. This enhancement is combined with multiple fixes for other capabilities exposed by the API.
  • (02/27/2024) Users invoking attributes, that require BrandedFareIndicators/@multipleBrandedFares or @singleBrandedFare will now be presented with well-defined errors, stating that these can only be used when branded fares are enabled. A validation was introduced for BrandedFareIndicators/@keepOriginalBrand, it can only be used when at least one leg is not being shopped for exchange.

Functional Updates And Enhancements

In the Request

Optional

Parameter: targetCity

Type: string

Description: Specifies which city service should change context using ContextChange (AAA), and the rest of the service uses new security.

Sample Value:

<ExchangeShoppingRQ targetCity="AAAA" xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithPNR pnrLocator="GITAOA" referenceNumber="1.1" firstName="ADAM" lastName="JONES">
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
</ExchangeShoppingRQ>

In the Request

Optional

Parameter: ExemptAllTaxesAndFees

Type: element

Description: Used to exempt all taxes and fees and include applicable passenger facility charges (PFCs).

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<TPA_Extensions>
<ExemptAllTaxesAndFees value="true"/>
</TPA_Extensions>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>

In the Request

Optional

Parameter: Taxes

Type: element

Description: Element used to override taxes.

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<TPA_Extensions>
<Taxes>
<Tax TaxCode="1A1" Amount="12"/>
<Tax TaxCode="2B2" Amount="21.99"/>
</Taxes>
</TPA_Extensions>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>
Note: Cannot be combined with ExemptAllTaxes, ExemptAllTaxesAndFees, and ExemptTax.

In the Request

Optional

Parameter: ExemptTax

Type: Element

Description: Used to exempt a specific tax/taxes

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<TPA_Extensions>
<ExemptTax TaxCode="1A1"/>
<ExemptTax TaxCode="2B2"/>
</TPA_Extensions>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>
Note: Cannot be combined with ExemptAllTaxes, ExemptAllTaxesAndFees, and Taxes.

In the Request

Optional

Parameter: NegotiatedFareCode

Type: Element

Description: Used to shop for new exchange options filed with up to four corporate IDs.

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<NegotiatedFareCode Code="ABC"/>
<NegotiatedFareCode Code="DEF"/>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>
Note: Previously only one corporate id was supported. /ExchangeShoppingRQ/TravelPreferences/PriceRequestInformation/@corporateID

In the Request

Optional

Parameter: AccountCode

Type: Element

Description: Used to shop for new exchange options filed with up to four account codes.

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<AccountCode Code="XYZ"/>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>
Note: Previously only one corporate id was supported. /ExchangeShoppingRQ/TravelPreferences/PriceRequestInformation/@accountCode

In the Request

Optional

Parameter: N/A

Type: N/A

Description: The API will now allow a combination of up to 4 (four) combined corporate IDs and account codes.

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0">
<STL_Header.RQ>
<OrchestrationID seq="0">231488734192050161</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>0017928321527</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDate>2023-04-26</DepartureDate>
</DateTimeSelection>
<StartLocation>ATL</StartLocation>
<EndLocation>LAX</EndLocation>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<NegotiatedFareCode Code="ABC"/>
<NegotiatedFareCode Code="ABC"/>
<AccountCode Code="XYZ"/>
<AccountCode Code="XYZ"/>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>

  • Starting from version 2.4.0, the API provides capability of forcing the system to retain the original booking code for non-shopped legs.
  • Starting from version 2.4.0, the API provides capability of forcing the system to retain the originally ticketed brand for non-shopped legs. Previously, system might alter your originally ticketed brand while searching for the lowest exchange solution.
  • (04/04/2023) - Fixed an intermittent issue where the API would return "UNABLE TO MATCH FARES" error. From now on, if the service encounters such message from internal provider, it will attempt to remove the last character from agency IATA numbers and retry shopping request. This addresses the request described under [ASTSP-451].

API Information

Format
XML
Current Version
2.4.0
Environment
Production

What's New

  • Starting from version 2.4.0, the API provides capability of forcing the system to retain the original booking code for non-shopped legs.
  • Starting from version 2.4.0, the API provides capability of forcing the system to retain the originally ticketed brand for non-shopped legs. Previously, system might alter your originally ticketed brand while searching for the lowest exchange solution.
  • (04/04/2023) - Fixed an intermittent issue where the API would return "UNABLE TO MATCH FARES" error. From now on, if the service encounters such message from internal provider, it will attempt to remove the last character from agency IATA numbers and retry shopping request. This addresses the request described under [ASTSP-451].

New Features

In the Request

Optional

Parameter: keepBookingClass

Type: boolean

Description: Forces the system to retain the original booking code for non-shopped legs

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_4" version="2.4.0">
<STL_Header.RQ>
<OrchestrationID seq="0">744067011664091422</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>6077049020878</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDateTime>2020-11-19T13:45:00</DepartureDateTime>
</DateTimeSelection>
<StartLocation>AUH</StartLocation>
<EndLocation>LHR</EndLocation>
</OriginDestinationInformation>
<OriginDestinationInformation shopIndicator="false">
<DateTimeSelection>
<DepartureDateTime>2020-11-27T14:05:00</DepartureDateTime>
</DateTimeSelection>
<StartLocation>LHR</StartLocation>
<EndLocation>AUH</EndLocation>
<RelatedSegment operatingProvider="EY" marketingProvider="EY" marketingFlightNumber="0020" startDateTime="2020-11-27T14:05:00" endDateTime="2018-11-28T01:20:00" startLocation="LHR" endLocation="AUH" bookingClass="F" reservationStatus="HK" bookingDateTime="2020-08-22T05:53:00" keepBookingCode="true"/>
</OriginDestinationInformation>
</ExchangeShoppingRQ>

In the Request

Optional

Parameter: keepOriginalBrand

Type: boolean

Description: Forces the system to retain the originally ticketed brand for non-shopped legs.

Sample Value:

<ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_4" version="2.4.0">
<STL_Header.RQ>
<OrchestrationID seq="0">744067011664091422</OrchestrationID>
</STL_Header.RQ>
<TicketingProvider>1S</TicketingProvider>
<PassengerInformation>
<PassengerWithoutPNR>
<DocumentNumber>6077049020878</DocumentNumber>
</PassengerWithoutPNR>
</PassengerInformation>
<OriginDestinationInformation shopIndicator="true">
<DateTimeSelection>
<DepartureDateTime>2020-11-19T13:45:00</DepartureDateTime>
</DateTimeSelection>
<StartLocation>AUH</StartLocation>
<EndLocation>LHR</EndLocation>
</OriginDestinationInformation>
<OriginDestinationInformation shopIndicator="false">
<DateTimeSelection>
<DepartureDateTime>2020-11-27T14:05:00</DepartureDateTime>
</DateTimeSelection>
<StartLocation>LHR</StartLocation>
<EndLocation>AUH</EndLocation>
<RelatedSegment operatingProvider="EY" marketingProvider="EY" marketingFlightNumber="0020" startDateTime="2020-11-27T14:05:00" endDateTime="2018-11-28T01:20:00" startLocation="LHR" endLocation="AUH" bookingClass="F" reservationStatus="HK" bookingDateTime="2020-08-22T05:53:00" keepBookingCode="true"/>
</OriginDestinationInformation>
<TravelPreferences>
<PriceRequestInformation>
<TPA_Extensions>
<BrandedFareIndicators keepOriginalBrand="true" singleBrandedFare="true"/>
</TPA_Extensions>
</PriceRequestInformation>
</TravelPreferences>
</ExchangeShoppingRQ>

  • Exchange Shopping now allows users to target specific resulting fares using a Brand ID Code. The request can include a unique Brand ID or multiple Brand IDs that can be applied to the entire itinerary or per leg.

API Information

Format
XML
Current Version
2.3.0
Environment
Production

What's New

  • Exchange Shopping now allows users to target specific resulting fares using a Brand ID Code. The request can include a unique Brand ID or multiple Brand IDs that can be applied to the entire itinerary or per leg.

Functional Updates And Enhancements

In the Request

Optional

Parameter: Brand

Type: n/a

Description: Used to shop by Brand ID on a leg level

Sample Value:

            |-|OriginDestinationInformation shopIndicator="true"|--|                |-|DateTimeSelection|--|                    |-|DepartureDateTime|--|2019-06-10T08:25:00|-|/DepartureDateTime|--|                |-|/DateTimeSelection|--|               |-|StartLocation|--|LHR|-|/StartLocation|--|                |-|EndLocation|--|JFK|-|/EndLocation|--|                |-|IncludeVendor|--|AY|-|/IncludeVendor|--|             |-|BrandFilters|--|                 |-|Brand code="A4" preferLevel="Preferred"/|--|             |-|/BrandFilters|--|

In the Request

Optional

Parameter: NonBrandedFares

Type: n/a

Description: Used to ensure that all of the fares within the response are assigned to a brand

Sample Value:

            |-|OriginDestinationInformation shopIndicator="true"|--|                |-|DateTimeSelection|--|                    |-|DepartureDateTime|--|2019-06-10T08:25:00|-|/DepartureDateTime|--|                |-|/DateTimeSelection|--|               |-|StartLocation|--|LHR|-|/StartLocation|--|                |-|EndLocation|--|JFK|-|/EndLocation|--|                |-|IncludeVendor|--|AY|-|/IncludeVendor|--|             |-|BrandFilters|--|                 |-|Brand code="A4" preferLevel="Preferred"/|--|                 |-|NonBrandedFares preferLevel="Unacceptable"/|--|              |-|/BrandFilters|--|            |-|/OriginDestinationInformation|--|

In the Request

Optional

Parameter: Brand

Type: n/a

Description: Used to shop by Brand ID on an itinerary level

Sample Value:

            |-|TravelPreferences|--|                |-|PriceRequestInformation|--|                  |-|TPA_Extensions|--|                       |-|BrandedFareIndicators returnBrandAncillaries="true" singleBrandedFare="true"|--|                         |-|BrandFilters|--|                             |-|Brand code="A4" preferLevel="Preferred"/|--|                             |-|Brand code="ECONFLEX" preferLevel="Preferred"/|--|                           |-|/BrandFilters|--|                        |-|/BrandedFareIndicators|--|                   |-|/TPA_Extensions|--|              |-|/PriceRequestInformation|--|         |-|/TravelPreferences|--|

In the Request

Optional

Parameter: returnBrandAncillaries

Type: boolean

Description: Used to return ancillaries from the ATPCO Branded Fares Feature Table 166

Sample Value:

        |-|TravelPreferences|--|                |-|PriceRequestInformation|--|                  |-|TPA_Extensions|--|                       |-|BrandedFareIndicators returnBrandAncillaries="true" singleBrandedFare="true"|--|                         |-|BrandFilters|--|                             |-|Brand code="A4" preferLevel="Preferred"/|--|                             |-|Brand code="ECONFLEX" preferLevel="Preferred"/|--|                           |-|/BrandFilters|--|                        |-|/BrandedFareIndicators|--|                   |-|/TPA_Extensions|--|              |-|/PriceRequestInformation|--|         |-|/TravelPreferences|--|

In the Response

Optional

Parameter: BrandFeatures

Type: n/a

Description: Indicates the final list of all brand feature items

Sample Value:

|-|BrandFeature id="1" application="F" serviceType="Z" serviceGroup="BF" subCode="050" vendor="ATP" commercialName="SEAT RESERVATION"/|--|

  • Added ability to verify refundability/reusability details for all EMD-A associated to the ticket being exchanged. The service also supports the inclusion of additional EMD-A that are not associated to the ticket being exchanged.
  • The service response will include a list of ancillaries available for each new itinerary option.

API Information

Format
XML
Current Version
2.2.0
Environment
Production

What's New

  • Added ability to verify refundability/reusability details for all EMD-A associated to the ticket being exchanged. The service also supports the inclusion of additional EMD-A that are not associated to the ticket being exchanged.
  • The service response will include a list of ancillaries available for each new itinerary option.

Business Value

  • Added ability to verify refundability/reusability details for all EMD-A associated to the ticket being exchanged. The service also supports the inclusion of additional EMD-A that are not associated to the ticket being exchanged.
  • The service response will include a list of ancillaries available for each new itinerary option.

Functional Updates And Enhancements

In the Request

Optional

Parameter: validateAssociatedEMDs

Type: boolean

Description: used to validate associated EMDs for refundability or exchangeability.

Sample Value:

    |-|ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_2" version="2.2.0"|--|           |-|STL_Header.RQ|--|                |-|OrchestrationID seq="0"|--|704365678289896766|-|/OrchestrationID|--|         |-|/STL_Header.RQ|--|           |-|TicketingProvider|--|1S|-|/TicketingProvider|--|         |-|PassengerInformation|--|             |-|PassengerWithoutPNR|--|                  |-|DocumentNumber validateAssociatedEMDs="true"|--|6077049020878|-|/DocumentNumber|--|

In the Request

Optional

Parameter: ElectronicMiscellaneousDocumentNumber

Type: n/a

Description: allows to pass EMD numbers to be validated for refundability or exchangeability.

Sample Value:

        |-|ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_2" version="2.2.0"|--|           |-|STL_Header.RQ|--|                |-|OrchestrationID seq="0"|--|704365678289896766|-|/OrchestrationID|--|         |-|/STL_Header.RQ|--|           |-|TicketingProvider|--|1S|-|/TicketingProvider|--|         |-|PassengerInformation|--|             |-|PassengerWithoutPNR|--|                  |-|DocumentNumber validateAssociatedEMDs="true"|--|6077049020878|-|/DocumentNumber|--|                  |-|ElectronicMiscellaneousDocumentNumber|--|6074573937968|-|/ElectronicMiscellaneousDocumentNumber|--|                  |-|ElectronicMiscellaneousDocumentNumber|--|6074573937969|-|/ElectronicMiscellaneousDocumentNumber|--|                  |-|ElectronicMiscellaneousDocumentNumber|--|6074573938275|-|/ElectronicMiscellaneousDocumentNumber|--|

In the Request

Optional

Parameter: AncillaryFees

Type: n/a

Description: used to query for ancillary fees options

Sample Value:

    |-|ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_2" version="2.2.0"|--|           |-|STL_Header.RQ|--|                |-|OrchestrationID seq="0"|--|463547643701089697|-|/OrchestrationID|--|         |-|/STL_Header.RQ|--|           |-|TicketingProvider|--|1S|-|/TicketingProvider|--|         |-|PassengerInformation|--|             |-|PassengerWithoutPNR|--|                  |-|DocumentNumber validateAssociatedEMDs="true"|--|6077049020878|-|/DocumentNumber|--|              |-|/PassengerWithoutPNR|--|         |-|/PassengerInformation|--|            |-|OriginDestinationInformation shopIndicator="true"|--|                |-|DateTimeSelection|--|                    |-|DepartureDateTime|--|2018-11-19T13:45:00|-|/DepartureDateTime|--|                |-|/DateTimeSelection|--|               |-|StartLocation|--|AUH|-|/StartLocation|--|                |-|EndLocation|--|LHR|-|/EndLocation|--|            |-|/OriginDestinationInformation|--|            |-|TravelPreferences|--|                |-|AncillaryFees Enable="true" Summary="true"|--|                   |-|AncillaryFeeGroup Code="BG"/|--|                 |-|AncillaryFeeGroup Code="IE"/|--|                 |-|AncillaryFeeGroup Code="UN"/|--|             |-|/AncillaryFees|--|

In the Request

Optional

Parameter: Baggage

Type: n/a

Description: used to request baggage information.

Sample Value:

        |-|ExchangeShoppingRQ xmlns="http://services.sabre.com/sp/exchange/shopping/v2_2" version="2.2.0"|--|           |-|STL_Header.RQ|--|                |-|OrchestrationID seq="0"|--|744067011664091422|-|/OrchestrationID|--|         |-|/STL_Header.RQ|--|           |-|TicketingProvider|--|1S|-|/TicketingProvider|--|         |-|PassengerInformation|--|             |-|PassengerWithoutPNR|--|                  |-|DocumentNumber validateAssociatedEMDs="true"|--|6077049020878|-|/DocumentNumber|--|              |-|/PassengerWithoutPNR|--|             |-|/PassengerInformation|--|            |-|OriginDestinationInformation shopIndicator="true"|--|                |-|DateTimeSelection|--|                    |-|DepartureDateTime|--|2018-11-19T13:45:00|-|/DepartureDateTime|--|                |-|/DateTimeSelection|--|               |-|StartLocation|--|AUH|-|/StartLocation|--|                |-|EndLocation|--|LHR|-|/EndLocation|--|            |-|/OriginDestinationInformation|--|            |-|TravelPreferences|--|                |-|Baggage RequestType="A"/|--|         |-|/TravelPreferences|--|       |-|/ExchangeShoppingRQ|--|

In the Response

Optional

Parameter: AncillaryFeeGroups

Type: n/a

Description: Element used to pass details on ancilary options available for the shopped itinerary.

Sample Value:

        |-|TPA_Extensions|--|                   |-|Passenger documentNumber="6077049020878" type="ADT" firstName="MARCIN" lastName="DZIK"|--|                       |-|AncillaryFeeGroups|--|                           |-|AncillaryFeeGroup Code="IE" Name="IN-FLIGHT ENTERTAINMENT"|--|                               |-|AncillaryFeeItem Amount="0.00" Carrier="EY" Date="2018-11-19" Description="NEIGHBOR FREE SEAT" DestinationAirport="LHR" EndSegment="1" OriginAirport="AUH" PassengerCode="ADT" StartSegment="1"/|--|                             |-|AncillaryFeeItem Amount="0.00" Carrier="EY" Date="2018-11-27" Description="NEIGHBOR FREE SEAT" DestinationAirport="AUH" EndSegment="2" OriginAirport="LHR" PassengerCode="ADT" StartSegment="2"/|--|                         |-|/AncillaryFeeGroup|--|                       |-|/AncillaryFeeGroups|--|                  |-|/Passenger|--|

In the Response

Optional

Parameter: BaggageInformationList

Type: n/a

Description: used to pass baggage information available for the shopped itinerary

Sample Value:

        |-|TPA_Extensions|--|                   |-|Passenger documentNumber="6077049020878" type="ADT" firstName="MARCIN" lastName="DZIK"|--|                       |-|BaggageInformationList|--|                           |-|BaggageInformation AirlineCode="EY" ProvisionType="A"|--|                                |-|Segment Id="1"/|--|                              |-|Allowance Unit="kg" Weight="50"/|--|                         |-|/BaggageInformation|--|                          |-|BaggageInformation AirlineCode="EY" ProvisionType="A"|--|                                |-|Segment Id="2"/|--|                              |-|Allowance Unit="kg" Weight="50"/|--|                         |-|/BaggageInformation|--|                      |-|/BaggageInformationList|--|                  |-|/Passenger|--|

In the Response

Optional

Parameter: ValidateEMDForExchange

Type: n/a

Description: Detailed information about passenger ElectronicMiscellaneousDocuments validated for refundability or exchangeability

Sample Value:

    |-|ValidateEMDForExchange|--|               |-|Passenger documentNumber="6077049020878" firstName="MARCIN" lastName="DZIK"|--|                  |-|ElectronicMiscellaneousDocument refundable="R" type="A"|--|                      |-|Number|--|6074573937968|-|/Number|--|                        |-|ReasonForIssue|--|C|-|/ReasonForIssue|--|                        |-|UnusedAmount decimalPlaces="2" currencyCode="USD"|--|225.00|-|/UnusedAmount|--|                      |-|TotalAmount decimalPlaces="2" currencyCode="USD"|--|225.00|-|/TotalAmount|--|                    |-|/ElectronicMiscellaneousDocument|--|

  • Added new parameter to the service response schema to notify the user that the non-shopped segment requires rebooking

API Information

Format
XML
Current Version
2.1.0
Environment
Production

What's New

  • Added new parameter to the service response schema to notify the user that the non-shopped segment requires rebooking

Functional Updates And Enhancements

In the Response

Optional

Parameter: book

Type: boolean

Description: used to indicate that the flight segments require rebooking or not. book="false" is returned when flight segment details (including booking class) match values passed within /ExchangeShoppingRQ/OriginDestinationInformation/RelatedSegment

Sample Value:

...|-|ReservationSegment elapsedTime="85" electronicTicketingIndicator="true" endDateTime="2016-11-29T17:30:00" endLocation="ORD" marketingFlightNumber="233" marketingProvider="LH" marriageGroup="O" operatingProvider="LO" segmentNumber="1" startDateTime="2016-11-29T16:35:00" startLocation="KRK" stopQuantity="0" book="false"|--|...

  • The service has redesigned request and response schema
  • It is no longer necessary to provide PNR locator, the API will not modify the current PNR if provided.
  • Service now supports up to 9 ticket numbers (passengers)
  • Service response will return up to 50 solutions

API Information

Format
XML
Current Version
2.0.0
Environment
Production

What's New

  • The service has redesigned request and response schema
  • It is no longer necessary to provide PNR locator, the API will not modify the current PNR if provided.
  • Service now supports up to 9 ticket numbers (passengers)
  • Service response will return up to 50 solutions