Descripción del sistema actual

 

En esta nueva versión el motor y su estructura han cambiado drásticamente y por tanto la forma de realizar peticiones directamente a este son diferentes.

Mantenemos una parte con retro-compatibilidad como es la de los parámetros básicos, para que accesos como MyBusiness no se tengan que volver a configurar, pero otros como los parámetros de disponibilidad sufren cambios directamente.

Por lo que podremos mantener peticiones sencillas de redirección a landings con parámetros estáticos y la parte de disponibilidad si que tendremos que “programarla” pues esta viene en formato json.


¿Cómo podemos crear un deeplink mediante archivo html?

  1. Editor de códigos (ejemplo que podemos utilizar,  notepad, visual estudio o sublime txt)
  2. Verificar los parámetro estático que deben estar obligatoriamente.
  3. Guardamos el archivo
  4. Abrimos navegador, copiamos ruta y probar url para comprobar que es correcto. 

Parámetros estáticos


Para construir la llamada correcta siempre tendremos que empezar por la base de nuestra URL y esta en el nuevo motor estaría formada por la dns del hotel + la página propiamente dicha del motor, quedando algo así:

https://demo.new.hotetec.com/
bet0


El parámetro bet0 es personalizable y cada hotel/cadena puede tener uno distinto. Se puede conseguir este parámetro realizando una búsqueda de disponibilidad en la web en cuestión y lo encontraremos justo después de la DNS.


A partir de aquí le podemos añadir a esta base los parámetros estáticos, que serían:


Parámetro

Descripción

Opcional

Valores

bookingEngine

Código del motor de reservas asociado a la página.

No

Numero

currency

Utilizado para asignar la divisa con la que queremos visualizar precios, se utiliza siempre y cuando la web tenga la divisa virtual activa. Recordar que siempre se pagará en la divisa original de la tarifa.

Se trabaja con códigos ISO
 

No

{EUR, GBP, USD,…}

language

Idioma en el que visualizaremos el contenido del motor. Deberán conocerse los idiomas en los que la web trabaja, puesto que sino las traducciones de etiquetas y ciertos contenidos pueden no estar hechos y por tanto no visualizarse bien en el proceso de reserva.

 Se trabaja con códigos ISO

No

{es, de, en,…}

system

Aquí se indica el sistema con el que vamos a realizar la disponibilidad, web o móvil, lo correcto sería que si la petición/landing se puede diferenciar se prepare una para la versión escritorio y otra para la versión móvil.

Se divide en dos básicamente Móvil y Escritorio.

No

{HPH/MPH}
 
Escritorio/Móvil

UTM’s

Contemplamos hasta 5 tipos de UTM’s distintos para hacer el seguimiento y la correcta segmentación de nuestras landings o redirecciones, estos serían:

utm_source

utm_medium

utm_campaign

utm_term

utm_content

Si

Texto




Parámetros de Disponibilidad


Esta sería la parte más complicada, pues se trata de un objeto en formato json con una estructura base que siempre tendremos que respetar.

A continuación se muestra un ejemplo básico, con todos los parámetros necesarios y a partir de aquí se trata de ir incorporando nodos y cambiando los valores según necesitemos.


{

  "dateFrom": "2022-09-05T00:00:00.000Z",

  "dateTo": "2022-09-10T00:00:00.000Z",

  "distribution": [

    {

      "id": 1,

      "person": [

        {

          "id": 1,

          "type": "Adult",

          "age": 30

        },

        {

          "id": 2,

          "type": "Adult",

          "age": 30

        }

      ]

    }

  ],

  "mealPlan": {"code":"HB"},

  "selectedItem": {

     "type": "Hotel",

    "code": "45501"

  },

  "promotionalCode":"prueba_david", 

  "logged": true,

  "execute": true,

  "fromLink": true

}

 

A partir de aquí veremos qué significa cada campo


Parámetro

Descripción

Opcional

Valor/Formato

dateFrom

Fecha de entrada de la petición de disponibilidad

No

Día + Hora
 (Año-Mes-Día+T(HH:MI:SS.CEN)

dateTo

Fecha de salida de la petición de disponibilidad

No

Día + Hora
 (Año-Mes-Día+T(HH:MI:SS.CEN)

distribution

Objeto en el que añadiremos toda la configuración de las distintas habitaciones y pax.

 

Lo correcto es no duplicar id’s de habitaciones, es decir, si añadimos  
El tipo de persona puede ser:
 

  • Adult (edad por defecto a poner 30)
  • Child (edad correcta para diferenciar niños de bebes)

Pueden añadirse cuantas habitaciones sean necesarias con sus respectivas distribuciones de personas.

No


 "id": 1,

      "person": [

        {

          "id": 1,

          "type": "Adult",

          "age": 30

        }

mealPlan

Objeto para poder indicar el régimen que queremos que salga seleccionado por defecto. 

Si

{BB, HB, FB, TI, …}

selectedItem

Indicamos por qué queremos filtrar la disponibilidad, podemos hacerlo por:

  • Hotel
  • Destino
  • Temática

     

Los valores asociados a cada una de estas tipologías dependerán de la configuración de cada hotel.

No

Type: {Hotel, Location, Thematic}

 cod: {solicitar valores al hotel}

 

*Todos los Hoteles
 type:{Hotel}

cod:{ALL}

promotionalCode

Lo utilizaremos para indicar si queremos lanzar la petición con un código promocional asociado

Si

Código_Promocional

logged

Nos permite indicar si queremos acceder directamente a tarifas de tipo “registro” o no.

No

{true/false}

execute

Marca la ejecución de la disponibilidad, siempre tiene que indicar “true”

No

{true}

fromLink

Indica que la petición viene de un link externo al motor en sí, en estos casos siempre deberá indicarse a “true”

No

{true}



Ejemplos de diferentes disponibilidades


A partir de aquí lo más fácil es mostrar diferentes ejemplos funcionales, recordad que basta con actualizar la fecha para que la petición vuelva a funcionar, en caso de que las utilizadas en el ejemplo hayan vencido ya.


Los HTML utilizados de muestra, tienen por un lado la capacidad de crear y abrirnos el deeplink para validar si es correcto y nos lleva donde queremos y por el otro nos dejan dicho deeplink en el portapapeles, por si queremos dejarlo configurado en cualquier lado. Es decir, nos sirven como generador al uso de deeplinks, simplemente tenemos que jugar con los valores que lleva indicados y obtendremos el resultado deseado. (Ver documento adjunto)


Matizar que los ejemplos se han hecho utilizando siempre el filtro de Hotel, entendiendo que es el más habitual en los diferentes casos, y un Hotel concreto de nuestra web de Demo. Pero que podría cambiarse por Destino o Temática como hemos visto en la definición.


Aquí tenemos las URLs con diferentes tipos de peticiones que provienen de los HTML mencionados anteriormente.



FAQ's

  • Si el cliente no va a usar PROMOCODES será necesario eliminar la siguiente información. Para que el parámetro no llegue como null. 


  • Si se hace cambio de motor, se deberán tener en cuenta que los deeplinks pueden fallar. 

https://demo.new.hotetec.com/bet0


  • Adjuntamos archivo html con parámetro de ejemplo: