This message returns the availability for one or more establishments on specific dates filtered in the request.

The rates that are returned always include taxes, except for city taxes which must be added separately.


Endpointhttps://hotel.new.hotetec.com/webservice/integrations/pull/hotelAvailability


 

hotelAvailability Request message

 

The message has the following elements:

 

Element

Mandatory

Values/Format

Description

sessionId

Y

Alphanumeric

Generated session’s ID

languageCode

N

DE, EN, ES, FR, IT, NL, PT

Language in which we want to receive the response. If not indicated, the value that Hotetec has by default for the user will be returned.

 

ISO 639-1 codes are used. Right know only the codes indicated in values are accepted.

currency

N

EUR, USD, GBP, EGP, MXN, CHF, CUP

Currency in which we want to receive the prices of the request. If not indicated, the value that Hotetec has by default for the user will be returned.

 

ISO 639-1 codes are used. Right know only the codes indicated in values are accepted.

customerIsLogged
N
True / FalseUsed to indicate if we want to get discounted prices for registration.

vendorCode

N

Alphanumeric

Company code of a hotel/establishment set

hotelCode

N

Alphanumeric

Single’s hotel/establishment code

dateFrom

Y

Date + Time

Check in date

Example: "2023-01-15T00:00:00.000Z”

dateTo

Y

Date + Time

Check out date

Example: "2023-01-15T00:00:00.000Z”

 

distribution

Y

