This is an optional function . This function allows for existing booking. to read all the data from a a specific reservation.
Endpoint: https://ws.icnea.net/booking_request.aspx
Request:
Code Block | ||
---|---|---|
| ||
<booking_request> <link> <user>integer(4)</user> <password>character(20)</password> </link> <booking> <booking_id>integer(6)</booking_id> </booking> </booking_request> |
Response:
Code Block | ||
---|---|---|
| ||
<booking_request_response> <lodgings> <lodging> <booking_id>integer(6)</booking_id> <lodging_id>integer(8)</lodging_id> <lodging_company_name>character(50)</lodging_company_name> <lodging_public_name>character(50)</lodging_public_name> <lodging_address>character(50)</lodging_address> <lodging_address_plus>character(50)</lodging_address_plus> <lodging_city>character(50)</lodging_city> <lodging_zip>character(50)</lodging_zip> <lodging_country>iso3166 </lodging_country> <reservation_status>character(50)</reservation_status> <reservation>character(10)</reservation> <reservation_date>yyyy-mm-ddThh:mm:ss (iso8601)</reservation_date> <reservation_remarks>character(500)</reservation_remarks> <customer_email>character(50)</customer_email> <customer_name>character(50)</customer_name> <customer_address>character(50)</customer_address> <customer_city>character(50)</customer_city> <customer_country>iso3166 </customer_country> <customer_zip>character(50)</customer_zip> <customer_telephone>character(50)</customer_telephone> <customer_language>iso639-1 </customer_language> <cc_number>character(16)</cc_number> <cc_type>character(50)</cc_type> <cc_expiration>yyyy-mm </cc_expiration> <cc_cvc>character(3)</cc_cvc> <cc_name>character(50)</cc_name> <currency>iso4217 </currency> <agency_name>character(50)</agency_name> <agency_reservation>character(50)</agency_reservation> <agency_remarks>character(50)</agency_remarks> <security_deposit>decimal</security_deposit> <commission_amount>decimal</commission_amount> <prepayment>decimal</prepayment> <arrival_time>hh:mm </arrival_time> <flight_number>character(50)</flight_number> <rooms> <room> <room_id>character(10)</room_id> <guest_name>character(50)</guest_name> <rate_id>character(10)</rate_id> <non_refundable>false/true</non_refundable> <people>integer(2)</people> <children>integer(2)</children> <babies>integer(2)</babies> <dates> <date> <day>iso8601 (yyyy-mm-dd)</day> <price>decimal</price> <adds_on_room> <add_on_room> <add_on_room_id>integer(2)</add_on_room_id> <price>decimal</price> </add_on_room> </adds_on_room> </date> </dates> </room> </rooms> <adds_on_stay> <add_on_stay> <add_on_stay_id>integer(2)</add_on_stay_id> <price>decimal</price> </add_on_stay> </adds_on_stay> </lodging> </lodgings> </booking_request_response> |
<lodging> node:
parameter | type | description |
---|---|---|
booking_id | integer(6) | |
lodging_id | integer(8) | |
lodging_company_name | string | |
lodging_public_name | string | |
lodging_address | string | |
lodging_address_plus | string | |
lodging_city | string | |
lodging_zip | string | |
lodging_country | iso-3166 | |
reservation_status | string | Options: requested, to_be_paid, pre_paid, confirmed, reminded, arrived, departed, closed, cancelled, misplaced |
reservation | string | |
reservation_date | yyyy-mm-ddThh:mm:ss | Date that the reservation was made |
reservation_remarks | string | |
customer_email | string | |
customer_name | string | |
customer_adress | string | |
customer_city | string | |
customer_country | iso-3166 | |
customer_zip | string | |
customer_telephone | string | |
customer_language | iso-6391 | |
cc_number | string(16) | |
cc_type | string | |
cc_expiration | yyyy-mm | |
cc_cvc | string(3) | |
cc_name | string | |
currency | iso-4217 | |
agency_name | string | If the reservation comes from an OTA, there will be the name (Booking.com, Airbnb, etc). If it’s from the website or direct, it will be empty. |
agency_reservation | string | Reservation ID in the OTA portal. |
agency_remarks | string | |
security_deposit | decimal | |
comission_amount | decimal | |
prepayment | decimal | |
arrival_time | hh:mm | |
flight_number | string | |
rooms | Node with each <room> | |
adds_on_stay | Node with each <add_on_stay> |
<room> node:
parameter | type | description |
---|---|---|
room_id | string | If it’s a vacation rental type of property, there will be only one room with room_id = 1. If it’s a hotel type of property, there can be different rooms. |
guest_name | string | |
rate_id | string | |
non_refundable | boolean | |
people | integer(2) | |
children | integer(2) | |
babies | integer(2) | |
dates | Node with each <date> |
<date> node:
parameter | type | description |
---|---|---|
day | yyyy-mm-dd | Each night of the reservation. |
price | decimal | |
adds_on_room | Node with each <add_on_room> |
<add_on_room> node:
parameter | type | description |
---|---|---|
add_on_room_id | integer(2) | This would only show for specific manually-entered extras. It will usually not appear. |
price | decimal |
<add_on_stay> node:
parameter | type | description |
---|---|---|
add_on_stay_id | integer(2) | If there are extra fees like cleaning fee or booking fee, they are add_on_stay. |
price | decimal |
Check-in and check-out dates:
To know the check-in and check-out dates of the reservation, you should read the <dates> node.
The first <day> is the check-in.
The last <day> + 1 is the check-out.
Total price of the reservation:
You must add all the <price> fields to know the total price of the reservation.
Usually there will be:
<date><price> → price for each night
<add_on_stay><price> → price for cleaning fee and/or booking fee