Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Owner needs a program that will send updates of availability and prices to Icnea.

If these are send in real time, we will have Icnea’s system and the OTA’s better synchronized without delays.

Endpoint: https://ws.icnea.net/availability_update.aspx

Request:

Code Block
languagexml
<availability_update>
  <link>
    <user>integer(4)</user>
    <password>character(20)</password>
  </link>
  <lodgings>
    <lodging>
      <lodging_id>integer(8)</lodging_id>
      <currency>iso4217 </currency>
      <dates>
        <date>
          <day>yyyy-mm-dd (iso8601)</day>
          <rooms>...</rooms>
        </date>
     <room> </dates>
      <adds_on_stay>...</adds_on_stay>
    </lodging>
  </lodgings>
</availability_update>

parameter

type

description

mandatory?

link

Yes

user

integer

4-digits integer

Yes

password

string

Yes

lodgings

Yes

lodging

You can send availability for 1 property or for multiple ones, using different <lodging> nodes.

Yes

lodging_id

integer

8-digits integer

Yes

currency

string

EUR, USD… The currency configured in Icnea.

Yes

dates

Yes

date

You can send different dates in the same call with different <date> nodes.

Yes

day

date

Day that you want to update. Format: yyyy-MM-dd

Yes

rooms

→ node information room

Yes

adds_on_stay

→ node information add_on_stay

No

room

This node is used to create all the rooms of the property.

If the property is a vacation rentals type (apartment, villa, house, etc) there will be only 1 room.
If the property is a hotel type (hotel, youth hotel, etc) then there can be multiple room types.

Code Block
languagexml
<room>
  <room_id>character(10)</room_id>
         
    <room_label>character(50)</room_label>
        
     <availability>integer(3)</availability>
       
      <room_units>
      
         <units>
           
      <unit_id>character(10)</unit_id>
                  <availability>integer(3)</availability>
                </units>
   
          </room_units>
          
   <rates>...</rates>
                <rate>
                  <adds_on_room>...</adds_on_room>
</room>

parameter

type

description

mandatory?

room_id

string

Yes

room_label

string

No

availability

integer

Yes

room_units

No

units

No

unit_id

string

No

availability

integer

No

rates

→ node information rate

Yes

adds_on_room

→ node information add_on_room

No

rate

This node is used to create all the rates that the property have.

They can be standard/non-refundable, or occupancy rates.

For example:

  • Standard 2pax rate

  • Non-refundable 2pax rate

  • Standard 4pax rate

  • etc

Code Block
languagexml
<rate>
  <rate_id>character(10)</rate_id>
               
  <rate_label>character(50)</rate_label>
             
    <people>integer(2)</people>
               
  <price>decimal</price>
              
   <discount>decimal</discount>
         
        <minimum_stay>integer(3)</minimum_stay>
               
  <rate_nights>integer(3)</rate_nights>
               
  <closed_to_arrival>false/true</closed_to_arrival>

                 <closed_to_departure>false/true</closed_to_departure>
            
     <non_refundable>false/true</non_refundable>
                </rate>
              </rates>
              <adds_on_room>
                <add_on_room>
                  </rate>

parameter

type

description

mandatory?

rate_id

string

Yes

rate_label

string

No

people

integer

Yes

price

decimal

Yes

discount

decimal

No

minimum_stay

integer

No

rate_nights

integer

No

closed_to_arrival

boolean

No

closed_to_departure

boolean

No

non_refundable

boolean

No

add_on_room

This node can be used to add suplements. Those suplements must be created in Icnea PMS, if they are not, they will not be saved.

Code Block
languagexml
<add_on_room>
  <add_on_room_id>integer(2)</add_on_room_id>
               
  <add_on_room_label>character(50)</add_on_room_label>
           
      <price>decimal</price>
              
   <price_per_person>false/true</price_per_person>
            
     <maximum>integer(3)</maximum>
               
</add_on_room>
              </adds_on_room>
            </room>
          </rooms>
        </date>
      </dates>
      <adds_on_stay>
        <add_on_stay>
          

The <adds_on_room> node is not mandatory, but if used, then there are some variables mandatory.

parameter

type

description

mandatory?

add_on_room_id

integer

Yes

add_on_room_label

string

No

price

decimal

Yes

price_per_person

boolean

Yes

maximum

integer

No

add_on_stay

This node is used to add extra fees besides the stay price.

At the moment, Icnea accepts 2 extra fees:

  • cleaning fee

  • booking fee

Code Block
languagexml
<add_on_stay>
  <add_on_stay_id>integer(2)</add_on_stay_id>
 
        <add_on_stay_label>character(50)</add_on_stay_label>
    
     <price>decimal</price>
       
  <price_per_person>false/true</price_per_person>
       
  <maximum>integer(3)</maximum>
  
       <required>false/true</required>
     
  </add_on_stay>
      </adds_on_stay>
    </lodging>
  </lodgings>
</availability_update>

The <adds_on_stay> node is not mandatory, but if used, then there are some variables mandatory:

parameter

type

description

mandatory?

add_on_stay_id

integer

Yes

add_on_stay_label

string

No

price

decimal

Yes

price_per_person

boolean

Yes

maximum

integer

No

required

boolean

Yes

...

Response:

If the update is successful, the answer will be:

Code Block
languagexml
<availability_update_response>
  <ok><<ok/ok>>
</availability_update_response>

...