---
title: "Hotellinx Cloud PMS Web Service: WSDL"
canonical: "https://support.vitec-hotellinx.com/space/KB/100335644/Hotellinx%20Cloud%20PMS%20Web%20Service%3A%20WSDL"
format: markdown
---
> ⚠️ **This is legacy integration** and no new integrations are being supported.  
> ⚠️ Please look for any new integrations: [Hotellinx Open Api - Ohjekeskus - Vitec Hotellinx](https://vitechotellinx.atlassian.net/wiki/spaces/KB/pages/234487811)

---

## Authentication and initialization, Error handling, SecurityHeader

### Authentication and initialization

Service authentication is handled with a SOAP security header with every call to the service. Authenticating with the security header will initialize the service with needed parameters for all queries for example capacity type, hotel, rate group etc. Every query will be restricted or limited by these parameters and these are not documented separately for each function. If multiple result sets are needed, for example from multiple different capacity types, authentication and request must be made for each set separately.

### Error handling

Each request will return a SoapException without details of the error. Error details will be logged to the server and will not be sent over to the client.

### SecurityHeader

SecurityHeader is needed to every call the client makes.   

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Username | 1 |  |
| Password | 1 |  |

### Reading the document

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| The name of the element in Soap Request/Response | Defines how if elements are required  
0..1 : Element optional  
1 = Mandatory (only one)  
0..n = Optional, zero or more elements  
1..n = Mandatory, 1 or more elements | Describes the usage and meaning of the element |

---

## Functions

### GetAvailability

GetAvailability request is used to get room types and the amount available for each period of time between the query start and end dates (or times). If date based type will return element for each day if time based type will return element for each period.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StartDate | 1 | Availability request query start date(time) |
| EndDate | 1 | Availability request query end date(time) |
| ExcludeSegments | 0..1 | Optional – exclude reservations in these segments (list of integer – Hotellinx id) |

GetAvailability function returns a list of **AvailabilityElement**(s). There will be one element for each time period of the query. The element contains one hlxRoom element per room type and one hlxRoom element as a summary element. RoomTypeId is 0 and RoomTypeName is summary for the summary element.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 | Date of availability (with @time attribute for time based type periods) |
| hlxRoom | 1..n | Contains room type (capacity) information |
| hlxRoom/RoomTypeId | 1 | Hotellinx room type id |
| hlxRoom/RoomTypeName | 1 | Hotellinx room type name |
| hlxRoom/DepartmentId | 1 | Hotellinx department id |
| hlxRoom/DepartmentName | 1 | Hotellinx department name |
| hlxRoom/Available | 1 | Number of units available |
| hlxRoom/** **NotInUseRooms | 1 | Units set as not in use |
| hlxRoom/** **TotalRooms | 1 | Total number of rooms (units) |
| hlxRoom**/**Beds | 1 | Number of beds (units) in a room |
| hlxRoom/Description1 | 0..1 | Description set for the room in Hotellinx for language index 1. |
| hlxRoom/Description2 | 0..1 | … language index 2 |
| hlxRoom/Description3 | 0..1 | … language index 3 |
| hlxRoom/Description4 | 0..1 | … language index 4 |
| hlxRoom/Description5 | 0..1 | … language index 5 |

### GetCalendar

GetCalendar function is used to get Yield values for a given period and the global stop sell attribute for the given day. Day yield value can be compared to the Hotellinx rates yield value for the given day. If the rate yield value is equal or larger than the calendar yield value the rate is usable (given that it is available for sale because of any other restriction).

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StartDate | 1 | Request start date |
| EndDate | 1 | Request end date |

 GetCalendar function returns a list of **CalendarDay** elements with the yield value

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 |  |
| YieldValue | 1 | Yield value requirement for the day |
| NetSalesClosed | 1 | If true it is not allowed to sell any rate in the given day |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |

### GetPriceAvailability

GetPriceAvailability request is used to determine which rates are possible for any given reservation. Function will take count the availability of the room type and all other possible restrictions there is to restrict sale for any rate. This call is usually made when all reservation relevant data is available.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| DateTimeStart | 1 | Reservation arrival day |
| NumResources | 1 | Number of resources (rooms or other type) for the reservation |
| NumPeriods | 1 | Length of stay in relevant periods (number of days for date based types) |
| NumAdults | 1 | Number of adults in reservation |
| NumChildren | 1 | Number of children in reservation |
| NumExtras | 1 | Number of extras in reservation |
| NumFrees | 1 | Number of Free guests. use zero or empty if not applicable or not known |
| CampaignCode | 1 | Optional, campaign code for rates if any |
| ExcludeSegments | 1 | List of Hotellinx segments (id) not to include in availability checks. |

GetPriceAvailability will return a list of **hlxPriceAvailability** elements. These elements will contain all room (resource) and rate combinations possible to sell for the query.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RatePlanCode | 1 | Id of the rate in Hotellinx database |
| RoomTypeId | 1 | Id of the room (type) in Hotellinx database |
| RoomName | 1 | Name of the room (type) |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |
| Beds | 1 | Number of beds in room (type) |
| DateTimeStart | 1 | Reservation arrival date (time) |
| NumResources | 1 | Number of resources (rooms or other type) |
| NumPeriods | 1 | Length of stay in relevant periods (number of days for date based types) |
| Total | 1 | Total price for reservation with given values |
| Description | 1 | Rate description in language index 1 |
| Description2 | 1 | Rate description in language index 2 |
| Description3 | 1 | Rate description in language index 3 |
| Description4 | 1 | Rate description in language index 4 |
| Description5 | 1 | Rate description in language index 5 |
| CampaignCode | 1 | Rate campaign code |

### GetRates

GetRates function will return all rates that have an end date on or after the query effective date. Each rate is returned with details of the rate and any restrictions the rate might have.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| EffectiveDate | 1 | Rate end date must be equal or larger than this date to be included in the result |
| CampaignCode | 0..1 | Use if only rates with this campaign code should be included in response |

### RatesRQ

Newer version of GetRates, returns the same response as GetRates.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| EffectiveDate | 1 | Rate end date must be equal or larger than this date to be included in the result |
| CampaignCode | 0..1 | Use if only rates with this campaign code should be included in response |

RatesRQ/GetRates function will return a list of **hlxRate **elements. Each element contains the definition details of a rate but these are not to be used in reservations as such. Instead, the final availability and price for each rate must come from GetPriceAvailability function or by manually querying and processing the results of GetRates and GetAvailability functions.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RatePlanCode | 1 | Id of the rate in Hotellinx database |
| Name | 1 | Name of the rate in Hotellinx database |
| RoomTypeId | 1 | Id of the room (type) in Hotellinx database |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |
| Occupancy | 1 | Fixed occupancy for the rate |
| YieldValue | 1 | Yield value for the rate |
| DateFrom | 1 | Date from which the rate is available for use (including this day). Valid date includes time, which is always 00:00:00 for rates connected to date-based departments. For rates connected to date-time based departments, time may have a value, if the rate is valid for some specific time during the day (but will be 00:00:00 if the same rate is valid for the whole day. Note that date and time should be interpreted as separate items, meaning that a rate with DateFrom 2024-01-01T08:00:00 and DateUntil 2024-12-31T12:00:00 is valid from 1 Jan until 31 Dec 2024, but only between 8 and 12. |
| DateUntil | 1 | Date until which the rate is available for use (including this day). Time part as explained for DateFrom. |
| Description | 1 | Rate description in language index 1 |
| Description2 | 1 | Rate description in language index 2 |
| Description3 | 1 | Rate description in language index 3 |
| Description4 | 1 | Rate description in language index 4 |
| Description5 | 1 | Rate description in language index 5 |
| CampaignCode | 1 | Rate campaign code(s) |
| hlxRateLines | 1 | List of Hotellinx rate lines |
| hlxRateLines/hlxRateLine | 1..n | Hotellinx rate line element |
| hlxRateLine/Name | 1 | Rateline name (Hotellinx language index 1) |
| hlxRateLine/Name2 | 0..1 | Rateline name (Hotellinx language index 2) |
| hlxRateLine/Name3 | 0..1 | Rateline name (Hotellinx language index 3) |
| hlxRateLine/Name4 | 0..1 | Rateline name (Hotellinx language index 4) |
| hlxRateLine/Name5 | 0..1 | Rateline name (Hotellinx language index 5) |
| ** ** |  |  |
| hlxRateLine/ChargePeriod | 1 | Period  the rateline is charged by (Day, Week, Month, Stay) |
| hlxRateLine/ChargePer | 1 | Unit the rateline is charged by (Room, Adult, Child, Extra, Person, Reservation, occupancy) |
| hlxRateLine/Amount | 1 | Rateline amount element. Element value will be the base week amount for the rateline. Element attributes will define a possible weekend amount (if any). |
| Amount/@wAmount | 0..1 | Weekend amount for the rateline |
| Amount/@wStart | 0..1 | Start day index of weekend specified for the rate |
| Amount/@wEnd | 0..1 | End day index of weekend specified for the rate |
| hlxRateLine/LineNumber | 1 | The line number in Hotellinx |
| hlxRateLine/VatPercent | 1 | Vat% for the sales code the rate line is connected to |
| hlxRateLine/Category | 1 | The sales category set for the sales code |
| Restrictions | 0..1 | Restrictions element for the rate |
| Restrictions/MaximumStay | 1 | Maximum number of periods for the stay for a reservation |
| Restrictions/** **MinimumDaysBeforeArrival | 1 | Minimum number of days the reservation must be made before arrival |
| Restrictions/MinimumStay | 1 | Minimum number of periods for the stay for a reservation |
| Restrictions/Closed | 1 | The rate is closed for sale |
| TimeBasedProperties | 0..1 | Time based properties for the rate (if the resource type is time based) |
| TimeBasedProperties/Unit | 1 | Unit of time (minute, hour) |
| TimeBasedProperties/** **UnitsPerPeriod | 1 | Number of units for specified period of reservation |
| TimeBasedProperties/** **DayStartTime | 1 | Start time of a day, from where the periods are available for reservations |
| TimeBasedProperties/** **PeriodsPerDay | 1 | Number of periods there is in a day for reservations |
| ConnectedRates | 1 | List of rate id:s connected to this rate (when this rate is used, the connected rate(s) should also be used) |

### GetDailyRates

GetDailyRates returns rates from the daily rates calendar with the rate line elements for calculating the modified daily value for the rate. Result only contains rates that have daily rate values. If any rate is found in the result the rate lines from the GetRates function result should be replaced with the modified rate lines to calculate the correct value for rate.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StartDate | 1 | Request start date |
| EndDate | 1 | Request end date |

GetDailyRates returns a list of **DailyRate** elements.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 | Effective date for the rate daily modification |
| RatePlanCode | 1 | Hotellinx rate id |
| Name | 1 | Hotellinx rate name |
| hlxRateLines | 1 | List of Hotellinx rate lines (same element in GetRates function) |
| DayRateYieldValue | 1 | Daily yield value set for the rate |
| DayClosed | 1 | Rate closed or open (true/false) for the day |
| IsDeleted | 1 | false / true, if marked deleted the record should be ignored |

 

### GetModifiedDailyRates

This function returns the same result type as GetDailyRates function but is used to only get the rates that have modifications (modified values or marked as deleted) made after the request date time value.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StartDate | 1 | Request start date |
| EndDate | 1 | Request end date |
| ModifiedAfter | 1 | Daily rate values must be marked as modified after this date time |

### GetReservations

GetReservations function is used to export reservations from Hotellinx. Reservation query is run by searching reservations based on their arrival date or by providing a reservation Id (id provided can be a Hotellinx reservation id or external reservation id stored in the Hotellinx reservation for example after importing from external source).

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ArrivalDateSearchStart | 1 | Reservations which arrival is larger or equal than this date.  NOTE if older than 5 years will not use the date provided (can be used to deliberately ignore date search with the function) |
| ArrivalDateSearchEnd | 1 | Reservations which arrival is smaller or equal than this date. NOTE if older than 5 years will not use the date provided (can be used to deliberately ignore date search with the function) |
| ReservationId | 1 | Reservation id to search. Set null or empty string if not used. This is only the header (guest) level id not the reservation line id. |
| ReservationIdType | 1 | Reservation id type in Hotellinx database (ReservationId or HotellinxReservationId). Must be provided if searching with reservation id. (See ReservationsRQ for different types) |
| FromArchive | 1 | True or false if reservations should be fetched from the archive (does not contain current reservations). |

GetReservations will return a list of **hlxReservation** elements. See PutReservations function for message details.

### ReservationsRQ

ReservationsRQ is another (new) version of a function that retrieves reservations from Hotellinx. This function uses a single type element as a request parameter with some extended search options compared with GetReservations. The return type is exactly the same as in GetReservations. The function should accept null value for ReservationsRQParams and also with only FromArchive specified should search all reservations. It is not recommended to get all reservations though, but you should provide at least some date restriction in every query.

**ReservationsRQParams    **

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ReservationArrival | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates. |
| ReservationDeparture | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates.<br>Note that the function checks for reservations with departure on the given date or in the given date interval, but does not check whether reservations have been checked out or not. |
| ReservationLineDone | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates. |
| ReservationLineChanged | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates. |
| GuestAccountDone | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates. |
| GuestAccountChanged | 0/1 | One or two date elements: if only one date element is provided will search everything with newer date than the given date with two date parameters will search everything between the given dates. |
| ReservationId | 0/1 |  |
| ../Value | 1 | Id to search reservations with. Set the id type element also to specify the field included in the query. Element value is mandatory if the element is provided. Hotellinx id type must be numerical and external id type can be alphanumeric. |
| ../ReservationIdType | 0/1 | The id type used in the search (integer value) (check ReservationIdType description) |
| FromArchive | 1/1 | True or false if reservations should be fetched from the archive or only include current reservations. |
| CustomerCard | 0/1 | Customer card in Hotellinx guest details |
| BlockedResourceId | 0/1 | Hotellinx resource id that has been used to block a resource (room) for reservation. Use one of the “blocked resource” elements but not both. |
| BlockedResourceCode | 0/1 | Hotellinx resource code (room number) that has been used to block a resource for reservation. |

**ReservationIdType**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ReservationId** = 1** |  | The external system id for the guest account. |
| HotellinxReservationId** = 2** |  | The Hotellinx id for the guest account. |
| ReservationLineId** = 3** |  | The external system id for the guest account reservation line. Note if searched with the line id will only return the reservation line matching the id. |
| HotellinxReservationLineId** = 4** |  | The Hotellinx id for the guest account reservation line. Note if searched with the line id will only return the reservation line matching the id. |

### PutReservations

This function is used to import (add, modify or cancel type) reservations to Hotellinx database. GetReservations function uses the same elements. Some elements might be only used for export. The function will take a list of reservations (single hlxReservation element described below) as a parameter and process them all. The list can contain any types of reservations. Response will be a list of reservation confirmations. Please note that in Modify operations, a complete set of eg. hlxGuestNames must be provided, in other words, if you leave out existing GuestNames from the modify call, it will be left out.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Type | 1 | The type of reservation (New, Modify, Cancel, NoChange) |
| GiftCardReference | 0..1 | Gift card id reference |
| ReservationId | 1 | External reference id for the reservation. |
| HotellinxReservationId | 0..1 | Internal Hotellinx reservation id |
| DateTime | 1 | Reservation created time |
| ChangedDate | 0..1 | Reservation changed |
| CustomerEmailConfirmation | 0..1 |  |
| AgentEmailConfirmation | 0..1 |  |
| Comments | 0..1 | Reservation (customer/header level) comments |
| RateGroupId | 0..1 | Rate group id the reservation will be imported with |
| SegmentId | 0..1 | Segment id the reservation will be imported with |
| SegmentName | 0..1 | Name of the segment (export only) |
| NationalityCode | 0..1 | Default will be Hotellinx domestic nationality if not provided. |
| AllowMarketing | 0..1 | The guest account allow marketing flag. |
| hlxCustomer | 1 | Reservation customer details |
| hlxCustomer/FirstName | 0..1 |  |
| hlxCustomer/Surname | 0..1 |  |
| hlxCustomer/Company | 0..1 |  |
| hlxCustomer/** **ContactFirstName | 0..1 |  |
| hlxCustomer/** **ContactSurname | 0..1 |  |
| hlxCustomer /Address | 0..1 |  |
| hlxCustomer/** **Zip | 0..1 |  |
| hlxCustomer/** **City | 0..1 |  |
| hlxCustomer/** **State | 0..1 |  |
| hlxCustomer/** **Country | 0..1 |  |
| hlxCustomer/** **Phone | 0..1 |  |
| hlxCustomer/Mobile | 0..1 |  |
| hlxCustomer/** **Fax | 0..1 |  |
| hlxCustomer/** **Email | 0..1 |  |
| hlxCustomer/** **Identification1 | 0..1 |  |
| hlxCustomer/** **Identification2 | 0..1 |  |
| hlxCustomer/** **Identification3 | 0..1 |  |
| hlxCustomer/ GlobalId | 0..1 | for special purposes/customisations |
| hlxCustomer/Comments | 0..1 | Will be added to reservation (customer level) comments. |
| hlxCustomer/CustomerCard | 0..1 | Customer card in Hotellinx guest details (export only) |
| hlxCustomer/hlxCreditCard | 0..1 | Customer credit card data |
| hlxCustomer/hlxCreditCard/Type | 1 | Credit card type (enum value, please see the schema for details) |
| hlxCustomer/hlxCreditCard/Name | 1 | Will be added to reservation (customer level) comments. |
| hlxCustomer/hlxCreditCard/** **Number | 1 | Credit card number |
| hlxCustomer/hlxCreditCard/** **CardProperty1 | 1 | Valid thru |
| hlxCustomer/hlxCreditCard/** **CardProperty2 | 0..1 | Card verification number |
| hlxAgent | 0..1 | Reservation agent details |
| hlxAgent/** **AgentId | 0..1 |  |
| hlxAgent/** **FirstName | 0..1 |  |
| hlxAgent/** **Surname | 0..1 |  |
| hlxAgent/** **Company | 0..1 |  |
| hlxAgent/** **Address | 0..1 |  |
| hlxAgent/** **Zip | 0..1 |  |
| hlxAgent/** **City | 0..1 |  |
| hlxAgent/** **State | 0..1 |  |
| hlxAgent/** **Country | 0..1 |  |
| hlxAgent/** **Phone | 0..1 |  |
| hlxAgent/** **Fax | 0..1 |  |
| hlxAgent/** **Email | 0..1 |  |
| hlxReservationQualities | 0..1 | List of reservation qualities if any, these are hotel customer specific features and may be used for different purposes by different properties, so not described here. |
| hlxReservationQuality | 1..n |  |
| hlxReservationQuality/QualityId | 1 |  |
| hlxReservationQuality/QualityRemark | 1 |  |
| PaymentToken | 0..1 | If a credit card check has been made an token that can later be used for payment with the same card obtained, the token can be saved with customer details for late use, customization only |
| hlxReservationLines | 1 | The list of reservation lines to process for the customer. |
| hlxReservationLine | 1..n | Reservation line element containing details for a reservation for a single room type. |
| hlxReservationLine/** **Type | 1 | The type of reservation (uses same range of values as header / customer level). Recommended to use same header level and line level types in single request although it is possible to mix the types. For example by sending a Modify type header with Cancel, Modify and New line types as they are all processed separately. |
| hlxReservationLine/State | 1 | Active, Checked in, Checked out, Queued or Cancelled (export only) |
| hlxReservationLine/** **ReservationLineId | 1 | External reference id for the reservation line |
| hlxReservationLine/** **HotellinxReservationLineId | 0..1 | Internal Hotellinx reservation id (can be used when modifying or cancelling) |
| hlxReservationLine/** **RoomTypeId | 1 | Hotellinx room type id for the reservation |
| hlxReservationLine/RoomTypeName | 0..1 | Room type name (export only) |
| hlxReservationLine/DepartmentId | 0..1 | Hotellinx department id (not mandatory with import and always included in export) |
| hlxReservationLine/** **DepartmentName | 1 | Hotellinx department name (export only –always included in export and not used in import) |
| hlxReservationLine/ HotelId | 1 | Export only, special customisations |
| hlxReservationLine/ HotelCode | 1 | Export only, special customisations |
| hlxReservationLine/** **DateTimeStart | 1 | The arrival (start) time of the reservation |
| hlxReservationLine/DateTimeEnd | 1 | Departure time (export only – when putting res will be calculated with NumPeriods) |
| hlxReservationLine/ChangedDate | 0..1 | Export only |
| hlxReservationLine /DoneDate | 0..1 | Export only |
| hlxReservationLine/** **CancelDate | 0..1 | Export only |
| hlxReservationLine/** **NumResources | 1 | Number of resources (rooms or other type) |
| hlxReservationLine/** **NumPeriods | 1 | Number of periods (days or time period) |
| hlxReservationLine/** **NumAdults | 1 |  |
| hlxReservationLine/** **NumChildren | 1 |  |
| hlxReservationLine/** **NumExtras | 1 |  |
| hlxReservationLine/** **NumFrees | 1 | Number of Free guests. |
| hlxReservationLine/** **RatePlanCode | 1 | Hotellinx rate id for the reservation. Reservation value will be calculated with this rate |
| hlxReservationLine/RateName | 0..1 | Export only |
| hlxReservationLine/** **CampaignCode | 0..1 | CampaignCode for discounts |
| hlxReservationLine/ hlxReservationRates | 0..1 | List of hlxReservationRate elements. |
| hlxReservationRate | 1..n |  |
| /hlxReservationRate /RatePlanCode | 1 | Rate id to use |
| /hlxReservationRate /LineStartDay | 0..1 | The integer start period (day or period of time) for the rate where 0 (zero) is the first period of the reservation. |
| /hlxReservationRate/NumPeriods | 0..1 | Number of periods (days or time periods) the rate is effective from the LineStartDay. |
| /hlxReservationRate/Value | 0..1 | Value of the reservation rate (export only) |
| /hlxReservationRate/CampaignCode | 0..1 | Rate campaign code if any (export only). Note that to apply a discount for a reservation, the code should be given in the hlxReservationLine/ CampaignCode element, not in /hlxReservationRate/CampaignCode. |
| hlxReservationLine/** **Total | 0..1 | Total value of the reservation. Informative field saved in reservation line comments to check the calculated value versus the value given at 3<sup>rd</sup> party for the reservation. |
| hlxReservationLine/** **Deposit | 0..1 | Full deposit value for the reservation |
| hlxReservationLine/** **DepositPaidAmount | 0..1 | Paid deposit value |
| hlxReservationLine/** **DepositPaid | 0..1 | True/False if deposit is paid |
| hlxReservationLine/** **DepositDeadline | 0..1 | Number of days |
| hlxReservationLine/DepositTransaction | 0..1 | Posting code id for transaction (only with customization) |
| hlxReservationLine/SalesCode | 0..1 | Only with customization |
| hlxReservationLine/PaymentCode | 0..1 | Only with customization |
| hlxReservationLine/** **Comments | 0..1 | Reservation line comments |
| hlxReservationLine/** **ExtraInfo1 | 0..1 | For customizations when importing reservation. Generally not used. |
| hlxReservationLine/** **ReservationRoute | 0..1 | Reservation route used (export only). |
| **..** ReservationRoute/@** **NotInUse | 1 |  |
| **.. **ReservationRoute/@Id | 1 | Hotellinx id for the route. |
| hlxReservationLine/ Allotment | 0..1 | If reservation in allotment (allotment is not enlarged automatically if it becomes overbooked) |
| Allotment/Id | 1 |  |
| Allotment /AllotmentName | 1 | export only |
| hlxReservationLine/Confirmed | 0..1 | Reservation marked as confirmed. Export Only. |
| hlxReservationLine/** **GroupId | 0..1 |  |
| hlxReservationLine/** **AccomValue | 1 | Export only |
| hlxReservationLine/ ReservationDimension | 0..1 | Special feature in customizations only |
| ReservationDimension/Name | 1 |  |
| ReservationDimension/Id | 1 |  |
| ArrivalInfo | 0..1 |  |
| hlxReservationLine/** **hlxGuestNames | 0..1 | List of guest names for the reservation room type |
| hlxGuestName | 1..n | Guest name details staying in the room |
| hlxGuestName/ FirstName | 0..1 | Truncated to 30 characters |
| hlxGuestName/** **Surname | 1 | Truncated to 30 characters |
| hlxGuestName/** **Address | 0..1 |  |
| hlxGuestName/** **Email | 0..1 |  |
| hlxGuestName/ Mobile | 0…1 |  |
| hlxGuestName/** **Age | 0..1 |  |
| hlxGuestName/** **Gender | 0..1 |  |
| hlxGuestName/** **Identification1 | 0..1 |  |
| hlxGuestName/** **Identification2 | 0..1 |  |
| hlxGuestName/** **Identification3 | 0..1 |  |
| hlxGuestName/** **PinCode | 0..1 |  |
| hlxGuestName/** **hlxCreditCard | 0..1 | Guest name credit card element. See hlxCustomer/ hlxCreditCard for details. |
| hlxGuestName/** **Room | 0..1 | Will block this room (id) if given |
| hlxGuestName/Code | 0..1 | Room code / name (only in export) |
| hlxGuestName/** **Adults | 0..1 | Number of adults staying in the room |
| hlxGuestName/** **Children | 0..1 | Number of children staying in the room |
| hlxGuestName/ GuestNameId | 1 | Was export only, can now be given also in PutReservations request to modify an existing guest name line, e.g. to change a name or add a deposit paid amount. If 0 or not given, a new guest name line will be added. To avoid error messages or updating the wrong guest name line, always use ReservationsRQ/GetReservations first, to obtain the correct guest name line ids and note that even if you originally created the name list, the property may have added / modified / removed lines after that. |
| hlxGuestName/ Deposit | 0..1 | Not in use, replaced by hlxGuestName/ DepositPaidAmount |
| hlxGuestName/ DepositPaidAmount | 0..1 | Personal deposit paid, will be posted onto guest name line folio |
| Deposit/ Deposit | 1 |  |
| Deposit/ DepositPaidAmount | 1 | The amount that will be posted onto the folio |
| Deposit/ PaymentCode | 1 | The payment code id used to post onto the folio |
| hlxGuestName/ CheckInTime | 1 |  |
| hlxGuestName/ CheckOutTime | 1 |  |
| Clerk | 0..1 | Export only (if allowed in configurations) |
| Clerk/Id | 1 | Id in the Hotellinx database |
| Clerk/Code | 1 | Code in Hotellinx database |
| Clerk/Name | 1 | Full name in Hotellinx database |

PutReservations function will return a list of **hlxReservationConfirmation **elements. One for each hlxReservation element in the request parameter.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ReservationId | 1 | External reservation id given when reservation was created with PutReservations function. |
| HotellinxReservationId | 1 | Internal Hotellinx database reservation id created when reservation was inserted in the database. |
| ReservationLines | 1 | List of reservation lines |
| ReservationLine | 1..n | Reservation line confirmation element |
| ReservationLine/** **ReservationLineId | 1 | External reservation line id given when reservation line was created with PutReservations function. |
| ReservationLine/** **HotellinxReservationLineId | 1 | Internal Hotellinx database reservation line id created when reservation line was inserted in the database. |
| ReservationLine/** **Total | 1 | Total calculated value for the reservation line |
| ReservationLine/** **Success | 1 | Boolean value if the reservation line process was successful. |
| ReservationLine/** **ErrorMessage | 0..1 | Any possible error or warning that needs attention after processing the reservation line. |
| ReservationLine/** **Invoice | 0..1 | Invoice created when importing reservation. This functionality is available only with customizations and not generally in use. |
| Total | 1 | The total value of all reservation lines. |
| Success | 1 | The general success of the whole PutReservations function. |
| ErrorMessage | 0..1 | Any possible error or warning that needs attention after processing the reservation. |

### GetHousekeepingResources

GetHousekeepingResources function returns all rooms (resources) and their reservation / guest status for housekeeping purposes. “Room” is used in the description to point to any resource that is available for reservation.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Floor | 1 | Floor name for filtering the result. Empty string will return all. |

 The function returns a list of HousekeepingResource element one for each room even if the room does not have any reservation data available currently.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Room | 1 | Room id in Hotellinx database. |
| Floor | 1 | Floor if set in Hotellinx. |
| InUse | 1 | True/False, if False the room is not currently in use for guest. |
| Cleaned | 1 | True/False, if the room is marked as cleaned or not. |
| Vacant | 1 | True/False, if false the room has a guest staying. |
| Code | 1 | Room code or number. |
| RoomTypeId | 1 |  |
| RoomTypeName | 1 |  |
| DepartmentId | 1 |  |
| DepartmentName | 1 |  |
| Description | 1 |  |
| CheckInDayToday | 1 | True/False |
| CurrentReservationDateTimeStart | 1 | Current checked in reservation for the room. |
| CurrentReservationDateTimeEnd | 1 |  |
| CurrentReservationArrivalInfo | 1 | Arrival info if any |
| CurrentGuestRemark | 1 | Remarks for the room |
| CurrentGuestId | 1 | Hotellinx guest id the room is assigned to |
| CurrentGuestPinCode | 1 | PIN code selected for the current guest for the room |
| CurrentHotellinxReservationId | 1 | Hotellinx reservation account id |
| CurrentHotellinxReservationLineId | 1 | Hotellinx reservation (line) id |
| CurrentReservationNotInUse | 1 | True/False if the reservation has been marked as not in use. The room will be out of use (for example maintenance period) for the duration of the reservation. |
| NextReservationDateTimeStart | 1 | Next reservation for the room where the reservation departure is in the future and there is no guest checked in for the room. |
| NextReservationDateTimeEnd | 1 |  |
| NextReservationArrivalInfo | 1 |  |
| NextReservationHotellinxReservationLineId | 1 |  |
| NextGuestRemark | 1 |  |
| NextGuestId | 1 |  |
| NextGuestPinCode | 1 |  |
| NextReservationNotInUse | 1 |  |

### GetGuestAccounts

GetGuestAccounts function returns all reservation guest details without the reservation data. It has the same data structure as GetReservations function but only **hlxReservation** element will be returned. You can search by done date or changed date, specifying which one in the call parameters.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| DateTimeSearch | 1 | DateTime value of the search. |
| SearchBy | 1 | String value specifying the search by target column with values “DoneDate” or “ChangedDate”. |

### GetRoomGuestHistory

Get the occupied room history with guest names. Returns a list of **hlxGuestName** elements without any reservation data. Gets every room guest element that has a reservation in the given period. It is possible to get the same room multiple times. Does not return rooms from cancelled reservations.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StayPeriodFrom | 1 | DateTime |
| StayPeriodTo | 1 | DateTime |

### PutGuestAccount

Takes one **hlxReservation** element as parameter and inserts or updates (if exists) guest account. Returns **hlxReservationId **that contains the Hotellinx reservation id if new record was created and, if update, the same id that was used to make the update. Failed attempt will return null result. Below are listed the elements from the hlxReservation that are processed. Element descriptions can be found under PutReservations function.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ReservationId | 0..1 |  |
| SegmentId | 1 |  |
| RateGroupId | 1 |  |
| Comments | 0..1 |  |
| hlxCustomer | 1 | All elements will be processed |
| hlxAgent | 0..1 | All elements will be processed if included. |

Returns hlxReservationId element, the value of which will be the id created (if new element) or the id used to update.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| @ReservationIdType | 1 | HotellinxId or ExternalId depending on the id type returned. |

### PutDailyRates

Takes a single **DailyRates** element (contains an array of daily rate elements) as a parameter and updates the Hotellinx daily rate calendar with the values. Each daily rate will be validated as they are processed and the processing will stop when any record fails the validation. Does not roll back the already processed records and only returns an http error without any details of the error. So it is recommended to update the patch again after an error. Validation checks that the base rate exists in Hotellinx and that the rate extension type is set as a daily rate. The base rate must have the same department and the same hotel as the parameter set used to authenticate and the authenticated user must also have permissions to update daily rates. The imported daily rate cannot have hlxRateLine element with LineNumber element value zero or larger than the number of lines in the base rate.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| DailyRates | 1 | Array of daily rate elements. |

**Daily rate element (for import)**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 | Effective date for the rate daily modification |
| RatePlanCode | 1 | Hotellinx rate id – must exist in Hotellinx |
| Name | 0 | Export only – not required or used in import |
| hlxRateLines | 1 | List of Hotellinx rate lines (complete description of the hlxRateLine element can be found in the GetRates function). Only LineNumber and the Amount element will be used with import. |
| hlxRateLine/LineNumber | 1 | Must be equal to the line number in the base rate in Hotellinx (anything from 1 – 10 depending on the base rate). |
| hlxRateLine/Amount | 1 | Must have the amount element and only the value of the element will be used in the import. |
| hlxRateLine/ VatPercent | 0 | Export only – not required or used in import |
| DayRateYieldValue | 0 | Export only – not required or used in import |
| DayClosed | 1 | Rate closed or open (true/false) for the day |
| IsDeleted | 0 | Export only – not required or used in import |

The PutDailyRates function does not have a return type so if http status is OK after function call all of the daily rates have been processed successfully.

### GetRoomAvailability

Get availability for a single room for the days requested. Not for date-time based resources.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RsId | 1 | Room id in Hotellinx database |
| StartDate | 1 | Query start date |
| EndDate | 1 | Query end date |

Response:

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 | Element date value |
| IsAvailable | 1 | true or false |

### SalesRQ

Get sales data from Hotellinx postings based on done date or closed date. This query can be slow and the data amount can be massive if queried for a long period. To avoid extra costs of using API, it is recommended to split the API consumption to use short periods, for example a few hours at a time and do the calls over the night period eg. 11 PM to 06 AM.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| DoneDate | 0..1 | Date range |
| ../DateAfter | 1 |  |
| ../DateBefore | 1 |  |
| ClosedDate | 0..1 | Date range |
| ../DateAfter | 1 |  |
| ../DateBefore | 1 |  |
| IncludePayments | 0..1 | By default payments are not included in the result |

Response list of postings:

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| UnitPrice | 1 | Unit price for product |
| Quantity | 1 | Sold amount |
| RowText | 1 |  |
| DoneDate | 1 | Invoice row done date |
| ClosedDate | 1 | Invoice closed / settle date |
| RowId | 1 | Database Id of the posting |
| InvoiceNumber | 1 | If settled |
| Status | 1 | Open or Closed |
| VatRatePercent | 1 |  |
| VatIncluded | 1 | true / false |
| WorkStationNumber | 1 | Hotellinx POS workstation number |
| PosProduct | 1 | POS product or reservation rate for the sales |
| ../Id | 1 | Database id |
| ../Name | 1 |  |
| ../ProductKind | 1 | pos / rate |
| TransactCode | 1 | Sales or payment code used for the row |
| ../Id | 1 | Database id |
| ../Code | 1 | Name / code used |
| ../TransactType | 1 | SalesCode or PaymentCode |

### GetRateMarketGroup

Get rate marget group and market code information with rate id. Returns a **RateMarketGroup **element. This function is for special purposes and not suitable for all hotels.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RaId | 1 | Hotellinx rate id |

**RateMarketGroup**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| MarketCode | 1 |  |
| MarketGroup | 1 |  |
| RateName | 1 |  |
| AccommodationRate | 1 | true if the first line within the rate is connected to a sales code that belongs to an accommodation sales posting group |

### GetReservationInvoice

Get closed and open posting rows for a selected reservation line. Returns a **ReservationInvoiceResp **element, which includes also posting lines from the archives.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| HotellinxReservationLineId | 0..1 | Hotellinx reservation line id (Res no in Hotellinx). Omit this element when using the ReservationLineId element. |
| ReservationLineId | 0..1 | External system’s reservation line id. Omit this element when using the HotellinxReservationLineId element. |
| InvoiceNumber | 0..1 | If given, the response will include only posting lines for this invoice number |

**ReservationInvoiceResp**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ErrorMessages | 1 | Empty if success, otherwise list of reason(s) for failure, if known |
| Success | 1 | true / false |
| HotellinxReservationLineId | 1 | omitted if request was with ReservationLineId |
| ReservationLineId | 1 | omitted if request was with HotellinxReservationLineId |
| Invoices | 1 |  |
| Invoices/ReservationInvoice | 0..n |  |
| ReservationInvoice/hlxCustomer | 1 |  |
| hlxCustomer/FirstName | 1 |  |
| hlxCustomer//Surname | 1 |  |
| hlxCustomer/Company | 1 |  |
| hlxCustomer/Address | 1 |  |
| hlxCustomer/Zip | 1 |  |
| hlxCustomer/City | 1 |  |
| hlxCustomer/State | 1 |  |
| hlxCustomer/Country | 1 |  |
| hlxCustomer/Phone | 1 |  |
| hlxCustomer/Mobile | 1 |  |
| hlxCustomer/Email | 1 |  |
| ReservationInvoice/InvoiceNumber | 1 | 0 for open posting rows |
| ReservationInvoice/InvoiceRows | 1 | This element includes all posting rows with this invoice number or all open posting rows |
| InvoiceRows/InvoiceRow | 1..n | This element is for an individual posting row |
| InvoiceRow/NumberOfUnits |  | Number of items |
| InvoiceRow/UnitPrice |  | Unit price (the amount on a row is NumberOfUnits times UnitPrice) |
| InvoiceRow/RowText |  | The text shown on the bill |
| InvoiceRow/Vat |  | Vat% |
| InvoiceRow/VatIncluded |  | true/false |
| InvoiceRow/RowType |  | sales/payment |
| InvoiceRow/Status |  | closed/open (if InvoiceNumber<> then closed, if InvoiceNumber=0 then open) |
| InvoiceRow/DoneDate |  | DateTime when the InvoiceRow has been created |
| InvoiceRow/ClosedDate |  | DateTime when the InvoiceRow has been closed (sale has been closed/ended) |
| InvoiceRow/RoomCode |  | Room number (or room ‘name’) |
| ReservationInvoice/TotalAmount | 1 | Total sales on this invoice or if InvoiceNumber=0, total open sales for this reservation line |
| ReservationInvoice/TotalAmountPaid | 1 | Total payments on this invoice or if InvoiceNumber=0, total open payments for this reservation line |

### CreateReservationSalesPostingRequest

Adds a sales posting to a reservation line. The posting is added at reservation line level, not at room level. The function returns a **ReservationPostingResp **element that shows whether the posting was successfully added or not.

**Request**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| HotellinxReservationLineId | 0..1 | Refers to the Hotellinx reservation line id. Use either this or ReservationLineId |
| ReservationLineId | 0..1 | Refers to the external reservation line id. Use either this or HotellinxReservationLineId |
| UnitPrice | 1 | The price for one item |
| UnitAmount | 1 | The number of items |
| SalesCodeId | 1 | The Hotellinx sales code id (the property should supply the sales code id:s to be used for each product) |
| RateGroupId | 1 | The Hotellinx rate group id |

**ReservationPostingResp**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ErrorMessages | 1 |  |
| ErrorMessages/string | 0..n | The reason(s) for failure if known, e.g. Invalid posting code |
| Success | 1 | true or false |
| HotellinxReservationLineId | 0..1 | Supplied if HotellinxReservationLineId was used to post, otherwise ReservationLineId is supplied |
| ReservationLineId | 0..1 | Supplied if ReservationLineId was used to post, otherwise HotellinxReservationLineId is supplied |

### CreateReservationPaymentPostingRequest

Adds a payment posting to a reservation line. The posting is added at reservation line level, not at room level. The function returns a **ReservationPostingResp **element that shows whether the posting was successfully added or not.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| HotellinxReservationLineId | 0..1 | Refers to the Hotellinx reservation line id. Use either this or ReservationLineId |
| ReservationLineId | 0..1 | Refers to the reservation line id. Use either this or HotellinxReservationLineId |
| Value | 1 | The amount paid |
| PaymentCodeId | 1 | The Hotellinx payment code id (the property should supply the payment code id:s to be used for each payment and ideally dedicated payment codes should be used for payments added by external systems) |
| SettleInvoice | 0..1 | If given and true, the invoice will be settled if its balance is 0 after the requested payment has been added. |

**ReservationPostingResp**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ErrorMessages | 1 |  |
| ErrorMessages/string | 0..n | The reason(s) for failure if known, e.g. Invalid posting code |
| Success | 1 | true or false |
| HotellinxReservationLineId | 0..1 | Included if HotellinxReservationLineId was used to post, otherwise ReservationLineId is supplied |
| ReservationLineId | 0..1 | Included if ReservationLineId was used to post, otherwise HotellinxReservationLineId is supplied |
| InvoiceNumber | 0..1 | Included if invoice settled, otherwise omitted or 0. |

### CheckInReservation

Checks in the requested reservation line, which means that all rooms that have been pre-allocated and are vacant and clean are checked in. If even one room is successfully checked in, the reservation line status will be checked in and Success will be set to true in the response. The CheckinReservation request can be resent for the same reservation as many times as needed, and each time that there are rooms that have not yet been checked in, but are now pre-allocated, vacant and clean, these will be checked in. Reservation rate postings can be made at checkin, but this is not recommended in situations where rate(s) include reservation level and/or flat rate charges if the reservation is for several rooms and not all are checked in at the same time.

The function returns a **CheckInOutResp **element that shows whether the reservation line was successfully checked in or not.

**CheckInReservationRequest**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| HotellinxReservationLineId | 0..1 | Refers to the Hotellinx reservation line id. Use either this or ReservationLineId |
| ReservationLineId | 0..1 | Refers to the external reservation line id. Use either this or HotellinxReservationLineId |
| CreateRatePostings | 1 | true or false, depending on whether reservation rate(s) should also be posted. |

**CheckInOutResp**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ErrorMessages | 1 |  |
| ErrorMessages/string | 0..n | The reason(s) for failure if known, e.g. Could not find reservation for check in. |
| Success | 1 | true or false |
| HotellinxReservationLineId | 0..1 | Supplied if HotellinxReservationLineId was used to check in, otherwise ReservationLineId is supplied |
| ReservationLineId | 0..1 | Supplied if ReservationLineId was used to check in, otherwise HotellinxReservationLineId is supplied |

### CheckOutReservation

Checks out all rooms on the requested reservation line, which are checked in at the moment the request is sent, regardless of whether there are open postings on the reservation or any of the room bills. If departure date is not today, the request fails.

The function returns a **CheckInOutResp **element that shows whether the reservation line was successfully checked out or not.

**CheckOutReservationRequest**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| HotellinxReservationLineId | 0..1 | Refers to the Hotellinx reservation line id. Use either this or ReservationLineId |
| ReservationLineId | 0..1 | Refers to the external reservation line id. Use either this or HotellinxReservationLineId |

**CheckInOutResp**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| ErrorMessages | 1 |  |
| ErrorMessages/string | 0..n | The reason(s) for failure if known, e.g. departure date not today |
| Success | 1 | true or false |
| HotellinxReservationLineId | 0..1 | Supplied if HotellinxReservationLineId was used to post, otherwise ReservationLineId is supplied |
| ReservationLineId | 0..1 | Supplied if ReservationLineId was used to post, otherwise HotellinxReservationLineId is supplied |

### GetAvailabilityFromAllotment

Otherwise as GetAvailability, but requires allotment id as parameter and returns room types and number of rooms available for each period within the query date interval, where *availability is within the allotment* in question. Can only be used with date-based capacities since time-based capacities cannot be in allotments.

Returns GetAvailabilityResponse/GetAvailabilityResult which includes a list of **hlxAvailability element**(s).

**GetAvailabilityFromAllotmentRequest**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| StartDate | 1 | Availability request query start date |
| EndDate | 1 | Availability request query end date |
| AllotmentId | 1 | Allotment id must be provided by the hotel |
| ExcludeSegments | 0..1 | Optional – exclude reservations selected segments when calculating availability |
| ExcludeSegments/int | 0..n | Optional – exclude reservations in this list of segments when calculating availability |

**AvailabilityElement**

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Date | 1 | Date of availability (with @time attribute for time based type periods) |
| hlxRoom | 1..n | Contains room type (capacity) information |
| hlxRoom/RoomTypeId | 1 | Hotellinx room type id |
| hlxRoom/RoomTypeName | 1 | Hotellinx room type name |
| hlxRoom/DepartmentId | 1 | Hotellinx department id |
| hlxRoom/DepartmentName | 1 | Hotellinx department name |
| hlxRoom/Available | 1 | Number of units available |
| hlxRoom/** **NotInUseRooms | 1 | Units set as not in use |
| hlxRoom/** **TotalRooms | 1 | Total number of rooms (units) |
| hlxRoom**/**Beds | 1 | Number of beds (units) in a room |
| hlxRoom/Description1 | 0..1 | Description set for the room in Hotellinx for language index 1. |
| hlxRoom/Description2 | 0..1 | … language index 2 |
| hlxRoom/Description3 | 0..1 | … language index 3 |
| hlxRoom/Description4 | 0..1 | … language index 4 |
| hlxRoom/Description5 | 0..1 | … language index 5 |

### GetPriceAvailabilityFromAllotment

Otherwise as GetPriceAvailability, but requires allotment id as parameter and the request is used to determine which rates are possible for any given reservation. Function will count the availability of the room type within the given allotment and all other possible restrictions there is to restrict sale for any rate. This call should generally not be made until all reservation relevant data is available.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| DateTimeStart | 1 | Reservation arrival day |
| NumResources | 1 | Number of resources (rooms or other type) for the reservation |
| NumPeriods | 1 | Length of stay in relevant periods (number of days for date based types) |
| NumAdults | 1 | Number of adults in reservation |
| NumChildren | 1 | Number of children in reservation |
| NumExtras | 1 | Number of extras in reservation |
| NumFrees | 1 | Number of Free guests. |
| CampaignCode | 1 | Campaign code for rates if any |
| AllotmentId |  | Allotment id must be supplied by the hotel |
| ExcludeSegments | 1 | List of Hotellinx segments (id) not to include in availability checks. |

GetPriceAvailabilityFromAllotment will return a list of **hlxPriceAvailability** elements. These elements will contain all room (resource) and rate combinations possible to sell for the query.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RatePlanCode | 1 | Id of the rate in Hotellinx database |
| RoomTypeId | 1 | Id of the room (type) in Hotellinx database |
| RoomName | 1 | Name of the room (type) |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |
| Beds | 1 | Number of beds in room (type) |
| DateTimeStart | 1 | Reservation arrival date (time) |
| NumResources | 1 | Number of resources (rooms or other type) |
| NumPeriods | 1 | Length of stay in relevant periods (number of days for date based types) |
| Total | 1 | Total price for reservation with given values |
| Description | 1 | Rate description in language index 1 |
| Description2 | 1 | Rate description in language index 2 |
| Description3 | 1 | Rate description in language index 3 |
| Description4 | 1 | Rate description in language index 4 |
| Description5 | 1 | Rate description in language index 5 |
| CampaignCode | 1 | Rate campaign code |

### GetRoomTypes

Returns all room types belonging to the department(s) connected to the user credentials used in the request and does not have any parameters.

GetRoomTypes will return a list of **RoomType** elements with basic room type features as listed below.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RoomTypeId | 1 | Id of the room type in the Hotellinx database |
| Name | 1 | Name of the room type |
| Beds | 1 | Number of beds in rooms of this type |
| Number | 1 | Number of rooms of this type |
| NotInUse | 1 | Number of rooms of this type set to not in use in Hotellinx Hotel settings |
| Description | 0..1 | The first language room type description text |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |

### GetRooms

The function can be used to obtain details about a given room or all rooms belonging to a given room type. Use room type id or room id / room name as specified below depending on the situation. A GetRooms request without parameters will return all rooms belonging to the department(s) connected to the user credentials used in the request.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| RoomTypeId | 0/1 | Use if the request is for rooms of a specific type, room type id in Hotellinx. |
| Id | 0/1 | Use if the request is for details about a specific room. Use either this or Name when requesting for details about a specific room. RoomTypeId is not needed when requesting for details for a specific room, but the response will include the room type id. |
| Name | 0/1 | Use if the request is for details about a specific room. Use either this or Name when requesting for details about a specific room. RoomTypeId is not needed when requesting for details for a specific room, but the response will include the room type id. |

GetRooms will return a list of **ResourceElement** elements. These elements will contain basic room features.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Id | 1 | Id of the room in the Hotellinx database |
| Name | 1 | Name of the room |
| Description | 0..1 | The first language room description text |
| Number | 1 | Number of rooms of this type |
| NotInUse | 1 | Number of rooms of this type set to not in use in Hotellinx Hotel settings |
| RoomTypeId | 1 | Id of the room type in the Hotellinx database |
| RoomTypeName | 1 | Name of the room type |
| DepartmentId | 1 | Hotellinx department id |
| DepartmentName | 1 | Hotellinx department name |

### CanUseCampaignCode

Use this function to check whether a given campaign code is valid or not, for a reservation with given arrival and departure dates. Validity is checked assuming that the reservation is made today. The function only returns true or false.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| Campaign code | 1 | Campaign code name in Hotellinx |
| Arrival | 1 | Reservation arrival datetime (time 00:00:00 for date-based reservations) |
| Departure | 1 | Reservation daparture datetime (time 00:00:00 for date-based reservations) |

CanUseCampaignCode only returns one element, which is either true or false.

|  |  |  |
| --- | --- | --- |
| <span style="color: #ffffff">**Element**</span> | <span style="color: #ffffff">**Number**</span> | <span style="color: #ffffff">**Description**</span> |
| CanUseCampaignCodeResult | 1 | True or false |