Skip to main content

Booking List Retrieval

The HotelResRetrieve request message allows you to retrieve a list of bookings that were made within a specific arrival date range or a specific booking date range.

HotelResRetrieve Request​

<s:Envelope xmlns:s = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:u = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<o:Security s:mustUnderstand = "1" xmlns:o = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<o:UsernameToken u:Id = "uuid-d740d5c0-ebc5-45c7-bd74-62b20c963d85-7">
<o:Username>username</o:Username>
<o:Password>password</o:Password>
</o:UsernameToken>
</o:Security>
</s:Header>
<s:Body xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<HotelResRetrieve xmlns = "http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<request Version = "0">
<POS xmlns = "http://www.opentravel.org/OTA/2003/05">
<Source>
<RequestorID ID = "Seller Code"/>
<BookingChannel>
<CompanyName Code = "Buyer Code"/>
</BookingChannel>
</Source>
</POS>
<ReadRequests xmlns = "http://www.opentravel.org/OTA/2003/05">
<HotelReadRequest HotelCode = "2">
<SelectionCriteria Start="2023-11-22" End="2023-11-23" DateType="CreateDate"/>
</HotelReadRequest>
</ReadRequests>
</request>
</HotelResRetrieve>
</s:Body>
</s:Envelope>

Request Data Breakdown​

ElementRelTypeDescription
HotelResRetrieve1
HotelResRetrieve/request1
ReadRequests/HotelReadRequest1..nNode containing the read request data.
@HotelCode0..1StringHotel code.
HotelReadRequest/SelectionCriteria0..1
@Start1DateTimeStart date to search bookings. DateTime Format is yyyy-MM-ddThh:mm:ss Date must be in UTC.
@End1DateTimeEnd date to search bookings. DateTime Format is yyyy-MM-ddThh:mm:ss Date must be in UTC.
@DateType1String(ArrivalDate, CreateDate, DepartureDate, LastUpdateDate).
HotelReadRequest/UniqueID0..1
@ID1StringBooking ID.
@ID_Context1String

HotelResRetrieve Response​

After each request, Travelgate processes the data and provides a response to the Seller. Upon receiving a HotelResRetrieve request, Travelgate sends a corresponding HotelResRetrieve response. The response options include either success or an error.

