Release Notes 20.2

Schema Version and Retirement

The latest schema, version 52.0, released with Universal API 22.3.

Important!

Functional Updates

 Release 20.2 indicates content for the upcoming releases.

Update Provider Detailed Description Associated Transactions Schema Change Schema Location/XPATH
Defect Fixes

For details, see:

 

     
20.2.4

Automatically append mandatory SSR for ancillaries at time of booking and fulfillment.

1G

Previously, if the @SSRFreeText was not in the booking and/or fulfillment request, that information would not return in the response message, and potentially the booking would fail.

This enhancement automatically adds the mandatory @SSRFreeText for the ancillary in the booking so that the ancillary is booked successfully, in both Air Booking and Air Merchandising Fulfillment. This results in a reduced risk of ancillary book requests from being rejected. For example, if an Air Create Reservation request contains an ancillary (e.g. baggage) with an Airline Code and Service Sub-Code, but no SSR Free Text, Universal API automatically appends the mandatory SSR to the booking.

This is a limited-release feature. Please contact your Travelport account representative for further details.

Notes:

  • If the request contains SSR free text, it passes the value.
  • If the request is missing SSR text:
    • For booking and fulfillment, if the request contains AirlineCode and ServiceSubCode values, but no SSR free text, Universal API adds text from cached data.
    • If SSR free text is null, and Universal API does not have an associated value in cached data that correlates with AirlineCode, ServiceSubcode the request passes blank (null) data.
    • The response populates missing SSR text from the request to add in the fee text field in the response (if text is available) to accompany the explanation.
  • If Universal API appends an SSRFreeText value to a request, the appended SSRFreeText returns in the booking or fulfilment response.
    • As of this release, an appended SSR Free Text value is sent in the response in the OptionalService @SSRFreeText
    • /SSR @FreeText also returns in secondary SSRs like XBAG, in /UniversalRecord/BookingTraveler.

Air Booking

No

Universal.xsd

OptionalServices/OptionalService @SSRFreeText is automatically appended in:

  • AirCreateReservationReq/AirPricingSolution/
  • AirMerchandisingFulfillmentReq/

And returns in UniversalRecord/AirReservation/OptionalServices/OptionalService @SSRFreeText in:

  • AirCreateReservationRsp/
  • AirMerchandisingFulfillmentRsp/

/SSR @FreeText also returns in secondary SSRs like XBAG. For example,

  • AirCreateReservationRsp/UniversalRecord/BookingTraveler/SSR @FreeText
  • AirMerchandisingFulfillmentRsp/UniversalRecord/BookingTraveler/SSR @FreeText

 

 

20.2.3

AirPrice and LowFareShop responses for UPSELL fares return more detailed information.

 

1G, 1V, 1P

Previously, messaging customers (e.g. via Travelport Universal API) did not receive specific information or details for AirPrice and LowFareSearch transactions when the response returned UPSELL fares.

This enhancement provides accurate and competitive responses to the customer for the following:

In the LowFareSearch response, the addition of @TaxInfo, @PlatingCarrier and @FareCalc for UPSELL fares allow customers to display complete fare details to the traveler:

  • Plating carrier returns for UPSELL fares in Galileo (1G) and Apollo (1V) Price Points and pricing solutions.
  • Plating carrier returns for UPSELL fares in Travelport Worldspan pricing solutions.
  • Tax Data and Fare Calc returns for UPSELL fares in Travelport Worldspan.

In the AirPrice response, the addition of /BagDetails and /CarryOnDetails, as well as @FareCalc and @PlatingCarrier for UPSELL fares in the AirPrice response when price is requested with Brand Modifiers, allow customers to display complete fare details to the traveller:

  • Baggage allowance and fees returns for UPSELL fares in Travelport Worldspan.
  • Fare Calc returns for UPSELL fares in Travelport Worldspan (when the FareFamily modifier is present in the request).
  • Plating carrier returns for UPSELL fares in Travelport Worldspan.

Branded Fares

No

Air.xsd

  • LowFareSearchRsp/AirPricingSolution/AirPricingInfo
    • @TaxInfo
    • @PlatingCarrier
    • @FareCalc
    • @PlatingCarrier
  • AirPriceRsp/AirPriceResult/AirPricingSolution/AirPricingInfo
    • /BaggageAllowances/BaggageAllowanceInfo/BagDetails
    • /BaggageAllowances/CarryOnAllowanceInfo/CarryOnDetails
    • /FareCalc
    • /PlatingCarrier

Baggage allowance and fees returned in price

1P

This enhancement provides the ability to label the costs for the first and second checked bag in the price display to do a total cost calculation upfront, so that travelers can select the option with the best value and most relevance. This enhancement also returns weight allowances for the first and second checked, and carry-on bags, for the sake of transparency and to comply with regulation.

