Disponemos de una mensajería que permite solicitar disponibilidad en un hotel y que se genere el deeplink que redirige al motor de reservas de forma automática.


Primero es necesario abrir sesión en nuestro sistema con las credenciales proporcionadas para este propósito. Esto nos devolverá un sessionId que necesitaremos para crear el deeplink.


Mensaje para abrir sesión


Este mensaje permite autenticar el usuario en la plataforma de Hotetec. Se asigna un identificador de sesión (en adelante sessionId) que deberá ser incluido en todos los mensajes de petición enviados.


Endpoint: https://hotel.new.hotetec.com/webservice/integrations/pull/openSession


El mensaje está compuesto por los siguientes elementos:

 

Elemento

Obligatorio

Valores / Formato

Descripción

clientCode

S

Alfanumérico

Código de empresa o grupo de agencias a las que pertenece el usuario. Solicitar a Hotetec.

systemCode

S

Alfanumérico

Se debe indicar el mismo valor que en clientCode. Solicitar a Hotetec.

username

S

Alfanumérico

Identificador de usuario. Solicitar a Hotetec.

password

S

Alfanumérico

Contraseña del usuario. Solicitar a Hotetec.

 

Ejemplo de mensaje (JSON):

{

    "clientCode":"Solicitar a Hotetec",

    "systemCode""Solicitar a Hotetec",

    "username":"Solicitar a Hotetec",

    "password""Solicitar a Hotetec"

}


Mensaje de respuesta al abrir sesión

 

El mensaje está compuesto por los siguientes elementos:

 

Elemento

Descripción

sessionId

ID de la sesión generado

 

Ejemplo de mensaje (JSON):

{

    "sessionId""MST#20077#682164202862402",

}



Mensaje bookingEngineUrl


Este mensaje permite solicitar disponibilidad con unos parámetros mínimos y genera una URL que redirige al motor con dichos parámetros ya cumplimentados.


Endpointhttps://hotel.new.hotetec.com/webservice/integrations/meta/bookingEngineUrl


Elemento

Obligatorio

Valores / Formato

Descripción

sessionId

S

Alfanumérico

ID de la sesión generado

languageCode

N

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

Idioma en el que queremos recibir la respuesta. Si no se indica, se devolverá el valor que Hotetec tenga por defecto para el usuario

 

Se utilizan los códigos ISO 639-1. Actualmente sólo se aceptan los indicados en valores.

customerIsLoggedNtrue/falseParámetro que permite indicar si queremos que la URL generada nos redirija con el descuento de tarifa registro o sin él.

currency

N

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

Divisa en la que queremos recibir los precios de la solicitud. Si no se indica, se devolverá el valor que Hotetec tenga por defecto para el usuario.

 

Se utilizan los códigos ISO 639-1. Actualmente sólo se aceptan las indicadas en valores.

hotelCode

S

Alfanumérico

Código individual de un hotel/establecimiento

vendorCode

S

Alfanumérico

Código de proveedor/empresa de un conjunto de hoteles/establecimientos

dateFrom

S

Fecha + Hora

Fecha de entrada.

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

dateTo

S

Fecha + Hora

Fecha de salida.

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

 

distribution

S

"distribution": [{

  "id": 1,

  "person": [

     { "age": 30 },

     { "age": 30 }

        ]

Añadiremos la configuración de las distintas habitaciones y ocupaciones. 

id

S

IDs de habitación, por cada habitación que añadamos debemos indicar un nuevo ID

age

S

Definiremos la edad de cada ocupante para el que queremos consultar disponibilidad. A los adultos se les puede indicar 30 por defecto. Para los niños es obligatorio indicar la edad real para poder tarificar correctamente.

 

mealPlanCode

N

Alfanumérico

Código del régimen que queremos que salga seleccionado por defecto.

promotionalCode

N

Alfanumérico

Se utiliza para lanzar la petición con un código promocional asociado

 


Ejemplo de mensaje de petición (JSON):


{

    "sessionId": "MST#20077#682164202862402" ,

    "languageCode": "ES",

    "customerIsLogged": "true",

    "currency" : "EUR",

    "hotelCode""30621",

    "vendorCode""DEMOHTT",

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

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

    "distribution": [{

        "id"1,

        "person": [

            { "age"30 },

            { "age"30 }

        ]

        ]

    }],

    "mealPlanCode": "BB",

    "promotionalCode": "TEST"

}



Una vez lanzamos esta petición el sistema nos devuelve una URL que redirige al motor de reservas.


Ejemplo de mensaje de respuesta (JSON):


{

    "bookingEngineUrl": "https://public4.new.hotetec.com/commonAvailability.meta/?bookingEngine=120&systemCode=WHP&hotelCode=53089&dateFrom=07%2F05%2F2024&dateTo=11%2F05%2F2024&mealPlanCode=BB&distribution=ad-2&language=ES&currency=EUR&customerIsLogged=true"

}



NOTA IMPORTANTE: no se deben enviar valores incorrectos en los parámetros, como por ejemplo "null", ya que esto se añade a la URL y genera conflictos y problemas en la disponibilidad.