Skip to main content

Availability

The HotelAvailNotif message contains information about rate availability and allotment conditions. No rate information will be returned except code.

As explained before, Channel-X extracts the product loaded between the Buyer (inventory) and the Channel Managers (availability and rates) into our Inventory tool and sends it to the Buyer's system, to your system. So, in this case, Travelgate will send HotelAvailNotif requests to your system, and you will respond with either success or error.

HotelAvailNotif Request​

In the following examples, you will observe the requests that Travelgate will send you. All the examples presented here are Deltas (smaller product requests).

If you want to explore all possible scenarios of information that may come your way, head over to More Request Examples section; there you will find Full Copy (full product details requests) examples.

<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-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-x">
<o:Username>username</o:Username>
<o:Password Type = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">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">
<HotelAvailNotif xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<request>
<POS xmlns="http://www.opentravel.org/OTA/2003/05">
<Source>
<RequestorID ID="Seller Code" />
<BookingChannel>
<CompanyName Code="Buyer Code" />
</BookingChannel>
</Source>
</POS>
<AvailStatusMessages HotelCode="2" xmlns="http://www.opentravel.org/OTA/2003/05">
<AvailStatusMessage BookingLimit="100" BookingSold="4">
<StatusApplicationControl Start="2023-11-10" End="2023-11-14" RatePlanCode="BAR" InvCode="SNG" InvType="ROOM" Mon="true" Tue="true" Weds="true" Thur="true" Fri="true" Sat="true" Sun="true" />
<LengthsOfStay ArrivalDateBased="false">
<LengthOfStay Time="1" TimeUnit="Day" MinMaxMessageType="MinLOS" />
<LengthOfStay Time="2" TimeUnit="Day" MinMaxMessageType="MaxLOS" />
</LengthsOfStay>
<RestrictionStatus />
</AvailStatusMessage>
<AvailStatusMessage BookingLimit="100">
<StatusApplicationControl Start="2023-11-22" End="2023-11-24" RatePlanCode="BAR" InvCode="SNG" InvType="ROOM" Mon="true" Tue="true" Weds="true" Thur="true" Fri="true" Sat="true" Sun="true" />
<LengthsOfStay ArrivalDateBased="false">
<LengthOfStay Time="5" TimeUnit="Day" MinMaxMessageType="MinLOS" />
</LengthsOfStay>
<RestrictionStatus />
</AvailStatusMessage>
<AvailStatusMessage BookingLimit="100">
<StatusApplicationControl Start="2023-11-22" End="2023-11-24" RatePlanCode="BAR" InvCode="SNG" InvType="ROOM" Mon="true" Tue="true" Weds="true" Thur="true" Fri="true" Sat="true" Sun="true" />
<LengthsOfStay ArrivalDateBased="false">
<LengthOfStay Time="5" TimeUnit="Day" MinMaxMessageType="MinLOS" />
</LengthsOfStay>
<RestrictionStatus Restriction="Arrival" Status="Close" />
</AvailStatusMessage>
<AvailStatusMessage BookingLimit="100">
<StatusApplicationControl Start="2023-11-27" End="2023-11-28" RatePlanCode="BAR" InvCode="SNG" InvType="ROOM" Mon="true" Tue="true" Weds="true" Thur="true" Fri="true" Sat="true" Sun="true" />
<LengthsOfStay ArrivalDateBased="false">
<LengthOfStay Time="1" TimeUnit="Day" MinMaxMessageType="MinLOS" />
<LengthOfStay Time="2" TimeUnit="Day" MinMaxMessageType="MaxLOS" />
</LengthsOfStay>
<RestrictionStatus Restriction="Departure" Status="Close" />
</AvailStatusMessage>
<AvailStatusMessage BookingLimit="20">
<StatusApplicationControl Start="2024-01-07" End="2024-01-31" RatePlanCode="BAR" InvCode="SNG" InvType="ROOM" Mon="true" Tue="true" Weds="true" Thur="true" Fri="true" Sat="true" Sun="true" />
<RestrictionStatus MaxAdvancedBookingOffset="5" MinAdvancedBookingOffset="3" />
</AvailStatusMessage>
</AvailStatusMessages>
</request>
</HotelAvailNotif>
</s:Body>
</s:Envelope>

Request Data Breakdown​

