Exchange Shop AS

 

The Exchange Shop web service allows an airline customer (who needs to change a ticketed itinerary) to get information about available alternate itinerary options along with the exchange cost of each.

API Information

Target Audience
Sabre Airline Solutions
Current Version
1.1.2
Authentication
Session Token
Service Action Code
TKT_ExchangeShoppingRQ

Exchange Shop allows airline customers to shop for available prices and routes when considering an itinerary change. With this solution, the customer will no longer need to go through a series of steps in order to find the most cost effective flight alternative for new desired travel dates and/or departure/arrival cities or airports.

Customers are able to consider various itinerary options and review the costs that would apply without having to alter their confirmed seats.

Exchange Shop provides the following benefits:

  • Identifies fares in the ticket to be exchanged and, if all of them have Category 31 (Voluntary Changes) filed, returns available itinerary options that are Category 31 compliant and the exchange cost for each passenger in the request.
  • Allows shopping for alternate board points, off points and/or travel dates of a ticketed itinerary.
  • Provides a configurable setting to specify the maximum number of itinerary solutions to be returned.
  • When there are multiple passengers in the PNR, provides the ability to select all or some of passengers to be considered during the Exchange Shop process.
  • Provides ability to initiate Exchange Shop from unchanged PNRs or those that have been modified (segments added, deleted or changed).
  • Provides ability to initiate Exchange Shop when there is no PNR (Example: PNR was purged).
  • Provides ability to add legs to the originally ticketed itinerary (Example: Changing it from a one-way to a round-trip fare).

In addition, customers are able to shop using the following optional qualifiers:

  • Search for preferred airline.
  • Exclude an airline or search with non-preferred airline.
  • Specify maximum number of connections.
  • Specify maximum number of stops.
  • Specify online carrier service only.
  • Specify interline carrier service.
  • Search by date and time.
  • Specify specific connection cities/airports.
  • Use same connecting points.
  • Shop by cabin class.
  • Shop by corporate ID.
  • Shop by Account Code.
  • Override Passenger Type Code (PTC).
  • Override default payment currency.

The Exchange Shop web service can be used by XML based web sites, internet booking engines, front end GUI web services, kiosk web services, and mobile applications.

To exchange tickets to one of the itinerary options found using this service, AERRQ service can be used.

Please note: Exchange Shop is a Premium shopping solution requiring subscription. Please contact your Sabre Account Manager for subscription details.

Sample Request

<ExchangeShoppingRQ Version="1.1.2" solutionOrder="byGrandTotalDifference" maxSolutions="50" xmlns="http://www.sabre.com/ns/Ticketing/exchangeshop/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:STL="http://services.sabre.com/STL/v01" xsi:schemaLocation="http://www.sabre.com/ns/Ticketing/exchangeshop/1.0 file:///C:/WS%20Trunk/exs/xsd/draft/TKT_ExchangeShopping_v1.1.2.xsd">
	<Header/>
	<POS>
		<STL:Actual>WAG</STL:Actual>
		<STL:Home>WAG</STL:Home>
		<STL:Sine>SD1</STL:Sine>
		<STL:DutyCode>4</STL:DutyCode>
		<STL:Lniata>65A81E</STL:Lniata>
		<StationNumber>02393274</StationNumber>
		<ShoppingPath requestType="ADVEXC" bookingChannel="TCKT"/>
	</POS>
	<TicketingProvider>K0</TicketingProvider>
	<PassengerInformation>
		<PassengerWithPNR pnrLocator="IILUVE" referenceNumber="1.1" firstName="JAN" lastName="KOWALSKI">
			<DocumentNumber>7952115320683</DocumentNumber>
		</PassengerWithPNR>
		<PassengerWithPNR pnrLocator="IILUVE" referenceNumber="2.1" firstName="MARIUSZ" lastName="KOWALSKI">
			<DocumentNumber>7952115320684</DocumentNumber>
		</PassengerWithPNR>
	</PassengerInformation>
	<OriginDestinationInformation shopIndicator="true">
		<DateTimeSelection>
			<DepartureDate>2014-12-11</DepartureDate>
		</DateTimeSelection>
		<StartLocation>SYD</StartLocation>
		<EndLocation>LAX</EndLocation>
	</OriginDestinationInformation>
	<OriginDestinationInformation shopIndicator="true">
		<DateTimeSelection>
			<DepartureDate>2014-12-21</DepartureDate>
		</DateTimeSelection>
		<StartLocation>LAX</StartLocation>
		<EndLocation>SYD</EndLocation>
	</OriginDestinationInformation>
	<TravelPreferences>
		<PriceRequestInformation noPenaltyFares="true" brandedFares="false"/>
	</TravelPreferences>
</ExchangeShoppingRQ>

Sample Response