Success​

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<u:Timestamp u:Id="_0">
<u:Created>2023-11-23T10:47:37.480Z</u:Created>
<u:Expires>2023-11-23T10:52:37.480Z</u:Expires>
</u:Timestamp>
</o:Security>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<HotelResRetrieveResponse xmlns="http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<HotelResRetrieveResult ResResponseType="Committed">
<HotelReservations xmlns="http://www.opentravel.org/OTA/2003/05">
<HotelReservation CreateDateTime="2023-11-22T13:30:07.8054362Z" ResStatus="RQ">
<RoomStays>
<RoomStay>
<RoomTypes>
<RoomType RoomTypeCode="STD2" RoomID="47915">
<RoomDescription>
<Text>Standard</Text>
</RoomDescription>
</RoomType>
</RoomTypes>
<RatePlans>
<RatePlan RatePlanCode="BAR" RatePlanType="11" PriceViewableInd="false" QualificationType="25">
<RatePlanDescription>
<Text>Test rate</Text>
</RatePlanDescription>
<Commission Percent="15"/>
<Guarantee PaymentCode="DirectPayment">
<GuaranteesAccepted>
<GuaranteeAccepted>
<PaymentCard CardCode="VI">
<IsVCC>false</IsVCC>
</PaymentCard>
</GuaranteeAccepted>
</GuaranteesAccepted>
</Guarantee>
<AdditionalDetails>
<AdditionalDetail Code="code" Type="39">
<DetailDescription>
<Text>Negotiated</Text>
</DetailDescription>
</AdditionalDetail>
</AdditionalDetails>
<Fees>
<AmendFees>
<AmendFee Amount="13" CurrencyCode="EUR" ChargeUnit="2"/>
</AmendFees>
</Fees>
</RatePlan>
</RatePlans>
<RoomRates>
<RoomRate BookingCode="1|30#30|2|2023-12-20|2|5948716|5948717|14|11|0" EffectiveDate="2023-12-20" ExpireDate="2023-12-22" RoomTypeCode="STD2" InvBlockCode="14" NumberOfUnits="999" RatePlanCode="BAR" RoomID="47915">
<Rates>
<Rate EffectiveDate="2023-12-20" ExpireDate="2023-12-21">
<Base AmountBeforeTax="100.0" AmountAfterTax="100.0" CurrencyCode="EUR" Type="25"/>
<CancelPolicies>
<CancelPenalty PolicyCode="3ca19e3e-da3b-42fd-90c3-d6d428ab5d89"/>
<CancelPenalty PolicyCode="2c846cc7-648d-4046-8ea6-5acd4f9d7fa3"/>
<CancelPenalty PolicyCode="ed89264a-9a3b-4532-b61f-452f754add29"/>
</CancelPolicies>
</Rate>
<Rate EffectiveDate="2023-12-21" ExpireDate="2023-12-22">
<Base AmountBeforeTax="100.0" AmountAfterTax="100.0" CurrencyCode="EUR" Type="25"/>
</Rate>
</Rates>
<Total AmountBeforeTax="200.0" AmountAfterTax="200.0" CurrencyCode="EUR">
<Taxes>
<Tax Code="" Amount="80" Type="Exclusive"/>
</Taxes>
</Total>
<Features>
<Feature>
<Description>
<Text>MYROOM2</Text>
</Description>
</Feature>
</Features>
</RoomRate>
</RoomRates>
<CancelPenalties>
<CancelPenalty PolicyCode="3ca19e3e-da3b-42fd-90c3-d6d428ab5d89" NonRefundable="false">
<Deadline AbsoluteDeadline="2023-11-30" OffsetTimeUnit="Day" OffsetUnitMultiplier="20" OffsetDropTime="BeforeArrival"/>
<AmountPercent NmbrOfNights="3" CurrencyCode="EUR"/>
</CancelPenalty>
</CancelPenalties>
<BasicPropertyInfo HotelCode="2" HotelName="Hotel Test Pruebas Travelgate 2"/>
<ServiceRPHs>
<ServiceRPH RPH="1"/>
<ServiceRPH RPH="2"/>
</ServiceRPHs>
</RoomStay>
</RoomStays>
<ResGuests>
<ResGuest ResGuestRPH="1" AgeQualifyingCode="10">
<Profiles>
<ProfileInfo>
<Profile>
<Customer>
<PersonName>
<NamePrefix>Mr</NamePrefix>
<GivenName>Name</GivenName>
<Surname>Surname</Surname>
</PersonName>
</Customer>
</Profile>
</ProfileInfo>
</Profiles>
<GuestCounts>
<GuestCount Age="30"/>
</GuestCounts>
</ResGuest>
<ResGuest ResGuestRPH="2" AgeQualifyingCode="10">
<Profiles>
<ProfileInfo>
<Profile>
<Customer>
<PersonName>
<NamePrefix>Mr</NamePrefix>
<GivenName>Name</GivenName>
<Surname>Surname</Surname>
</PersonName>
</Customer>
</Profile>
</ProfileInfo>
</Profiles>
<GuestCounts>
<GuestCount Age="30"/>
</GuestCounts>
</ResGuest>
</ResGuests>
<ResGlobalInfo>
<Total AmountBeforeTax="200" AmountAfterTax="200" CurrencyCode="EUR"/>
<HotelReservationIDs>
<HotelReservationID ResID_Value="test_doc_29" ResID_SourceContext="Client"/>
<HotelReservationID ResID_Value="2706797" ResID_SourceContext="Internal"/>
<HotelReservationID ResID_Value="" ResID_SourceContext="Provider"/>
</HotelReservationIDs>
<Profiles>
<ProfileInfo>
<Profile>
<Customer>
<PersonName>
<NamePrefix>Mr</NamePrefix>
<GivenName>Name</GivenName>
<Surname>Surname</Surname>
</PersonName>
<Telephone PhoneTechType="1" PhoneNumber="02087074461"/>
<Email EmailType="1">hotelpush@xmltravelgate.com</Email>
<Address Type="1">
<AddressLine>Nice Address Line</AddressLine>
<CityName>Good City</CityName>
<PostalCode>078745</PostalCode>
<CountryName>ES</CountryName>
</Address>
</Customer>
</Profile>
</ProfileInfo>
</Profiles>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
<Success xmlns="http://www.opentravel.org/OTA/2003/05"/>
</HotelResRetrieveResult>
</HotelResRetrieveResponse>
</s:Body>
</s:Envelope>