In detail, when FareFamilyDisplay/@ModifierType= "LowestFareInBrand," "FareFamily," "MaintainBookingCode." or BasicDetailsOnly/@ReturnBasicDetails="true" in AirPriceReq/AirPricingModifiers/BrandModifiers/, the following elements return for Upsell Fares in AirPriceRsp/AirPriceResult/AirPricingSolution/AirPricingInfo/BaggageAllowances:

  • BaggageAllowanceInfo
  • CarryOnAllowanceInfo
  • EmbargoInfo

Universal API properly returns the baggage allowance details, refundable fares are marked refundable, and non-refundable fares are marked non-refundable, for upsell fares in LowFareSearch response when invoking Upsell functionality in Low Fare Shopping and Air Price.

Branded Fares

Yes

Air v49.0

AirPriceReq/AirPricingModifiers/BrandModifiers

  • /FareFamilyDisplay/@ModifierType=
    • "FareFamily"
    • "LowestFareInBrand"
    • "MaintainBookingCode"
  • /BasicDetailsOnly/@ReturnBasicDetails="true"

AirPriceRsp/AirPriceResult/AirPricingSolution/AirPricingInfo/BaggageAllowances/

  • BaggageAllowanceInfo
  • CarryOnAllowanceInfo
  • EmbargoInfo

Enhance the AirPrice to limit brand details for Farefamily display.

 

1G

Previously, the Air Price response contains a large number of unstructured free text and structured data, for each optional service, for each brand returned in the pricing response. This enhancement to suppress brand details reduces the response time and size for price responses when a fare family display is requested. Results present quicker and reduce wait times.

 

Branded Fares No

Air.xsd

AirPriceReq/AirPricingModifiers/BrandModifiers/FareFamilyDisplay

@ModifierType="SuppressBrandDetails"

Remove a PNR from a queue.

1G

Prior to this release, PNRs could only be removed from Worldspan (1P) queues using GdsQueueRemove.

With this release, a single PNR can be removed from a Galileo (1G) GDS queue in a one transaction.

GDS Queue Remove

No

gdsQueue.xsd Not dependent on schema version

  • GdsQueueRemoveReq @ProviderCode="1G"
20.2.2

Schema v50 released.

20.2 C# Proxy Files updated

Some async schema files deprecated.

1G, 1V, 1P

Schema v50 is available with this release (re-released on 03 June 2020 due to a defect fix).

Universal API 20.2 C# Proxy files are available with this release.

The following schema are deprecated from v50, but are still available in v49 and earlier:

  • HotelSearchAvailabilityAsynchReq
  • HotelSearchAvailabilityAsynchRsp
  • LowFareSearchAsynchReq
  • LowFareSearchAsynchRsp
  • RetrieveHotelSearchAvailabilityReq
  • RetrieveHotelSearchAvailabilityRsp
  • RetrieveLowFareSearchReq
  • RetrieveLowFareSearchRsp

Customers should use LowFareSearch or HotelAvailability transactions.

Async Air Shopping

Async Hotel Shopping

Yes Air v49.0, Hotel v49.0

Return structured baggage information in Air Merchandising responses.

1G

With this release, when baggage information returns, it displays in a structured format in OptionalServices/OptionalService in both Air Merchandising Offer Availability and Air Merchandising Fulfillment.

In the response, when baggage information returns:

  • @FirstPiece and @LastPiece are used to identify which of the paid baggage options available (for a given air element) is the first paid bag and which one the second, regardless of being from a no-bag fare or a bag-included fare in a structured format in the optional services.
  • Clearly identifies price and currency of the bag in the optional services.
  • When number of pieces exists, keeps the current attribute '@Quantity' enabled and includes the maximum weight allowed in the optional services.
  • When weight exists, @TotalWeight indicates the maximum allowed weight, and returns in a structured attribute in optional services.

For example,

<OptionalServices>
 <OptionalServicesTotal/>
  <OptionalService Type="Baggage" TotalPrice="AUD27.70" SupplierCode="AR" PerTraveler="false" 
  CreateDate="2020-02-04T16:47:19.178+00:00" ServiceStatus="Offered" SequenceNumber="100000" 
  ServiceSubCode="02U" SSRCode="ASVC" Key="zhXJNACJ3BKA0HAAAAAAAA==" AssessIndicator="MileageOrCurrency" 
  InclusiveOfTax="true" InterlineSettlementAllowed="false" GeographySpecification="Portion" Source="MCE" 
  ViewableOnly="true" TotalWeight="46" ProviderCode="1G" Quantity="1" BasePrice="AUD27.70" 
  ApproximateTotalPrice="AUD27.70" ApproximateBasePrice="AUD27.70" Taxes="AUD0.00" 
  OptionalServicesRuleRef="zhXJNACJ3BKA1HAAAAAAAA==" FirstPiece="2" LastPiece="2">

Air Merchandising Offer Availability

Air Merchandising Fulfillment

No

Air.xsd. Not dependent on schema version

AirMerchandisingOfferAvailabilityRsp and AirMerchandisingFulfillmentRsp/

