Reservation Report
14min
introduction the reservation report method allows users to check the status and details of one or more bookings limitations this method will return a maximum of 1000 records depending on a customer's typical booking volume, 1000 bookings may occur over the course of several days or several weeks please be mindful of this when inputting date range parameters request the reservation report request offers several ways to search allowing you to view your bookings how you like endpoint {{endpoint report}} element group name type req values / description n/a reservationreportrequest group yes root element reservationreportrequest control group yes group for login elements control username element yes api user name control password element yes api password reservationreportrequest hotelcode element no optional id field bonotel hotel id, one only reservationreportrequest bookingnumber element no optional id field bonotel booking id, one only reservationreportrequest touroperatorordernumber element no optional id field – tour operator order number, one only reservationreportrequest datesbasedon element yes possible values reservation, arrival, departure reservationreportrequest startdate element yes start date of datesbasedon (dd mmm yyyy) reservationreportrequest enddate element yes end date of datesbasedon (dd mmm yyyy) reservationreportrequest confirmationtype element yes possible values con, req, all (confirmed, on request, all) reservationreportrequest reservationstatus element yes possible values normal, modified, cancelled, all date ranges the reservation report provides three date range search options the most common would be ‘reservation ’ you control the type of date search with the datesbasedon element and the following values reservation – the booking date for the reservation(s) arrival – the check in date for the reservation(s) departure – the check out date for the reservation(s) confirmation type and reservation status the confirmationtype and reservationstatus elements can be used together to generate several types of reports confirmationtype con confirmed reservations req on request reservations all both confirmed and on request reservations reservationstatus normal the reservation is live/active modified the reservation is live/active and has been modified cancelled the reservation is not live/active all all three status options above normal, modified, and cancelled example configurations view all bookings \<confirmationtype>all\</confirmationtype> \<reservationstatus>all\</reservationstatus> view confirmed bookings that are live \<confirmationtype>con\</confirmationtype> \<reservationstatus>normal\</reservationstatus> view all cancelled bookings \<confirmationtype>all\</confirmationtype> \<reservationstatus>cancelled\</reservationstatus> view all confirmed bookings that are modified \<confirmationtype>con\</confirmationtype> \<reservationstatus>modified\</reservationstatus> response elements that are not used will return closed for example, if the reservation has not been cancelled, the cancellationfee element will be closed \<cancellationfee/> element group name type values / description reservationreportresponse group root element – no values status attribute string y or n reservationreportresponse reservationlist group additional group element for listing of reservations – no values reservationlist reservation group group element for each reservation – no values reservation bookingnumber element string bonotel booking id – example 123456789x reservation touroperatorordernumber element string tour operator order number reservation hotelcode element integer bonotel hotel id reservation reservationstatus element string possible values con, req, all (confirmed, on request, all) reservation confirmationtype element string possible values normal, modified, cancelled, all reservation reservationtimestamp element date – this is the timestamp for the reservation – iso 8601 yyyy mm ddthh\ mm\ ss hh\ mm – all times are converted to gmt reservation modificationtimestamp element date – if modified, this is the timestamp for the modification – iso 8601 yyyy mm ddthh\ mm\ ss hh\ mm – all times are converted to gmt reservation checkin element date – check in date for the reservation dd mmm yyyy reservation noofnights element integer – the number of nights stay reservation noofrooms element integer – the number of rooms in the reservation reservation total element decimal reservation’s total rate in usd 9999 99 reservation cancellationfee element decimal usd value of cancellation fee 9999 99 if no fee, you will see 0 00 if not cancelled, element will be closed code example request {{endpoint report}} the request below will return all bookings with all confirmation types and all reservation status’ that were booked between 01 jan 2024 and 02 jan 2024 \<?xml version="1 0" encoding="utf 8" ?> \<reservationreportrequest xmlns\ xsi="http //www w3 org/2001/xmlschema instance" timestamp="20180102t00 00 00"> 	\<control> 	 \<username>sampleuser\</username> 	 \<password>samplepass\</password> 	\</control> 	\<datesbasedon>reservation\</datesbasedon> 	\<startdate>01 jan 2024\</startdate> 	\<enddate>02 jan 2024\</enddate> 	\<confirmationtype>all\</confirmationtype> 	\<reservationstatus>all\</reservationstatus> \</reservationreportrequest> response expected response note that some of the data has been redacted in an actual response "###" would be replaced with valid values \<?xml version="1 0" encoding="utf 8" ?> \<reservationreportresponse status="y"> \<reservationlist> \<reservation> \<bookingnumber>###\</bookingnumber> \<touroperatorordernumber>\</touroperatorordernumber> \<hotelcode>###\</hotelcode> \<reservationstatus>normal\</reservationstatus> \<confirmationtype>con\</confirmationtype> \<reservationtimestamp>2024 06 21t16 18 11 848+0000\</reservationtimestamp> \<checkin>13 aug 2024\</checkin> \<noofrooms>1\</noofrooms> \<noofnights>1\</noofnights> \<total>300 00\</total> \</reservation> \<reservation> \<bookingnumber>###\</bookingnumber> \<touroperatorordernumber>\</touroperatorordernumber> \<hotelcode>###\</hotelcode> \<reservationstatus>cancel\</reservationstatus> \<confirmationtype>con\</confirmationtype> \<reservationtimestamp>2024 06 21t22 53 12 457+0000\</reservationtimestamp> \<checkin>24 sep 2024\</checkin> \<noofrooms>1\</noofrooms> \<noofnights>2\</noofnights> \<total>500 00\</total> \</reservation> \<reservation> \<bookingnumber>###\</bookingnumber> \<touroperatorordernumber>\</touroperatorordernumber> \<hotelcode>###\</hotelcode> \<reservationstatus>cancel\</reservationstatus> \<confirmationtype>con\</confirmationtype> \<reservationtimestamp>2024 06 21t21 47 21 898+0000\</reservationtimestamp> \<checkin>04 nov 2024\</checkin> \<noofrooms>1\</noofrooms> \<noofnights>3\</noofnights> \<total>0 00\</total> \</reservation> \</reservationlist> \</reservationreportresponse> error response if there is an error with your request and we are not able to return results, we will instead return the following xml where the status element is equal to ‘n’ and we include an error response code \<?xml version="1 0" encoding="utf 8" ?> \<reservationreportresponse status="n"> 	\<errors> 	 \<code>d7\</code> 	 \<description> reservation not found \</description> 	\</errors> \</reservationreportresponse> response codes code description d1 unspecified error please contact customer support d2 user id not supplied or not valid d3 no xml input detected d4 erroneous or incomplete data in request d5 search criteria not provided d6 request ip address not matched for the user d7 reservation not found