Success Response Data Breakdown​

ElementRelTypeDescription
HotelResRetrieveResponse1Root Node.
HotelResRetrieveResponse/HotelResRetrieveResult1Contains the result of reservation retrieve.
HotelResRetrieveResult/HotelReservations0..1Node containing the reservation.
HotelReservations/HotelReservation1Node containing information about the reservation.
@CreateDateTime1DateTimeDate and time when the reservation was made.
@ResStatus1StringStatus of the reservation.
HotelReservation/RoomStays1Node containing the RoomStays of the reservation.
RoomStays/RoomStay1..nNode containing RoomStay information.
RoomStay/RoomTypes1Node containing information about rooms.
RoomTypes/RoomType1Node containing information about one room.
@RoomTypeCode1StringRoom code.
@RoomID1StringId of the room.
RoomType/RoomDescription1Node containing the description of the room.
RoomDescription/Text1StringDescription of the room.
RoomStay/RatePlans1Node containing information about RatePlans.
RatePlans/RatePlan1Node containing information about one RatePlan.
@RatePlanCode1RatePlan code.
@RatePlanTypeString
Rate Rule Codes
Code Description
0 No selected
7 Large Family
8 Public Servant
10 Negotiated
11 Package
34 Canary Resident
35 Balearic Resident
36 Honeymoon
@PriceViewableIndBoolean
@QualificationTypeString
RatePlan/RatePlanDescription1Node containing information the RatePlan description one RatePlan.
RatePlanDescription/Text1StringDescription of the RatePlan.
RatePlan/Commission1Node containing the commission of the RatePlan.
@Percent1DecimalCommission of the RatePlane.
RatePlan/Guarantee0..1Node containing the Guarantee provided with the reservation.
@PaymentCode1
Payment Type Codes
Code Description
MerchantPayment The customer pays the client and the client will pay the provider
DirectPayment The customer will have to use a credit card as guarantee for the hotel and the payment will be done by the customer at check-in
BookingDatePayment The client will use a credit card with the exact amount of the option so he can pay the provider/hotel. The provider will charge the payment on the reservation day
ArrivalDatePayment The client will use a credit card with the exact amount of the option so he can pay the provider/hotel, the provider will charge the payment on the checking day
Guarantee/GuaranteesAccepted0..1Node containing the Guarantee provided with the reservation.
GuaranteesAccepted/GuaranteeAccepted1Node that contains the booking payment details accepted.
GuaranteeAccepted/PaymentCard1Node that contains the credit card accepted. The credit card information can be a URL with the information(in TPA_Extension tag) or the details in the PaymentCard tags and attributes.
@CardCode1String
Credit Card codes
Code Name
VI Visa
AX American Express
BC BC Card
CA MasterCard
CB Carte Blanche
CU China Union Pay
DS Discover
DC Diners Club
T Carta Si
R Carte Bleue
N Dankort
L Delta
E Electron
JC Japan Credit Bureau
TO Maestro
S Switch
EC Electronic Cash
EU EuroCard
TP Universal air travel card
OP optima
ER Air Canada/RnRoute
XS access
O others
PaymentCard/IsVCC1Boolean
RatePlan/AdditionalDetails0..1
AdditionalDetails/AdditionalDetail0..n
@Code1StringClient code for whom the rate is offered.
@Type1StringContract/negotiated booking information, allowed only for 39.
AdditionalDetail/DetailDescription1
DetailDescription/Text1StringIf the additional details type is 39, the name of the client for whom the rate is offered will be sent as text.
RoomStay/RoomRates1Node containing information about RoomRates.
RoomRates/RoomRate1Node containing information about one RoomRate.
@BookingCode1Booking Code.
@EffectiveDate1DateEffective date when the RoomRate start applying.
@ExpireDate1DateExpire date when the RoomRate ends applying. Check out night minus 1.
@RoomTypeCode1StringCode of the Room.
@InvBlockCode1StringInventary block code.
@NumberOfUnits1String
@RatePlanCode1StringCode of the RatePlan.
@RoomID1StringRoom ID.
RoomRate/Rates1Node containing information about the rates.
Rates/Rate1Node containing information about one rate.
@EffectiveDate1DateEffective date when the Rate start applying.
@ExpireDate1DateExpire date when the Rate ends applying.
Rate/Base1Node containing core information about the rate.
@AmountBeforeTax0..1DecimalAmount before tax of the rate.
@AmountAfterTax1DecimalAmount after tax of the rate.
@CurrencyCode1StringCurrency code of the rate.
@Type1String
Rate/CancelPolicies1Node containing information about cancel policies which are applied to the rate.
CancelPolicies/CancelPenalty0..nNode containing information about one cancel penalty.
@PolicyCode1StringPolicy code of the cancel penalty.
RoomRate/Total1Node containing information about the total price of the RoomRate.
@AmountBeforeTax0..1DecimalAmount before tax of the RoomRate.
@AmountAfterTax1DecimalAmount after tax of the RoomRate.
@CurrencyCode1StringCurrency code of the RoomRate.
@Type1String
RoomStay/CancelPenalties1Node containing all cancel penalties of the RoomStay.
CancelPenalties/CancelPenalty0..nNode containing information about one cancel penalty.
@PolicyCode1StringPolicy code of the cancel penalty.
@NonRefundable1BooleanIndicates whether the Rate is refundable or not.
CancelPenalty/Deadline0..nNode containing information about the deadline of the cancel penalty.
@AbsoluteDeadline1DateTimeIndicates when the absolute deadline.
@OffsetTimeUnit1StringTime unit of the offset for the absolute deadline.
@OffsetUnitMultiplier1IntegerNumber of time units of offset for the absolute ege deadline.
@OffsetDropTime1StringIndicates when the deadline is applied.
CancelPenalty/AmountPercent0..nAmount of the cancel penalty.
@Percent1StringPercent of the total charged as a cancel penalty amount. Percent or NmbrOfNights must be present.
@NmbrOfNights1StringNumber of nights charged as a cancel penalty amount.
@CurrencyCode1StringCurrency code of the cancel penalty amount.
RoomStay/BasicPropertyInfo1Node containing basic information of the property.
@HotelCode1IntegerHotel code.
@HotelName1StringHotel name.
RoomStay/ServiceRPHs1Node containing information of the guests of the room.
ServiceRPHs/ServiceRPH1..nNode containing information of a guest of the room.
@RPH1StringCode of a guest of the room. Match with @ResGuestRPH at the ResGuests node.
RoomStay/Comments0..1Node containing information of the customer comments.
Comments/Comment1..nStringCustomer comment text
Comment/Text1Node containing information about one customer comment
HotelReservation/ResGuests1Node containing all reservation guests.
ResGuests/ResGuest1..nNode containing information about one of the guests.
@ResGuestRPH1IntegerRPH of the guest.
@AgeQualifyingCode1IntegerAge qualifying code of the guest.
ResGuest/Profiles1Node containing information about the profiles of the guest.
Profiles/ProfileInfo1Node containing information about the profile of the guest.
ProfileInfo/Customer1Node containing customer information of the guest.
Customer/PersonName1Node containing the person name of the guest.
PersonName/NamePrefix1StringPrefix/Traitement name of the guest.
PersonName/GivenName1StringGiven name of the guest.
PersonName/Surname1StringSurname of the guest.
ResGuest/GuestCounts1Node containing quantity informations for the guest.
GuestCounts/GuestCount1Node containing quantity information for the guest.
@Age1IntegerAge of the guest.
HotelReservation/ResGlobalInfo1Node containing general information about the reservation.
ResGlobalInfo/Total1Node containing the total price.
@AmountBeforeTax0..1DecimalAmount before tax of the Reservation.
@AmountAfterTax1DecimalAmount after tax of the Reservation.
@CurrencyCode1StringCurrency code of the Reservation.
ResGlobalInfo/HotelReservationIDs1Node containing the ids of the reservation.
HotelReservationIDs/HotelReservationID2Node containing information of one reservation id.
@ResIDValue1StringValue of the id.
@ResIDSourceContext1StringId context.
ResGlobalInfo/Profiles1Node containing information about the profiles of the reservation.
Profiles/ProfileInfo1Node containing information about the profile of the reservation.
ProfileInfo/Profile1Node containing information about the profile of the reservation.
Profile/Customer1Node containing information about the customer of the reservation. The customer of the reservation can be or not a pax of the reservation. If it’s a pax will be present in ResGuests node.
Customer/PersonName1Node containing the person name of the customer of the reservation.
PersonName/NamePrefix1StringName prefix of the customer.
PersonName/GivenName1StringGiven name of the customer.
PersonName/Surname1StringSurname of the customer.
Customer/Telephone1Node containing information about the telephone of the customer.
@PhoneTechType1StringPhone technology type.
@PhoneNumber1StringPhone number.
Customer/Email1Node containing information about the email of the customer.
@EmailType1StringEmail of the customer.
Customer/Address1Node containing information about the address of the customer.
@Type1
Address/AddressLine1StringAddress of the customer.
Address/CityName1StringCity name.
Address/PostalCode1StringPostal code.
Address/CountryName1StringCountry name.
HotelResRetrieveResult/Success0..1Should only be present if it was a successful response. The Errors node should not be present if the Success node is present.

