booking_request
This is an optional function to read all the data from a a specific reservation.
Endpoint: https://ws.icnea.net/booking_request.aspx
Request:
<booking_request>
<link>
<user>integer(4)</user>
<password>character(20)</password>
</link>
<booking>
<booking_id>integer(6)</booking_id>
</booking>
</booking_request>
Response:
<booking_request_response>
<lodgings>
<lodging>
<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_city>character(50)</lodging_city>
<lodging_zip>character(50)</lodging_zip>
<lodging_country>iso3166 </lodging_country>
<reservation_status>character(50)</reservation_status>
<booking_status>character(50)</booking_status>
<action>misplaced</action>
<booking_id>integer(6)</booking_id>
<reservation>character(10)</reservation>
<booking_date>yyyy-mm-ddThh:mm:ss (iso8601)</booking_date>
<reservation_date>yyyy-mm-ddThh:mm:ss (iso8601)</reservation_date>
<booking_remarks>character(500)</booking_remarks>
<reservation_remarks>character(500)</reservation_remarks>
<customer_email>character(50)</customer_email>
<customer_name>character(50)</customer_name>
<customer_first_name>character(50)</customer_first_name>
<customer_last_name>character(50)</customer_last_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>
<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>
<guest_app>character(150)</guest_app>
<smart_door_lock_key>character(150)</smart_door_lock_key>
<rooms>
<room>
<room_id>character(10)</room_id>
<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>
</date>
</dates>
</room>
</rooms>
<adds_on_stay>
<add_on_stay>
<add_on_stay_id>string(50)</add_on_stay_id>
<price>decimal</price>
</add_on_stay>
</adds_on_stay>
</lodging>
</lodgings>
</booking_request_response>
<lodging> node:
parameter | type | description |
---|---|---|
lodging_id | integer(8) |
|
lodging_company_name | string | Internal name of the property in Icnea’s PMS. |
lodging_public_name | string | Public name of the property. |
lodging_address | string |
|
lodging_city | string |
|
lodging_zip | string |
|
lodging_country | iso-3166 |
|
reservation_status | string | internal code for each status from booking_status |
booking_status | string | Options: requested, to_be_paid, pre_paid, confirmed, reminded, arrived, departed, closed, cancelled |
action | string | This field will show only if the reservation is NOT assigned to the lodging calendar, which means that it may be an overbooking and has to be dealt with quickly. Value will always be “misplaced”. |
booking_id | string | Reservation id in Icnea |
reservation | string | same as booking_id |
booking_date | yyyy-mm-ddThh:mm:ss | Date that the reservation was made |
reservation_date | yyyy-mm-ddThh:mm:ss | same as booking_date |
booking_remarks | string |
|
reservation_remarks | string | same as booking_remarks |
customer_email | string |
|
customer_name | string |
|
customer_first_name | string |
|
customer_last_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 | Values: MASTER, VISA, AMEX, DINERS |
cc_expiration | yyyy-mm |
|
cc_cvc | string(3) |
|
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 |
|
guest_app | string | Link for the guest app |
smart_door_lock_key | string | Code for the smartlock, if any |
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. |
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 |
|
<add_on_stay> node:
parameter | type | description |
---|---|---|
add_on_stay_id | string | Values: booking_fee, cleaning_fee, entry_fee, tourist_tax |
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