<ExchangeShoppingRS xmlns="http://www.sabre.com/ns/Ticketing/exchangeshop/1.0" Version="1.1.2" solutions="1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sabre.com/ns/Ticketing/exchangeshop/1.0 file:///C:/WS%20Trunk/exs/xsd/draft/TKT_ExchangeShopping_v1.1.2.xsd">
	<Header messageID="TKTHLI700-12753-1190967300-1413448787712-4609-exs" timeStamp="2014-10-16T03:39:47">
		<STL:OrchestrationID xmlns:STL="http://services.sabre.com/STL/v01" seq="2">TKTHLI700-12753-1190967300-1413448787712-4609-exs</STL:OrchestrationID>
		<STL:Results xmlns:STL="http://services.sabre.com/STL/v01">
			<STL:Success>
				<STL:System>TKT-WS</STL:System>
				<STL:Source>EXS</STL:Source>
			</STL:Success>
		</STL:Results>
	</Header>
	<POS xmlns:STL="http://services.sabre.com/STL/v01">
		<STL:Actual>WAG</STL:Actual>
		<STL:Home>WAG</STL:Home>
		<STL:Sine>SD1</STL:Sine>
		<STL:DutyCode>4</STL:DutyCode>
		<STL:Lniata>6F7F1A</STL:Lniata>
		<StationNumber>02393274</StationNumber>
		<ShoppingPath requestType="ADVEXC" bookingChannel="TCKT"/>
	</POS>
	<Solution pricingSequence="1" sequence="1">
		<BookItinerary>
			<OriginDestination elapsedTime="990" endLocation="LAX" segmentQuantity="2" startLocation="SYD">
				<ReservationSegment segmentNumber="1" elapsedTime="90" electronicTicketingIndicator="true" endDateTime="2014-12-18T09:30:00" endLocation="BNE" marketingFlightNumber="925" marketingProvider="K0" marriageGroup="O" operatingProvider="K0" startDateTime="2014-12-18T09:00:00" startLocation="SYD" stopQuantity="0"/>
				<ReservationSegment segmentNumber="2" elapsedTime="795" electronicTicketingIndicator="true" endDateTime="2014-12-18T06:30:00" endLocation="LAX" marketingFlightNumber="7" marketingProvider="K0" marriageGroup="I" operatingProvider="K0" startDateTime="2014-12-18T11:15:00" startLocation="BNE" stopQuantity="0"/>
			</OriginDestination>
			<OriginDestination elapsedTime="990" endLocation="SYD" segmentQuantity="2" startLocation="LAX">
				<ReservationSegment segmentNumber="3" elapsedTime="795" electronicTicketingIndicator="true" endDateTime="2014-12-28T06:30:00" endLocation="BNE" marketingFlightNumber="8" marketingProvider="K0" marriageGroup="I" operatingProvider="K0" startDateTime="2014-12-28T11:15:00" startLocation="LAX" stopQuantity="0"/>
				<ReservationSegment segmentNumber="4" elapsedTime="90" electronicTicketingIndicator="true" endDateTime="2014-12-28T09:30:00" endLocation="SYD" marketingFlightNumber="926" marketingProvider="K0" marriageGroup="O" operatingProvider="K0" startDateTime="2014-12-28T09:00:00" startLocation="BNE" stopQuantity="0"/>
			</OriginDestination>
		</BookItinerary>
		<Fare postCalcIndex="1" pricingSequence="1" valid="true" passengersInDifferentCabins="false" requireSplitPNR="false">
			<ReservationSegmentDetails segmentNumber="1">
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321495" fareBasis="YEB" meal="M"/>
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321496" fareBasis="YEB" meal="M"/>
			</ReservationSegmentDetails>
			<ReservationSegmentDetails segmentNumber="2">
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321495" fareBasis="YEB" meal="BD"/>
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321496" fareBasis="YEB" meal="BD"/>
			</ReservationSegmentDetails>
			<ReservationSegmentDetails segmentNumber="3">
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321495" fareBasis="YEB" meal="BD"/>
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321496" fareBasis="YEB" meal="BD"/>
			</ReservationSegmentDetails>
			<ReservationSegmentDetails segmentNumber="4">
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321495" fareBasis="YEB" meal="M"/>
				<PassengerBookingDetails bookingClass="Y" cabin="Y" documentNumber="7952115321496" fareBasis="YEB" meal="M"/>
			</ReservationSegmentDetails>
			<PassengerPriceInformation>
				<Passenger documentNumber="7952115321495" firstName="JAN" lastName="KOWALSKI" type="ADT">
					<ResultPriceDifference differenceType="AddCollect" lastDayToTicket="2014-12-14">
						<FareDifference currencyCode="NZD" decimalPlace="2">0.00</FareDifference>
						<TaxDifference currencyCode="NZD" decimalPlace="2">51.40</TaxDifference>
						<SubtotalDifference currencyCode="NZD" decimalPlace="2">51.40</SubtotalDifference>
						<GrandTotalDifference currencyCode="NZD" decimalPlace="2">51.40</GrandTotalDifference>
						<Message type="Advisory">LAST DATE TO PURCHASE 14DEC14 - 1346)4</Message>
					</ResultPriceDifference>
				</Passenger>
				<Passenger documentNumber="7952115321496" firstName="MARIUSZ" lastName="KOWALSKI" type="ADT">
					<ResultPriceDifference differenceType="AddCollect" lastDayToTicket="2014-12-14">
						<FareDifference currencyCode="NZD" decimalPlace="2">0.00</FareDifference>
						<TaxDifference currencyCode="NZD" decimalPlace="2">51.40</TaxDifference>
						<SubtotalDifference currencyCode="NZD" decimalPlace="2">51.40</SubtotalDifference>
						<GrandTotalDifference currencyCode="NZD" decimalPlace="2">51.40</GrandTotalDifference>
						<Message type="Advisory">LAST DATE TO PURCHASE 14DEC14 - 1346)4</Message>
					</ResultPriceDifference>
				</Passenger>
			</PassengerPriceInformation>
			<TotalPriceDifference differenceType="AddCollect" lastDayToTicket="2014-12-14">
				<FareDifference currencyCode="NZD" decimalPlace="2">0.00</FareDifference>
				<TaxDifference currencyCode="NZD" decimalPlace="2">102.80</TaxDifference>
				<SubtotalDifference currencyCode="NZD" decimalPlace="2">102.80</SubtotalDifference>
				<GrandTotalDifference currencyCode="NZD" decimalPlace="2">102.80</GrandTotalDifference>
			</TotalPriceDifference>
		</Fare>
	</Solution>
</ExchangeShoppingRS>

If you are a Sabre customer currently using Sabre APIs in production, access  Resources

Docs Navigation