OptionalServices/OptionalService @FirstPiece @LastPiece @TotalWeight

 

Support fare details in optional services

1G

Prior to this release, the prices for branded fare options were sometimes different in the Air Merchandising Offer Availability response than those returned in the Air Pricing response.

With this release for a Galileo request only, to ensure that the prices for optional services in the Air Merchandising Offer Availability response match the prices in the Air Pricing response, you must send AirSolution/HostToken in Air Merchandising Offer Availability request. By sending the Host Token, the branded fare prices associated with air segments are returned.

  • This enhancement matches both prices and the number of optional services that are returned in the Price response.
  • If HostToken is not included in the Air Merchandising Offer Availability request, optional services are returned but the prices may not be accurate.

Air Merchandising Offer Availability

No

Air.xsd

Send host token in AirMerchandisingOfferAvailabilityReq/
AirSolution/HostToken

Schema change for future functionality.

1G, 1V

Schema change for future functionality.

Fare Rules Yes

Air v50

Add /CategoryDetails and /VariableCategoryDetails to AirFareRulesRsp/FareRule/StructuredFareRules/FareRuleCategoryType/VariableCategoryDetails/

Schema change for future functionality.

1G, 1V, 1P

Schema change for future functionality.

Low Fare Shopping

Air Price

Yes

Air v50

Add TicketingCode @Value to:

  • LowFareSearchRsp/AirPricePointList/AirPricePoint/AirPricingInfo/FareInfo/TicketingCode/
  • LowFareSearchRsp/AirPricingSolution/AirPricingInfo/FareInfo/TicketingCode/
  • AirPriceRsp/AirPriceResult/AirPricingSolution/AirPricingInfo/FareInfo/TicketingCode/
20.2.1
           
Universal

Schema change for future functionality.

1G

Schema change for future functionality.

Sessioned Booking Yes

SharedBooking v50.0

The following elements were added to /AddPnrElement/ and /UpdatePnrElement/ in the BookingPnrElementReq:

  • FormOfPayment
  • ActionStatus
  • OSI
  • AccountingRemark
  • GeneralRemark
  • UnassociatedRemark
           
Air

Schema change for future functionality.

1G

Schema change for future functionality.

No

gdsQueue.xsd Not dependent on schema version

  • GdsQueueRemoveReq @ProviderCode="1G"

Schema change for future functionality.

1G

Schema change for future functionality.

Air Merchandising Offer Availability

Air Merchandising Fulfillment

No

Air.xsd. Not dependent on schema version

AirMerchandisingOfferAvailabilityRsp and AirMerchandisingFulfillmentRsp/

OptionalServices/OptionalService @FirstPiece @LastPiece @TotalWeight

 

Eliminate default calls to Merchandising Content Engine during Air Price.

1G, 1V, 1P

This enhancement eliminates unneeded calls to Merchandising Content Engine (MCE). Previously, AirPrice, by default, was set to call MCE even though ReturnServices attribute was not in the request. This enhancement changes this default behavior to ensure only customers who need this setting have it set. E.g., @ReturnServices default is set to false instead of true. Options vary based on schema used:

  • Air v48 and earlier: Customers currently using Optional Services in the Air Price response (/AirPricingSolution/OptionalServices), but not sending the @ReturnServices Air Price request modifier, must send @ReturnServices=”true” or contact their Travelport representative to be added to an exception list for this enhancement prior to deployment to avoid disruption of service.

  • Air v49 and later: Any customer wanting to have Optional Services in the Air Price response (/AirPricingSolution/OptionalServices) returned in the response must send the @ReturnServices modifier in the request. There will be no longer be an exception list starting with this schema version.

Notes:

  • The @ReturnServices modifier does not apply to Optional Services associated to a brand (/Brand/OptionalServices), which will continue to be returned in all responses.
  • The @ReturnServices modifier does not apply to branded Optional Services returned for Airline Content Hub (ACH).
Air Pricing

Yes

Air v49.0

Change AirPriceReq/AirPricingModifiers @ReturnServices default to false.

Schema change for future functionality.

1G

Schema change for future functionality.

Air Shopping

Air Pricing

Air Booking

UR Modify

Yes

Air v50.0

AirPriceReq/AirPricingModifiers/

  • @SellCity
  • @TicketingCity

Schema change for future functionality.

ACH

Schema change for future functionality.

ACH Yes

Air.xsd

           
Vehicle

Schema change for future functionality.

1G, 1V

Schema change for future functionality.

 

Vehicle Shopping

Vehicle Booking

No

Vehicle v49.0

@Age and @Surcharge added to

  • VehicleSearchAvailabilityReq/VehicleSearchModifiers/DriverInfo
  • VehicleSearchAvailabilityRsp/Vehicle/VehicleRate/RateInclusions/IncludedItems
  • VehicleCreateReservationReqVehicleSearchModifiers/DriverInfo
  • VehicleCreateReservationRspVehicle/VehicleRate/RateInclusions/IncludedItems/