"distribution": [{

  "id": 1,

  "person": [

     { "age": 30 },

     { "age": 30 }

        ]

Here we will set up all the rooms and occupancy configuration

id

Y

Room’s IDs, for each room we will add a new ID

age

Y

We will set up the age of each occupant. 

For adults we can set up 30 by default.

For children it is compulsory to set up the real age in order to have the correct rates.

 

hotelName

N

Alphanumeric

Establishment’s name. A part of the name can be set up and a search will be made for establishments containing these names.

hotelFacilityCode

N

Alphanumeric

Type of facilities of the establishment. Example: PISCINA (SWIMMING POOL)

categoryCode

N

Alphanumeric

Establishment’s category

chainCode

N

Alphanumeric

Chain’s code

establishmentTypeCode

N

Alphanumeric

Establishment’s type code

locationCode

N

Alphanumeric

Geographical area’s code where the establishment is located.

mealPlanCode

N

Alphanumeric

Meal plan’s code that we want to have by default.

roomCode

N

Alphanumeric

Internal room’s code. Internal use

rateCode

N

Alphanumeric

Rate’s code

rateName

N

Alphanumeric

Rate’s name. A part of the name can be set up and a search will be made for establishments containing these names.

rateProperty

N

Alphanumeric

Rate’s property filter to ask by a specific rate type. The current possible parameters are:

NRE: Non Refundable

MED: Older than

UNE: Unemployed

OFF: Offline

ON: Online

MAR: Market

RES: Resident

OPA: Opaque

REG: Sign in

HGL: Highlighted Rate

II: Insurance Included

FUN: Public worker

EXC: Excluded Country

INC: Included Country

TAX: Tax Included

AGT: Agent

CC: Call Center

promotionalCode

N

Alphanumeric

This is used to launch the request with an associated promotional code

geolocation

N

Numeric

Search by GPS location

radius

N

Numeric

Search by radius from a geolocation (mandatory element if the previous element is reported). It shall be set up in metres.

paymentFilter

N

Alphanumeric

Payment’s method filter

allowOnRequest

N

 

 

true

false

This is used to set up if we want on request options or not in the response. Values:

True: Yes

False: No

 

Example of message with all elements filled out (JSON):

 

{

    "sessionId"" HPH#20077#682164202862402",

    "languageCode""ES",

    "currency""EUR",

    "customerIsLogged": "true"

    "vendorCode": ["DEMOHTT"],

    "hotelCode": ["30621"],

    "dateFrom""2023-01-15T00:00:00.000Z",

    "dateTo""2023-01-16T00:00:00.000Z",

    "distribution": [{

        "id"1,

        "person": [

            { "age"30 },

            { "age"30 }

        ]

    }],

    "hotelName"“Boutique”,

    "hotelFacilityCode": [“PISCINA”],

    "categoryCode": [“4*”],

    "chainCode": [“DEMOHTT”],

    "establishmentTypeCode": ["HOTL"], 

    "locationCode""ESBAL03",

    "mealPlanCode": ["AI"],

    "roomCode": ["DBL#SEA"],

    "rateCode""30006",

    "rateName""WEB",

    "rateProperty": {"code": "RES", "value": "BALEARES"},

    "promotionalCode""BLACKFRIDAY", 

    "geolocation": {"latitude": 39.7644, "longitude": 3.1615},

    "radius": “500”,

    "paymentFilter": {"paymentType": "Card", "paymentOrderType": "Inmediate"},

    "allowOnRequest": “true”

}

 

 

 

hotelAvailability Response message

 

The message has the following elements:

 

Element

Description

sessionId

Generated session’s ID

notification

Type of notification.

Error: it’s important to check it immediately in order to solve the issue that is being indicated by the system.

Warning

Information

notificationDetail

Notification’s description

currencyCode

Currency’s code

dateFrom

Check in date. Julian date is used

dateTo

Check out date. Julian date is used

 

distribution

Rooms and occupancy settings

id

There will be an ID for each occupancy type requested

age

Requested age

 

hotelOption

Breakdown of hotel information and rooms available

 

hotel

code

Single’s hotel/establishment code

name

Establishment’s full name

chain

Chain to which the establishment belongs

 

establishmentType

code

Establishment’s type code. (Example: HOTL)

name

Establishment’s type description. (Example: Hotel)

 

Category

code

Category’s code (Example: 5*)

name

Category's description. (Example: Five Stars)

 

address – country

code

Country’s code (Example: ES)

name

Country’s description. (Example: España – Spain)

state

Additional typing of the destination tree

county

Establishment’s city

province

Additional typing of the destination tree

 

address – location

code

Geographical area’s code

name

Geographical area’s description

postalCode

Establishment’s postcode

adressText

Establishment’s postal address

 

address - gps

latitude

Latitude

longitude

Longitude

 

contact

Establishment contact details

 

roomOption

Available rooms list

distributionId

Refers to which distribution we are getting the availability

 

room

code

Internal room’s code. Internal use

name

Room’s name

 

rateOption

Rate’s breakdown

 

rate

code

Rate’s code

name

Rate’s name

description

Rate’s description

conditions

Rate’s conditions

highlight

Rate's highlight

rateProperty

Rate’s property. The current possible parameters are:

NRE: Non Refundable

MED: Older than

UNE: Unemployed

OFF: Offline

ON: Online

MAR: Market

RES: Resident

OPA: Opaque

REG: Sign in

HGL: Highlighted Rate

II: Insurance Included

FUN: Public worker

EXC: Excluded Country

INC: Included Country

TAX: Tax Included

AGT: Agent

CC: Call Center

 

pricing

Price’s breakdown

priceType

Shows if the prices are PVP/PSP or net

 

cancellationOption

fromDate

From which date there are cancellation fees. Julian date is used

daysTo

Days’ remaining until the cancellation fees applies. Julian date is used

percentage

Cancellation fees’ percentage

amount

Cancellation fees’ amount

cancelPenaltyMode

Cancellation fees’ type

commissionAmount

Commission amount on cancellation fees

commissionable

If cancellation fees are commissionable or not. Values: 

true: Yes

false: No

amount

Amount on which commission is calculated

 

taxDetail

code

Tax’s code

name

Tax’s name

percentage

Tax’s percentage

taxAmout

Tax’s amount

baseAmount

Amount on which tax is calculated

 

cityTaxDetail

code

City tax’s code

name

City tax’s name

cityTaxAmount

City tax’s amount without VAT

taxDetail

Detail of the taxes of the city tax

code

Tax’s code (VAT) 

name

Tax’s name (VAT)

percentage

Tax’s percentage (VAT) 

taxAmout

Tax’s amount (VAT) 

baseAmount

Amount on which tax is calculated

 

priceDetail: this includes a breakdown of the different supplements, discounts, commissions, commercial policies, etc.

code

Breakdown’s type internal ID

name

Breakdown’s name

description

Breakdown’s description

type

Breakdown’s type. Values:

Gift

Breakdown: commission breakdown

Supplement: supplement/discount

group

General group of the breakdown. Values:

Sale Policy

Commission

Supplement

optional

If the breakdown is optional or not

order

Order of the breakdowns

amount

Price breakdown’s amount

appliedByProperty

If the breakdown is applied by a rate property

 

paymentOption

paymentKey

Method payment’s ID

name

Method payment’s name

description

Method payment’s description

conditions

Method payment’s conditions

paymentDate

Payment’s date

amountToPay

Amount or percentage payable

 

status

Availability status. Values:

Available

On request

unitsLeft

Room’s units available

 

mealPlan

code

Meal plan’s code

name

Meal plan’s name

description

Meal plan’s description

conditions

Meal plan’s conditions

 

occupancyCode

Occupancy code from the room shown

vendorCode

Company code of a hotel/establishment set

 

Example message (JSON):

{

    "sessionId""HPH#20077#652627707000703",

    "notification"null,

    "notificationDetail"null,

    "currencyCode""EUR",

    "dateFrom"1673740800000,

    "dateTo"1673827200000,

    "distribution": [

        {

            "id"1,

            "person": [

                {

                    "id"null,

                    "type"null,

                    "age"30

                },

                {

                    "id"null,

                    "type"null,

                    "age"30

                }

            ]

        }

    ],

    "hotelOption": [

        {

            "hotel": {

                "code""30621",

                "name""Boutique Hotel Elena",

                "chain"null,

                "establishmentType": {

                    "code""HOTL",

                    "name""Hotel"

                },

                "category": {

                    "code""4*",

                    "name""Cuatro estrellas"

                },

                "address": {

                    "country": {

                        "code""ES",

                        "name""ESPAÑA"

                    },

                    "state"null,

                    "county""Adeje",

                    "province"null,

                    "location": {

                        "code""ES-48245",

                        "name""Adeje"

                    },

                    "postalCode""38670",

                    "addressText""Av. Adeje",

                    "gps": {

                        "latitude"28.15039046107699,

                        "longitude"-16.44536361524011

                    }

                },

                "contact"null

            },

            "roomOption": [

                {

                    "distributionId"1,

                    "room": {

                        "code""DBL#STD-2",

                        "name""Standard room"

                    },

                    "rateOption": [

                        {

                            "rate": {

                                "code""30200",

                                "name""NON REFUNDABLE WEB RATE",

                                "description"null,

                                "conditions"null,

                                "highlight"null

                            },

                            "rateProperty"null,

                            "pricing": {

                                "priceType""PVP",

                                "cancellationOption": [

                                    {

                                        "fromDate"1668639600000,

                                        "daysTo"null,

                                        "percentage"null,

                                        "amount"140.25

                                    }

                                ],

                                "cancelPenaltyMode""NonRefundable",

                                "commissionAmount"0.0,

                                "commissionable"true,

                                "amount"140.25,

                                "taxDetail":

                                     {

                                            "code": "1234",

                                            "name": "Reduced VAT",

                                            "percentage": 10.0,

                                           "taxAmount": 144.0,

                                           "baseAmount": 1300.0

                                        },

                                 "cityTaxDetail":

                                        {

                                            "code": "1234",

                                            "name": "Baleares",

                                            "cityTaxAmount": 25.0,

                                            "taxDetail":

                                        {

                                            "code": "1234",

                                            "name": "Reduced VAT",

                                           "percentage": 10.0,

                                            "taxAmount": 2.5,

                                            "baseAmount": 22.5

                                         }

                                       }

                    }

                                "priceDetail": [

                                    {

                                        "code""[EtT]SalePolicy(PpT)DEMOHTT@70090",

                                        "name""Spa included",

                                        "description"null,

                                        "type""Gift",

                                        "group""SalePolicy",

                                        "optional"false,

                                        "order"1,

                                        "amount"null,

                                        "appliedByProperty"null

                                    },

                                    {

                                        "code""[EtT]Commission(PpT)DEMOHTT@30200@HPH@ClientCode@PVP",

                                        "name""NON REFUNDABLE WEB RATE - HPH - ClientCode - DEMOHTT",

                                        "description"null,

                                        "type""Breakdown",

                                        "group""Commission",

                                        "optional"false,

                                        "order"2,

                                        "amount"0.0,

                                        "appliedByProperty"null

                                    }

                                ]

                            },

                            "paymentOption": [

                                {

                                    "paymentKey""Hotel#DEMOHTT#10057",

                                    "name"" Payment at the hotel",

                                    "description"" Payment at the hotel",

                                    "conditions""<p> Payment will be made in cash or by credit card at check-out</strong>.</p>",

                                    "paymentDate"null,

                                    "amountToPay"null

                                },

                                {

                                    " paymentKey ""Hotel#DEMOHTT#10076",

                                    "name""Payment at the hotel - Guarantee card",

                                    "description"" The requested card will be used to guarantee your reservation.",

                                    "conditions""<p> If the card is not valid, the booking will be automatically cancelled.</p>",

                                    "paymentDate"null,

                                    "amountToPay"null

                                }

                            ],

                            "status""Available",

                            "unitsLeft"8

                        }

                    ],

                    "mealPlan": {

                        "code""HB",

                        "name""Half Board",

                        "description""Drinks not included",

                        "conditions""<p>Drinks not included</p>"

                    },

                    "occupancyCode""O@2-0-0",

                    "vendorCode""DEMOHTT"

                }