Auto Price Air Exchanges

 

AutomatedExchangesLLSRQ is used to price an air ticket exchange.

API Information

Target Audience
All Sabre APIs Customers
Current Version
2.7.0
Authentication
Session Token
Service Action Code
AutomatedExchangesLLSRQ

This service is marketed to customers as Automated Exchanges (formerly QREX Plus). AutomatedExchangesLLSRQ is the replacement for the QREXLLSRQ service. The AutomatedExchangesLLSRQ service is available to ARC-based subscribers, and to over 80 BSP countries globally, as well as for Direct Ticketing carriers on select markets. Clients need to first validate that the service is available in their market before attempting to utilize it.

The most common AutomatedExchangesLLSRQ workflow is to change an itinerary within an existing booking. Clients wishing to exchange a ticket first need to retrieve the PNR utilizing the TravelItineraryReadLLSRQ service, cancel the existing itinerary using the OTA_CancelLLSRQ service, and then use the OTA_AirBookLLSRQ, or EnhancedAirBookRQ services to sell a new air itinerary.

Once the new air itinerary is successfully sold, the client can then utilize AutomatedExchangesLLSRQ to price the exchange using the .../ExchangeComparision node specifying the original ticket number via .../ExchangeComparision@OriginalTicketNumber. Please note that clients need to keep track of the .../ExchangeComparison@PQR_Number element/attribute returned via the initial AutomatedExchangesLLSRQ response message since this is the key to successfully storing the exchange, and ultimately driving the exchange. The .../ExchangeComparison@PQR_Number is used to represent the PQR number within the PNR.

After a successful, initial …/ExchangeComparison-based request if the client finds the returned pricing information satisfactory the client can then utilize the .../ExchangeConfirmation node specifying the .../ExchangeConformation@PQR_Number returned in the initial AutomatedExchangesLLSRQ response as the .../ExchangeConfirmation@PQR_Number to store the exchange/refund for subsequent ticketing. Once the exchange is successfully stored the client can then end and retrieve the PNR using the EndTransactionLLSRQ and TravelItineraryReadLLSRQ services, and then use the AirTicketLLSRQ service to drive the actual exchange using the .../OptionalQualifiers/PricingQualifiers/PriceQuote@ReissueNumber element/attribute.

If the client finds the returned pricing information unsatisfactory after the initial .../ExchangeComparison-based request the PNR should be ignored by calling the IgnoreTransactionLLSRQ service to return the itinerary/PNR to the state it was in at time of initial PNR retrieval.

For additional information please refer to the Format Finder Help System reference: qrxfo200.

Please note that TravelItineraryReadRQ is required prior to executing AutomatedExchangesLLSRQ.

Sample Request

<!--Pre-Conditions: a PNR with at least one itinerary segment must be in the current SWS work area/session.-->
<!--Pre-Conditions: the IPCC or PCC where the application is attempting to perform the exchange or refund must also have Sabre Automated Exchanges activated via its Travel Journal Record (TJR).-->
	<!--Step 1: Price the exchange.-->
	<AutomatedExchangesRQ
 ReturnHostCommand="true" Version="2.7.0"
  xmlns="http://webservices.sabre.com/sabreXML/2011/10">
 <ExchangeComparison
       OriginalTicketNumber="1252022640131">
  <ExchangeOverrides>
   <ChangeFee>500.00</ChangeFee>
  </ExchangeOverrides>
  <PriceRequestInformation>
   <OptionalQualifiers>
    <FlightQualifiers>
     <VendorPrefs>
      <Airline
       Code="BA"/>
     </VendorPrefs>
    </FlightQualifiers>
    <MiscQualifiers>
     <TourCode>
      <Text>AGCYRTLR</Text>
     </TourCode>
    </MiscQualifiers>
    <PricingQualifiers>
     <ChangeFeeCollectionOptions>
      <CollectFee
      OnEMD="true"/>
     </ChangeFeeCollectionOptions>
     <NameSelect NameNumber="1.1"/>
     <RetailerRuleQualifier>
      <Qualifier>MINUS5PCT</Qualifier>
     </RetailerRuleQualifier>
    </PricingQualifiers>
   </OptionalQualifiers>
  </PriceRequestInformation>
 </ExchangeComparison>
