This function is designed to inform the external channels about a new booking.
<?xml version="1.0" encoding="UTF-8"?> <request function="sendBooking"> <extChannel ID="15" name="F@k3Pa$4"/> <booking ID="123456" isCorporate="y" type="room"> <hotelID>8</hotelID> <POS> <Source> <BookingChannel> <CompanyName Code="wlp">Own website</CompanyName> </BookingChannel> </Source> <Source> <BookingChannel> <CompanyName Code="googlehpa">Google Hotel Price Ads</CompanyName> </BookingChannel> </Source> </POS> <totalrate curr="EUR">129</totalrate> <surcharges> <surcharge type="1" includedInRate="true" paidAtCheckout="false"> <name>VAT</name> <price curr="EUR">6.00</price> </surcharge> <surcharge type="2" includedInRate="true" paidAtCheckout="false"> <name>City tax</name> <price curr="EUR">2.50</price> </surcharge> <surcharge type="3" includedInRate="false" paidAtCheckout="true"> <name>Cleaning</name> <price curr="EUR">5.00</price> </surcharge> <surcharge type="3" includedInRate="false" paidAtCheckout="false"> <name>Service charge</name> <price curr="EUR">2.00</price> </surcharge> </surcharges> <totalrooms>1</totalrooms> <arrival>2023-12-21</arrival> <departure>2023-12-23</departure> <booktime date="2023-12-20">1324391954</booktime> <arrivaltime>18:30</arrivaltime> <busleis>business</busleis> <corporateAccount>Test account</corporateAccount> <billingInstructions>This is custom payment information from the Hoteliers.com extranet of the hotel</billingInstructions> <customer> <gender>m</gender> <firstname>Mickey</firstname> <name>Mouse</name> <email>m.tiel@hoteliers.com</email> <address>Astreet</address> <streetnr>14</streetnr> <zipcode>1234 AB</zipcode> <city>Amsterdam</city> <country code="NL">Netherlands</country> <language>NL</language> <company>Acme corp</company> <phonenr>06-12345678</phonenr> <fax></fax> <cc_name>M. Mouse</cc_name> <cc_type>MC</cc_type> <cc_number>5555555555555555555</cc_number> <cc_cvc>987</cc_cvc> <cc_expires>2014-04</cc_expires> <remarks><![CDATA[expected time of arrival could be sooner. ]]></remarks> </customer> <payment> <totalAmount curr="EUR">105</totalAmount> <paymentCode>F0B0494459D16</paymentCode> <paymentType>CreditCard</paymentType> <paymentBrand>American Express</paymentBrand> </payment> <bookedRooms> <bookedRoom ID="1549" name="Eénpersoonskamer"> <nrofRooms>1</nrofRooms> <rate curr="EUR">105</rate> <ratesPerDay> <ratedays available="2" rateID="1720"> <rateday date="2011-12-21">52.5</rateday> <rateday date="2011-12-22">52.5</rateday> </ratedays> </ratesPerDay> <guestnames> <guestname smoking="n" nrofPersons="1"><![CDATA[Mickey Mouse]]></guestname> </guestnames> <occupancies> <occupancy name="baby bed" amount="1" price="30.00"/> <occupancy name="extra bed" amount="1" price="150.00"/> <occupancy name="child bed" amount="1" price="60.00"/> </occupancies> </bookedRoom> </bookedRooms> <extras> <extra date="2023-12-21" amount="1" price="12" ID="2439">Breakfast</extra> <extra date="2023-12-22" amount="1" price="12" ID="2439">Breakfast</extra> </extras> </booking> </request> |
Element | Attribute | Number | Description | |
request | 1 | Container element for the request | ||
@Function | 1 | Name of the function | ||
request / extChannel | 1 | Indicates the channel ID and gives authentication information for Hoteliers.com | ||
@ID | 1 | extchannel id supplied by Hoteliers.com | ||
@name | 1 | extchannel name supplied by Hoteliers.com | ||
@password | 1 | password supplied by Hoteliers.com | ||
request / booking | 1 | Container element for the booking | ||
@ID | 1 | BookingID | ||
@isCorporate | 1 | Indicates whether the booking is made in the Corporate module. Possible values are 'y' and 'n' | ||
@type | 1 | Possible values are 'room' and 'package' | ||
request / booking / hotelID | 1 | hotelID | ||
request / booking / POS | 1 | Container for 1 or 2 sources More info | ||
request / booking / POS / Source | 1..2 | Container for the BookingChannel | ||
request / booking / POS / Source / BookingChannel | 1 | Indicates the channel where the booking was made | ||
request / booking / POS / Source / BookingChannel / CompanyName | 1 | Name of the BookingChannel More info | ||
@Code | 1 | Short name of the BookingChannel More info | ||
request / booking / totalrate | 1 | Total rate of the booking | ||
@curr | 1 | Currency of the total rate | ||
request / booking / surcharges | 0..1 | Container for the surcharges | ||
request / booking / surcharges / surcharge | 1..n | one ore more surcharges for this booking | ||
@type | 1 | Indicates the type of surcharge More info | ||
@includedInRate | 1 | Is the surcharge already included in the rate price? | ||
@paidAtCheckout | 1 | Weather the surcharge is | ||
request / booking / surcharges / surcharge / name | 1 | Name of the surcharge in the language of the hotel | ||
request / booking / surcharges / surcharge / price | 1 | Total price of the surcharge for this booking | ||
@curr | 1 | Currency of the surcharge price | ||
request / booking / totalroom | 1 | Total amount of booked rooms | ||
request / booking / arrival | 1 | Arrival date in format YYYY-MM-DD | ||
request / booking / departure | 1 | Departure date in format YYYY-MM-DD | ||
request / booking / booktime | 1 | Time the booking was made in Unix timestamp | ||
@date | 1 | Date the booking was made in format YYYY-MM-DD | ||
request / booking / arrrivaltime | 1 | Time the guest expects to arrive in format HH:MM | ||
request / booking / busleis | 1 | Possible values 'business' and 'leisure' | ||
request / booking / corporateAccount | 0..1 | Name of the corporate account. | ||
request / booking / billingInstructions | 0..1 | Payment instructions for the corporate guest from the Hoteliers.com extranet of the hotel | ||
request / booking / customer | 1 | Customer container | ||
request / booking / customer / gender | 1 | Possible values 'm' and 'f' | ||
request / booking / customer / firstname | 1 | First name of the booker | ||
request / booking / customer / firstname | 1 | Last name of the booker | ||
request / booking / customer / email | 1 | Email address of the booker | ||
request / booking / customer / address | 1 | Address of the booker | ||
request / booking / customer / streetnr | 1 | Street number of the booker | ||
request / booking / customer / zipcode | 1 | Zipcode of the booker | ||
request / booking / customer / city | 1 | City of the booker | ||
request / booking / customer / country | 1 | Country of the booker. Always given in english. | ||
@code | 1 | Code: ISO3166 (A2) indicating country code. | ||
request / booking / customer / language | 1 | Language of the booker. Given as ISO 639-1. | ||
request / booking / customer / company | 1 | Company name of the booker. Element can be empty. | ||
request / booking / customer / phonenr | 1 | Phone number of the booker | ||
request / booking / customer / fax | 1 | Fax number of the booker | ||
request / booking / customer / cc_name | 1 | Name on Credit card (Read Credit cards for more information) | ||
request / booking / customer / cc_type | 1 | Credit card type | ||
request / booking / customer / cc_number | 1 | Credit card number | ||
request / booking / customer / cc_cvc | 1 | Credit card cvc code | ||
request / booking / customer / cc_expires | 1 | Credit card expiration date in format YYYY-MM | ||
request / booking / customer / remarks | 1 | Comment about the booking + guest remarks | ||
request / booking / payment | 0..1 | Container for the online payment information | ||
request / booking / payment / totalAmount | 1 | total amount of the online payment | ||
@curr | 1 | Currency of the total amount | ||
request / booking / payment / paymentCode | 1 | Unique code for the online payment generated by Hoteliers.com. (length 13 characters) You can also find this code in the Hoteliers.com extranet of the hotel at the Booking tab | ||
request / booking / payment / paymentType | 1 | CreditCard or iDeal | ||
request / booking / payment / paymentBrand | 1 | VISA, American Express, Mastercard, iDeal, KBC Pay, ING Home Pay | ||
request / booking / bookedRooms | 1 | bookedRoom container | ||
request / booking / bookedRooms / bookedRoom | 1..n | Booked rooms | ||
@ID | 1 | roomID | ||
@name | 1 | Name of the room or package | ||
request / booking / bookedRooms / bookedRoom / nrofRooms | 1 | Indicating how many rooms of roomtype are sold | ||
request / booking / bookedRooms / bookedRoom / rate | 1 | Total rate for this roomtype | ||
@curr | 1 | Currency of the total rate | ||
request / booking / bookedRooms / bookedRoom / ratesPerDay | 1 | ratedays container | ||
request / booking / bookedRooms / bookedRoom / ratesPerDay / ratedays | 1 | rateday container | ||
@available | 1 | Availability of the booked rate | ||
@corporateRateID | 1 | RateID of the corporate rate. 0 when the booking is no corporate booking | ||
@packageRateID | 0..1 | RateID where the package is connected to. 0 when the booking is a room | ||
@rateID | 1 | RateID of the room. 0 when the booking is a package | ||
request / booking / bookedRooms / bookedRoom / ratesPerDay / ratedays / rateday | 1..n | Rate per day | ||
@date | 1 | Booked date in format YYYY-MM | ||
@curr | 1 | Currency of the rate | ||
request / booking / bookedRooms / bookedRoom / guestnames | 1 | guestname container | ||
@smoking | 1 | smoking. Possible values are 'y' and 'n' | ||
@nrofPersons | 1 | Number of persons in the room | ||
request / booking / bookedRooms / bookedRoom / guestnames / guestname | 1..n | Name of the guest | ||
request / booking / bookedRooms / bookedRoom / occupancies | 0..1 | occupancy container | ||
request / booking / bookedRooms / bookedRoom / occupancies / occupancy | 1..3 | Information about the extra bed | ||
@name | 1 | Description of the extra bed. Possible values: 'baby bed', 'child bed' or 'extra bed' | ||
@amount | 1 | Number of choosen extra beds for this occupancy type | ||
@price | 1 | The price of this occupancy type for one item | ||
request / booking / extras | 1 | Booked extras | ||
request / booking / extras / extra | 1..n | Information about the booked extra | ||
@date | 1 | The date on wich the booked extra applies | ||
@amount | 1 | Number of choosen extras | ||
@price | 1 | The price of this booked extra for one item | ||
@ID | 1 | extraID. You can use this ID to map the booked extra in your PMS.
|
The response can give an OK message or an Error message, see:
Note for SmartHotel partners only
SmartHotel channels don't have te nrofRooms element. For this channel the bookedRoom element will be displayed for every booked room. Also the 'smoking' and 'nrofPersons' attributes are displayed in te guestnames element in stead of the guestname element.