ElementRelTypeDescription
HotelAvailNotif1
HotelAvailNotif/request1
request/AvailStatusMessages1
@HotelCode1StringHotel code
AvailStatusMessages/AvailStatusMessage1..n
@BookingLimit0..1IntegerThe number of rooms available per Room-RatePlan for the specified dates. In the case of Derivated Rates this element will not be returned.
@BookingSold0..1IntegerThe number of rooms booked per Room-RatePlan for the specified dates. The available allotment is calculated as the difference between @BookingLimit and @BookingSold.
AvailStatusMessage/StatusApplicationControl1
@Start1DateStart date
@End1DateEnd date
@RatePlanCode1String
@InvCode0..1StringRoom code. This field is exclusively used for Basic Rates.
@InvType0..1StringROOM. This field is exclusively used for Basic Rates.
@PromotionCode0..1StringOfferCode. This field is exclusively used for Offers.
@Mon0..1BooleanIf true or attribute is not present, there is availability on Monday.
@Tue0..1BooleanIf true or attribute is not present, there is availability on Tuesday.
@Weds0..1BooleanIf true or attribute is not present, there is availability on Wednesday.
@Thur0..1BooleanIf true or attribute is not present, there is availability on Thurday.
@Fri0..1BooleanIf true or attribute is not present, there is availability on Friday.
@Sat0..1BooleanIf true or attribute is not present, there is availability on Saturday.
@Sat0..1BooleanIf true or attribute is not present, there is availability on Sunday.
AvailStatusMessage/LengthsOfStay0..1
@ArrivalDateBased0..1BooleanIf true, the Minimum and Maximum Stay is checked ONLY the first day of the availability. If false or null, the Minimum and Maximum Stay is checked all the availability days. If both values are needed, two @AvailStatusMessage will be sent.
LengthsOfStay/LengthOfStay1..2
@Time1IntegerIndicates the number of @TimeUnit for this stay. When value is 0 or -1, condition should be deleted from the system.
@TimeUnit1StringDay
@MinMaxMessageType1StringMinLOS (minimum) or MaxLOS (maximum) @LenghtOfSaty.
AvailStatusMessage/RestrictionStatus0..1
@Restriction0..1StringMaster, Arrival or Departure
@Status0..1StringOpen or Close
@MinAdvancedBookingOffset0..1IntegerMinimum number of days before the check-in date to be available to be booked. This restriction is usually used to offer discounts on early bookings. When value is 0 or -1, condition should be deleted from the system.
@MaxAdvancedBookingOffset0..1IntegerMaximum number of days before the check-in date to be available to be booked. This restriction is usually used to offer last minute discounts on unsold inventory. When value is -1, condition should be deleted from the system.
@SellThroughOpenIndicator0..1BooleanRoom-RatePlan can be sold with no limit if @Status is 'Open'. This field is exclusively used for Basic Rates.

More Request Examples​

Download the following requests to explore all possible scenarios of information that may come your way.

sftp.xmltravelgate.com

HotelAvailNotif Response​

After each request, a response should be provided from your side. If a HotelAvailNotif request is received, a corresponding HotelAvailNotif response should be sent. There are two response options, success or error.

caution

Our system has a timeout of 5000ms. If no response occurs within this timeframe, we won't attempt to resend the request. It is recommended that your system processes our requests with an average handling time of 100ms.

<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" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<s:Header>
<wsse:Security>
<U:Timestamp>
<U:Created>2023-11-10T11:16:19.206</U:Created>
<U:Expires>2023-11-10T11:46:19.206</U:Expires>
</U:Timestamp>
</wsse:Security>
</s:Header>
<s:Body>
<HotelAvailNotifResponse xmlns="http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<HotelAvailNotifResult Version="0" TransactionIdentifier="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx">
<Success xmlns="http://www.opentravel.org/OTA/2003/05" />
</HotelAvailNotifResult>
</HotelAvailNotifResponse>
</s:Body>
</s:Envelope>

Response Data Breakdown​

ElementRelTypeDescription
HotelAvailNotifResult1
@Version1String0
@TransactionIdentifier1StringTransaction Identifier
HotelAvailNotifResult/Success0..1If SUCCESS
HotelAvailNotifResult/Errors0..1If ERROR
Errors/Error1
@ShortText1String
Error Codes and Description
Error Code Error Description
-1 Validation error
1 POS credentials not found
2 HotelCode or RatePlanList not found
3 Rates not found
4 Incomplete Rate values
6 Incomplete AvailStatusMessage StatusApplicationControl Values
7 Incomplete AdditionalGuestAmount values
8 SellableProduct not found
9 Room not found in SellableProduct
@Code1String
Error Codes and Description
Error Code Error Description
-1 Validation error
1 POS credentials not found
2 HotelCode or RatePlanList not found
3 Rates not found
4 Incomplete Rate values
6 Incomplete AvailStatusMessage StatusApplicationControl Values
7 Incomplete AdditionalGuestAmount values
8 SellableProduct not found
9 Room not found in SellableProduct
@Language1String
Language Codes
Code Language
en English
es Spanish
pt Portuguese
it Italian
fr French
de German
br Brazilian

Frequently Asked Questions​

What does LengthsOfStay ArrivalDateBased mean? What’s different between the true and false values?
  • If ArrivalDateBase is set to true, it checks whether the Min and Max LengthsOfStay conditions are met on the check-in day.
  • If ArrivalDateBase is set to false, it checks if the Min and Max LengthsOfStay conditions are met for all the days you are requesting, meaning it ensures that these conditions are met for each of the days of your stay.
Is there a default maximum nights restriction (e.g., max 30 days) in Travelgate if the HotelAvailNotif does not include maximum LengthOfStay (LOS) information?
Travelgate does not have any restriction on default maximum nights.
What does ArrivalClose, DepartureClose and Master mean?
  • ArrivalClose: When it's open, you can check in on that day. If it's close, you can still stay but can't check in on that day.
  • DepartureClose: When it's open, you can check out on that day. If it's close, you can still stay but can't check out on that day.
  • Master: If the master is closed, there's no availability for that day, and you can't check in, check out, or stay.