</AutomatedExchangesRQ>
	<!--Step 2: Commit the exchange.-->
	<AutomatedExchangesRQ
 ReturnHostCommand="true" Version="2.7.0"
  xmlns="http://webservices.sabre.com/sabreXML/2011/10">
 <ExchangeConfirmation
     PQR_Number="2">
  <OptionalQualifiers>
   <FOP_Qualifiers>
    <BasicFOP
     Type="CA"/>
   </FOP_Qualifiers>
   <MiscQualifiers>
    <Commission Percent="1"/>
   </MiscQualifiers>
  </OptionalQualifiers>
 </ExchangeConfirmation>
</AutomatedExchangesRQ>

Sample Response

	<!--Step 1: Price the exchange response.-->
	<AutomatedExchangesRS
 Version="2.7.0"
  xmlns="http://webservices.sabre.com/sabreXML/2011/10">
 <STL:ApplicationResults
  status="Complete"
   xmlns:STL="http://services.sabre.com/STL/v01">
  <STL:Success
     timeStamp="2018-09-28T01:21:59.436">
   <STL:SystemSpecificResults>
    <STL:HostCommand
   LNIATA="5DE8F9">WFRF</STL:HostCommand>
    <STL:RecordID>TKTHLI700-8168-999196215-1538115714857-92-arex</STL:RecordID>
   </STL:SystemSpecificResults>
  </STL:Success>
 </STL:ApplicationResults>
 <BaggageInfo>
  <FlightSegment
   ArrivalDateTime="03-23" DepartureDateTime="03-23"
   FlightNumber="1504" RPH="1" ResBookDesigCode="B"
    SegmentNumber="1">
   <DestinationLocation
    LocationCode="DFW"/>
   <FreeBaggageAllowance
    Number="01P"/>
   <MarketingAirline Code="BA"
    FlightNumber="1504"/>
   <OriginLocation
   LocationCode="LHR"/>
  </FlightSegment>
  <FlightSegment
   ArrivalDateTime="03-31" DepartureDateTime="03-30"
   FlightNumber="1505" RPH="2" ResBookDesigCode="B"
    SegmentNumber="2">
   <DestinationLocation
    LocationCode="LHR"/>
   <FreeBaggageAllowance
    Number="01P"/>
   <MarketingAirline Code="BA"
    FlightNumber="1505"/>
   <OriginLocation
  LocationCode="DFW"/>
  </FlightSegment>
  <Text>BAG ALLOWANCE     -LHRDFW-01P/BA/EACH PIECE UP TO 50 POUNDS/23</Text>
  <Text>KILOGRAMS AND UP TO 81 LINEAR INCHES/208 LINEAR CENTIMETERS</Text>
  <Text>2NDCHECKED BAG FEE-LHRDFW-GBP65.00/BA/UP TO 50 POUNDS/23 KILOGR</Text>
  <Text>AMS AND UP TO 81 LINEAR INCHES/208 LINEAR CENTIMETERS**</Text>
  <Text>BAG ALLOWANCE     -DFWLHR-01P/BA/EACH PIECE UP TO 50 POUNDS/23</Text>
  <Text>KILOGRAMS AND UP TO 81 LINEAR INCHES/208 LINEAR CENTIMETERS</Text>
  <Text>2NDCHECKED BAG FEE-DFWLHR-GBP65.00/BA/UP TO 50 POUNDS/23 KILOGR</Text>
  <Text>AMS AND UP TO 81 LINEAR INCHES/208 LINEAR CENTIMETERS**</Text>
  <Text>**BAG FEES APPLY AT EACH CHECK IN LOCATION</Text>
  <Text>CARRY ON ALLOWANCE</Text>
  <Text>LHRDFW DFWLHR-02P/AA</Text>
  <Text>01/UP TO 40 LINEAR INCHES/101 LINEAR CENTIMETERS</Text>
  <Text>01/UP TO 45 LINEAR INCHES/115 LINEAR CENTIMETERS</Text>
  <Text>ADDITIONAL ALLOWANCES AND/OR DISCOUNTS MAY APPLY DEPENDING ON</Text>
  <Text>FLYER-SPECIFIC FACTORS /E.G. FREQUENT FLYER STATUS/MILITARY/</Text>
  <Text>CREDIT CARD FORM OF PAYMENT/EARLY PURCHASE OVER INTERNET,ETC./</Text>
  <Text>EMBARGOES-APPLY TO EACH PASSENGER</Text>
  <Text>LHRDFW DFWLHR-AA</Text>
  <Text>PET IN CABIN NOT PERMITTED</Text>
  <Text>OVER 100 POUNDS/45 KILOGRAMS NOT PERMITTED</Text>
 </BaggageInfo>
 <Endorsements>602432/C/GGAIRBAGPUK</Endorsements>
 <ExchangeComparison
   PQR_Number="02">
  <AirItineraryPricingInfo
     Type="O">
   <ItinTotalFare>
    <BaseFare Amount="1221.00"
     CurrencyCode="GBP"/>
    <Taxes
     TotalAmount="400.01"/>
    <TotalFare
   Amount="1621.01"/>
   </ItinTotalFare>
  </AirItineraryPricingInfo>
  <AirItineraryPricingInfo
     Type="N">
   <ItinTotalFare>
    <BaseFare Amount="1245.00"
     CurrencyCode="GBP"/>
    <Taxes
     TotalAmount="400.01"/>
    <TotalFare
   Amount="1645.01"/>
   </ItinTotalFare>
  </AirItineraryPricingInfo>
  <AirItineraryPricingInfo
     Type="E">
   <ItinTotalFare>
    <BaseFare Amount="24.00"
     CurrencyCode="GBP"/>
    <Taxes
     TotalAmount="0.00"/>
    <TotalFare
   Amount="24.00"/>
   </ItinTotalFare>
  </AirItineraryPricingInfo>
  <TaxComparison
    Type="O">
   <Tax Amount="78.00" TaxCode="GB"/>
   <Tax
    Amount="44.91" TaxCode="UB"/>
   <Tax Amount="229.00"
   TaxCode="YQ"/>
  </TaxComparison>
  <TaxComparison
    Type="O">
   <Tax Amount="27.80" TaxCode="US"/>
   <Tax
    Amount="4.30" TaxCode="YC"/>
   <Tax Amount="5.30"
   TaxCode="XY"/>
  </TaxComparison>
  <TaxComparison
    Type="O">
   <Tax Amount="3.00" TaxCode="XA"/>
   <Tax
    Amount="4.30" TaxCode="AY"/>
   <Tax Amount="3.40"
   TaxCode="XF"/>
  </TaxComparison>
  <TaxComparison
    Type="N">
   <Tax Amount="78.00" TaxCode="GB"/>
   <Tax
    Amount="44.91" TaxCode="UB"/>
   <Tax Amount="229.00"
   TaxCode="YQ"/>
  </TaxComparison>
  <TaxComparison
    Type="N">
   <Tax Amount="27.80" TaxCode="US"/>
   <Tax
    Amount="4.30" TaxCode="YC"/>
   <Tax Amount="5.30"
   TaxCode="XY"/>
  </TaxComparison>
  <TaxComparison
    Type="N">
   <Tax Amount="3.00" TaxCode="XA"/>
   <Tax
    Amount="4.30" TaxCode="AY"/>
   <Tax Amount="3.40"
   TaxCode="XF"/>
  </TaxComparison>
  <TaxComparison
    Type="E">
   <Tax Amount="0.00" TaxCode="GB"/>
   <Tax
    Amount="0.00" TaxCode="UB"/>
   <Tax Amount="0.00"
   TaxCode="YQ"/>
  </TaxComparison>
  <TaxComparison
    Type="E">
   <Tax Amount="0.00" TaxCode="US"/>
   <Tax
    Amount="0.00" TaxCode="YC"/>
   <Tax Amount="0.00"
   TaxCode="XY"/>
  </TaxComparison>
  <TaxComparison
    Type="E">
   <Tax Amount="0.00" TaxCode="XA"/>
   <Tax
    Amount="0.00" TaxCode="AY"/>
   <Tax Amount="0.00"
   TaxCode="XF"/>
  </TaxComparison>
  <ExchangeDetails
   ChangeFee="500.00" ExchangeReissue="E"
     TotalRefund="524.00">
   <ChangeFeeCollectionOptions>
    <CollectTotal
     Amount="24.00"/>
    <FeeCollectionMethod>FEE REPORTED ON SEPARATE DOCUMENT</FeeCollectionMethod>
   </ChangeFeeCollectionOptions>
   <Category35NetFare>
    <FareInformation
     TicketedFareLevel="NET" Type="O">
     <BaseFare
      Amount="1161.00" CurrencyCode="GBP"/>
     <TotalTax
      Amount="400.01" CurrencyCode="GBP"/>
     <TotalFare
      Amount="1561.01" CurrencyCode="GBP"/>
     <TaxInformation
       Type="O">
      <Tax Amount="78.00"
       TaxCode="GB"/>
      <Tax Amount="44.91"
       TaxCode="UB"/>
      <Tax Amount="229.00"
      TaxCode="YQ"/>
     </TaxInformation>
     <TaxInformation
       Type="O">
      <Tax Amount="27.80"
       TaxCode="US"/>
      <Tax Amount="4.30"
       TaxCode="YC"/>
      <Tax Amount="5.30"
      TaxCode="XY"/>
     </TaxInformation>
     <TaxInformation
       Type="O">
      <Tax Amount="3.00"
       TaxCode="XA"/>
      <Tax Amount="4.30"
       TaxCode="AY"/>
      <Tax Amount="4.50"
     TaxCode="XF"/>
     </TaxInformation>
    </FareInformation>
    <FareInformation
     TicketedFareLevel="NET" Type="N">
     <BaseFare
      Amount="1183.00" CurrencyCode="GBP"/>
     <TotalTax
      Amount="400.01" CurrencyCode="GBP"/>
     <TotalFare
      Amount="1583.01" CurrencyCode="GBP"/>
     <TaxInformation
       Type="N">
      <Tax Amount="78.00"
       TaxCode="GB"/>
      <Tax Amount="44.91"
       TaxCode="UB"/>
      <Tax Amount="229.00"
      TaxCode="YQ"/>
     </TaxInformation>
     <TaxInformation
       Type="N">
      <Tax Amount="27.80"
       TaxCode="US"/>
      <Tax Amount="4.30"
       TaxCode="YC"/>
      <Tax Amount="5.30"
      TaxCode="XY"/>
     </TaxInformation>
     <TaxInformation
       Type="N">
      <Tax Amount="3.00"
       TaxCode="XA"/>
      <Tax Amount="4.30"
       TaxCode="AY"/>
      <Tax Amount="3.40"
  TaxCode="XF"/>
     </TaxInformation>
    </FareInformation>
   </Category35NetFare>
   <AdditionalText>CHG FEE AMT MODIFIED - REISSUE GUARANTEE NO LONGER APPLIES</AdditionalText>
  </ExchangeDetails>
 </ExchangeComparison>
 <Source
  AgencyCity="LHR" AgentDutySine="HA0*" AgentWorkArea="A"
  CreateDateTime="2018-09-28T01:21" IATA_Number="91214686"
  PrimeHostID="1S" PseudoCityCode="NH01"/>
 <Text>LOWER FARE FOUND - QUIT TO REBOOK 1S2S</Text>
</AutomatedExchangesRS>
	<!--Step 2: Commit the exchange response.-->
	<AutomatedExchangesRS
 Version="2.7.0"
  xmlns="http://webservices.sabre.com/sabreXML/2011/10">
 <STL:ApplicationResults
  status="Complete"
   xmlns:STL="http://services.sabre.com/STL/v01">
  <STL:Success
     timeStamp="2018-09-28T01:22:00.595">
   <STL:SystemSpecificResults>
    <STL:HostCommand
  LNIATA="5DE8F9">WFRF</STL:HostCommand>
    <STL:RecordID>TKTHLI700-8168-999196215-1538115720316-93-arex</STL:RecordID>
   </STL:SystemSpecificResults>
  </STL:Success>
 </STL:ApplicationResults>
 <ExchangeConfirmation
  PQR_Number="02"/>
 <Source AgencyCity="LHR" AgentDutySine="HA0*"
  AgentWorkArea="A" CreateDateTime="2018-09-28T01:22"
  IATA_Number="91214686" PrimeHostID="1S" PseudoCityCode="NH01"/>
</AutomatedExchangesRS>

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

Docs Navigation