Mensaje de las promociones

Descripción general

El mensaje Promotions define reglas para las tasas de descuento con OTA_HotelRateAmountNotifRQ. Para cada tarifa, se evalúan las promociones definidas y se aplica el mayor descuento permitido. Este tipo de mensaje es opcional y solo debes definir promociones si se usan en tu sistema para aplicar descuentos en las tarifas.

Puedes combinar promociones y aplicarlas a diferentes atributos del usuario, como tipos de dispositivos (móvil, tablet, computadora de escritorio) y códigos de país.

Para ver ejemplos de diversas situaciones relacionadas con las promociones, consulta la sección de instrucciones.

En las siguientes secciones, se explican las pautas generales, un ejemplo básico y situaciones prácticas para que comiences a agregar y actualizar promociones.

Lineamientos

En esta sección, se describen los lineamientos comunes y las instrucciones especiales para configurar promociones.

Usa los siguientes lineamientos para las promociones:

Acciones

Borrar
Usa una acción delete en el elemento <Promotion> para borrar una sola promoción por su ID.
Superposición
Usa una acción overlay en el elemento <HotelPromotions> para reemplazar todas las promociones de una propiedad.
Delta
Si no se especifica ninguna acción, se agregan o reemplazan todas las promociones especificadas en <HotelPromotions>. Si nunca se agregó una promoción con ese ID o se borró, se agregará la promoción. Si existe una promoción con ese ID, se reemplazará con la nueva definición.

General

  • Puede haber una o varias promociones para cada propiedad, y cada promoción tiene un conjunto de condiciones. Esa promoción solo se puede aplicar si se cumplen las condiciones.

  • Las promociones se aplican a la tarifa del itinerario. No es posible establecer un descuento máximo por ocupante.

  • Si quieres que una promoción solo se aplique a una fecha, un tipo de habitación o un plan de tarifas específicos, indícalo en las condiciones de la promoción. Si la promoción no se aplica a una fecha, un tipo de habitación o un plan de tarifas específicos, no es necesario establecerlos.

  • Cada promoción está vinculada a una propiedad específica. Si usas la misma promoción para varias propiedades, debes enviarla por separado para cada una de ellas. Para especificar el identificador de tu propiedad, usa el atributo hotel_id del elemento <HotelPromotions>.

  • Puedes incluir hasta 99 promociones. Comunícate con tu TAM de Google si necesitas incluir más de lo indicado.

  • Usa el elemento <Stacking> para especificar cómo se pueden combinar las promociones. De forma predeterminada, Google usa el tipo de apilamiento base, lo que significa que se selecciona y aplica primero la mejor promoción básica apta, antes que otras promociones. Ten en cuenta que base solo se puede combinar con second o any, y no se puede combinar con otro base o none.

  • Incluso si hay varias promociones que se pueden aplicar juntas, es posible que no se use ese conjunto si hay otra promoción única o conjunto de promociones que ofrezcan un descuento mayor. La promoción (combinación) con el mayor descuento se aplica a la reserva cuando hay varias promociones (combinaciones) aptas.

  • Envía una actualización del mensaje de promociones cada vez que se produzcan cambios que afecten tus promociones.

La mejor promoción (o pila de promociones) se aplica al importe de AmountAfterTax. Si solo se especifica AmountBeforeTax, las promociones se aplican a AmountBeforeTax.

Ejemplo

En esta sección, se proporciona un ejemplo básico de un mensaje de Promociones con elementos obligatorios y opcionales. Una vez que hayas preparado tu archivo, envíalo a Google a través de un mensaje POST a este endpoint:

https://www.google.com/travel/hotels/uploads/promotions

Para obtener más información sobre cómo enviar el mensaje con POST o push, consulta Envío de mensajes con push.

Para el atributo hotel_id de <HotelPromotions>, usa el ID único del hotel que usaste en tu sistema para identificar la propiedad. Este valor debe coincidir con el ID del hotel especificado con <id> en el elemento <listing> del feed de lista de hoteles. La coherencia con tu sistema es fundamental para garantizar que Google muestre tus datos correctamente.

UserCountry se usa para enumerar las ubicaciones del usuario (países) que son aptas para la promoción. Si se especifica, solo los usuarios de los países enumerados recibirán la tarifa con descuento.

En este ejemplo, se muestra cómo establecer un descuento del 15% para una estadía prolongada para los usuarios de Italia y Estados Unidos:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123_abc"
            timestamp="2022-05-30T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <UserCountries>
        <Country code="US"/>
        <Country code="IT"/>
      </UserCountries>
    </Promotion>
  </HotelPromotions>
</Promotions>

Para obtener más ejemplos, consulta Ejemplos de promociones.

Instructivos

En esta sección, se proporcionan soluciones para las situaciones que puedes encontrar cuando configuras promociones.

Situación 1: Cómo agregar una promoción de descuento para estadías prolongadas