Error​

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<u:Timestamp u:Id="_0">
<u:Created>2023-11-22T11:11:00.838Z</u:Created>
<u:Expires>2023-11-22T11:16:00.838Z</u:Expires>
</u:Timestamp>
</o:Security>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<HotelResRetrieveResponse xmlns="http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<HotelResRetrieveResult>
<Errors xmlns="http://www.opentravel.org/OTA/2003/05">
<Error ShortText="Invalid hotel id" Code="10"/>
</Errors>
</HotelResRetrieveResult>
</HotelResRetrieveResponse>
</s:Body>
</s:Envelope>

Error Response Data Breakdown​

ElementRelTypeDescription
HotelResRetrieveResult1
HotelResRetrieveResult/Errors0..1
Errors/Error1
@ShortText1String
Error Codes and Description
Error Code Error Description
-1 Unexpected error
1 Validation error
10 HotelCode not found
11 Invalid dates
14 Invalid derived rate
22 Rooms not found
23 Rates not found
30 Occupancy error
31 RatePlan_Rate Error
38 POS credentials not found
50 Confirmation error
60 Cancellation error
@Code1String
Error Codes and Description
Error Code Error Description
-1 Unexpected error
1 Validation error
10 HotelCode not found
11 Invalid dates
14 Invalid derived rate
22 Rooms not found
23 Rates not found
30 Occupancy error
31 RatePlan_Rate Error
38 POS credentials not found
50 Confirmation error
60 Cancellation error