Skip Navigation

Enhanced Hotel Book Legacy Hotel to Content Services for Lodging (CSL) migration guide

Enhanced Hotel Book API (EHB) was designed to support two types of content sources: legacy GDS and Content Services for Lodging (CSL). However, with the upcoming sunset of legacy hotel path (Tentative October 2022), customers who have been using EHB to book nly cardholder First Name and Last Name are supported type of content will have to alter their business processes slightly.


Below is a list of differences (including request schema xpaths) that must be considered when migrating content source from legacy GDS to Content Services for Lodging (CSL). Most of the new values are optional and serve as enhancements, but a value marked as required must be sent in the request payload after CSL migration.

Note: Please check xml design document for more information on the functions listed below.


To ensure the successful execution of this API for the CSL booking path, the following data elements must be present in the Sabre session (“AAA”) prior to calling EnhancedHotelBookRQ:

  • Traveler's name
  • Travel agency's name and address

Note: Previously, the legacy booking path accepted either agency name or agency address - both values were not required.

Request schema

EnhancedHotelBookRQ for legacy GDS EnhancedHotelBookRQ for CSL
/@insertAfter Not supported
Not supported …/Rooms/Room/@RoomIndex is required
…/Rooms/Room/Guests/Guest is optional At least one …/Rooms/Room/Guests/Guest must be populated
…/Rooms/Room/Guests/Guest/@LeadGuest is not supported At least one guest must be set as a lead guest at …/Rooms/Room/Guests/Guest/@LeadGuest and requires @FirstName and @LastName to be populated
…/Rooms/Room/Guests/Guest/@NameNumber Not supported
Not supported …/Rooms/Room/Guests/Guest/@Type can be used. If not sent, the API will default to “10” – Adult
Not supported …/Rooms/Room/Guests/Guest/Contact
Not supported …/ArrivalDepartureInformation
Not supported …/PaymentInformation/FormOfPaymentReference/@cardSecurityCode
Only cardholder Last Name is supported. If you need to include both first and last names you may pass them together within that field …/PaymentInformation/FormOfPayment/PaymentCard/FullCardHolderName. FirstName and LastName are required.
Not supported …/PaymentInformation/FormOfPayment/PaymentCard/CSC – an optional value
Not supported …/PaymentInformation/FormOfPayment/PaymentCard/Address - an optional value.

Please note that /PaymentCard/Address may be required by Aggregators.
The address element must include at least: /AddressLine, /CityName, /CityCodes/Code, /PostCode and /CountryCodes/Code.
Not supported …/PaymentInformation/FormOfPayment/PaymentCard/Phone – an optional value
Supported by means of form of payment referencing - …/PaymentInformation/FormOfPaymentReference/@strongCustomerAuthenticationRef …/PaymentInformation/FormOfPayment/PaymentCard/StrongCustomerAuthentication
Not supported …/PaymentInformation/FormOfPayment/VirtualCard
…/PaymentInformation/FormOfPayment/PaymentCard/Address/Country/@code …/PaymentInformation/FormOfPayment/PaymentCard/Address/CountryCodes/Code must be used
…/PaymentInformation/FormOfPayment/Agency/Address/Country/@code …/PaymentInformation/FormOfPayment/Agency/Address/CountryCodes/Code
…/PaymentInformation/FormOfPayment/Company/Address/Country/@code …/PaymentInformation/FormOfPayment/Company/Address/Country/@code

Note: When booking CSL hotel segments by means of payment card, you may disregard the /PaymentCard/Address element, but if you decide to pass this information, all the elements within /PaymentCard/Address must be populated.