Descripción

Quieres ofrecer noches con descuento en ciertos días de una estadía prolongada.

Solución

Usa el parámetro de configuración FreeNights para personalizar el tipo de descuento que se aplica según la cantidad de noches de estadía.

Muestra

En este ejemplo, se muestra cómo agregar un descuento del 20% para dos noches por cada 7 noches de estadía en el rango especificado de fechas de reserva. En un itinerario de 15 noches, se aplica un descuento del 20% a un total de 4 noches.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-05T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-02-01" end="2022-06-30"/>
      </BookingDates>
      <Discount>
        <FreeNights stay_nights="7"
                    discount_nights="2"
                    discount_percentage="20"
                    night_selection="cheapest"
                    repeats="true"/>
      </Discount>
    </Promotion>
  </HotelPromotions>
</Promotions>

Situación 2: Cómo configurar los tipos de dispositivos

Configuras devices para especificar los dispositivos del usuario que son aptos para la promoción. Si se especifica, solo se les ofrecerá la tarifa con descuento a los usuarios de los dispositivos enumerados.

Descripción

Quieres especificar qué tipo de dispositivo del usuario es apto para la promoción.

Solución

Establece el tipo de dispositivo en uno o más de los siguientes valores: desktop, tablet o mobile.

Muestra

En el siguiente ejemplo, se muestra cómo especificar un descuento del 25% para los usuarios de dispositivos móviles y tablets:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="25"/>
        <Devices>
          <Device type="mobile"/>
          <Device type="tablet"/>
        </Devices>
    </Promotion>
  </HotelPromotions>
</Promotions>

Situación 3: Cómo reemplazar promociones antiguas por promociones nuevas

Descripción

El conjunto actual de promociones de una propiedad está desactualizado o es incorrecto, y debe reemplazarse por un conjunto completamente nuevo.

Solución

Usa la acción overlay para reemplazar las promociones.

Muestra

En el siguiente ejemplo, se muestran los dos descuentos originales del 20% y el 30% para la propiedad.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="20"/>
    </Promotion>
    <Promotion id="2">
      <BookingDates>
        <DateRange start="2022-08-01" end="2022-08-31"/>
      </BookingDates>
      <Discount percentage="30"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Luego, este ejemplo muestra cómo usar overlay para reemplazar las dos promociones existentes por una sola promoción con un 15% de descuento para la propiedad.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-25T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="15"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Situación 4: Cómo quitar una o todas las promociones

Descripción

Quieres quitar una o todas las promociones (sin reemplazarlas) porque la propiedad quitó todas sus promociones sin establecer nuevas, o bien cometiste un error y debes corregirlo.

Solución

Usa la acción delete si solo deseas borrar promociones individuales específicas para una propiedad y usa la acción overlay (no delete) para quitar todas las promociones existentes sin reemplazarlas.

Para obtener detalles sobre cómo reemplazar promociones con overlay, consulta el escenario 3.

Ejemplos

En el siguiente ejemplo, se muestra cómo borrar solo una promoción de una propiedad:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1" action="delete"/>
  </HotelPromotions>
</Promotions>

En este ejemplo, se muestra cómo quitar todas las promociones de una propiedad sin reemplazarlas:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay"/>
</Promotions>

Situación 5: Cómo combinar promociones

El apilamiento especifica cómo se pueden combinar las promociones. Si no se especifica, se supone que type es base, lo que significa que se selecciona y aplica primero la mejor promoción base apta, antes que otras promociones. Cuando el atributo type de Stacking es any, se puede combinar con cualquier otra promoción.

Descripción

Quieres que el usuario tenga la opción de usar varias promociones al mismo tiempo para la misma propiedad.

Solución

Usa la combinación para establecer varios descuentos por propiedad. Una pila puede tener, como máximo, un base y un second, pero una cantidad ilimitada de any. Además, any se puede combinar con los otros tipos, excepto con none.

Muestra

En este ejemplo, se muestra cómo apilar los tipos de apilamiento base, second y any. Para un descuento combinado del 15%, el 25% y el 10%, un precio de USD 100 equivale a un total de USD 57.38 (100 × 0 .85 × 0 .75 × 0 .9).

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <Stacking type="base"/>
    </Promotion>
    <Promotion id="2">
      <Discount percentage="25"/>
      <Stacking type="second"/>
    </Promotion>
    <Promotion id="3">
      <Discount percentage="10"/>
      <Stacking type="any"/>
    </Promotion>
    <Promotion id="4">
      <Discount percentage="40"/>
      <Stacking type="none"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Ten en cuenta que el descuento combinado de las promociones acumulativas 1 a 3 es mejor que el descuento de la promoción 4. La promoción 4 no se puede combinar con otras promociones debido a su tipo de acumulación (none). Si la promoción 4 tuviera un descuento del 43% o más, se usaría en lugar de la combinación de las promociones 1 a 3.