Califica el mensaje

Descripción general

El mensaje Rate (OTA_HotelRateAmountNotifRQ) define las tarifas de ocupación por noche para cada combinación de tipo de habitación y plan de tarifas en rangos de fechas específicos. Como parte del mensaje de tarifa, Google admite los precios basados en la ocupación, lo que permite especificar diferentes precios por noche según la cantidad máxima de ocupantes previstos.

En las siguientes secciones, se describen los lineamientos generales, un ejemplo básico y situaciones prácticas para que comiences a agregar y actualizar tarifas, y a enviar un mensaje de Rate.

Comportamiento del porcentaje de coincidencias

A medida que los usuarios soliciten ocupaciones específicas, la tarifa que verán dependerá de cómo definas los precios en tu mensaje de Rate. En esta sección, se explica cómo se correlacionan estas solicitudes de los usuarios con tus tarifas según la ocupación de la solicitud y las tarifas que definas.

Principios clave

  • Una tarifa definida para una ocupación específica se aplica a todas las ocupaciones menores, a menos que se defina lo contrario.

  • Las solicitudes de ocupaciones superiores a las definidas se consideran imposibles.

  • Los precios basados en la ocupación se aplican a los modelos de precios por fecha y por estadía que se describen a continuación. Esto significa que puedes especificar tarifas para cada ocupación. Si no existe una tarifa para una ocupación específica, se usa la tarifa para la siguiente ocupación más alta. También puedes definir cargos para huéspedes y niños adicionales con AdditionalGuestAmounts o ExtraGuestCharges, que se aplican hasta la capacidad definida para una habitación.

Beneficios y ejemplos

Eficiencia

En el caso de varias ocupaciones con el mismo importe de tarifa, no es necesario que establezcas una tarifa para cada ocupación. Puedes simplificar tus mensajes configurando solo el valor de ocupación más alto que admiten el tipo de habitación y el plan de tarifas. Los usuarios verán esa tarifa para cada ocupación que sea menor o igual que el valor que establezcas.

Ejemplo: Las tarifas de un tipo de habitación y un plan de tarifas son las mismas para las ocupaciones de uno a cuatro. Usa el mensaje Rate para establecer una tarifa para una ocupación máxima de 4 personas. Los usuarios que busquen ocupación individual, doble y triple verán la misma tarifa. Los usuarios que busquen 5 o más no verán tarifas.

Control

Se pueden proporcionar explícitamente tarifas distintas para ocupaciones alternativas. Envía una tarifa diferente para cada valor de ocupación si deseas tener más control sobre la forma en que Google relaciona las solicitudes con las tarifas de ocupación.

Ejemplo: Si se definen tarifas para ocupaciones de 3 y 1, las búsquedas de ocupación individual mostrarán la tarifa individual, las búsquedas de ocupación doble mostrarán la tarifa de ocupación triple y los usuarios que busquen ocupaciones de 4 o más no verán tarifas.

Para obtener más ejemplos de diversas situaciones relacionadas con las tarifas, consulta Procedimientos.

Elementos obligatorios y opcionales

La referencia de XML proporciona descripciones de los elementos obligatorios y opcionales. Para obtener detalles sobre los atributos y los elementos secundarios, consulta Atributos y elementos de tarifas.

Sintaxis y esquemas

Usa el ejemplo de sintaxis de tarifas como referencia cuando crees el mensaje de tarifa para asegurarte de que sigues el formato correcto.

Puedes usar una herramienta XML de terceros, como xmllint, para validar tus feeds con los esquemas publicados antes de enviarlos a Google. Para obtener información sobre el esquema del mensaje de tarifa, consulta Esquemas de Anuncios de hoteles.

Modelos de precios

Precios por fecha

Este es el modelo de precios estándar que se usa para la mayoría de las propiedades. El modelo de precios per-date se basa en el establecimiento de tarifas que se suman en las fechas de la estadía para obtener un precio total. En este modelo, todas las tarifas que se encuentran bajo un elemento Rate se interpretan como aplicables a un rango de fechas de estadía especificado en <StatusApplicationControl>.

Precios basados en la duración de la estadía

El modelo de precios basado en la duración de la estadía se basa en las tarifas establecidas para una combinación de fecha de llegada y duración de la estadía. Las tarifas especificadas en el modelo de precios basado en la duración de la estadía son por día. Por ejemplo, si envías una tarifa de USD 100 para una estadía de 3 noches, el precio total se calcula como 3 USD 100=USD 300.

Puedes usar el modelo de precios basado en la duración de la estadía especificando RatePlanType="26" en los elementos StatusApplicationControl. También debes establecer los atributos RateTimeUnit y UnitMultiplier en los elementos Rate de tu XML. Esto hace que todas las tarifas del elemento Rate determinado se apliquen a las estadías definidas por las fechas de llegada especificadas en <StatusApplicationControl> y el valor de la duración de la estadía especificado para UnitMultiplier.

Puedes usar modelos de precios basados en la fecha y en la estadía en una sola cuenta. Sin embargo, cada propiedad solo debe usar un modelo de precios. Ten en cuenta los siguientes puntos cuando implementes precios basados en la duración de la estadía:

  • Las tarifas para diferentes duraciones de la estadía no se combinan cuando se usan precios basados en la duración de la estadía. Por ejemplo, una tarifa de LOS de 3 no se combina con una de 1 para fijar el precio de una tarifa de LOS de 4. La tarifa de 4 noches de estadía se debe especificar de forma explícita.
  • La tarifa de 1 noche en la fijación de precios basada en la duración de la estadía no se usa como tarifa de noche individual en la fijación de precios por fecha.
  • Cada propiedad solo debe usar precios basados en la duración de la estadía o precios por fecha, según cómo se representen las tarifas en tu sistema.

Para habilitar los precios basados en la duración de la estadía en tu cuenta, realiza la solicitud a través de tu TAM o comunícate con nosotros.

Lineamientos o acciones

Precios por fecha

Delta: Agrega o actualiza las tarifas por ocupación solo para las combinaciones especificadas de tipo de habitación, plan de tarifas y fechas de estadía que se indican en <StatusApplicationControl>.

  • Las actualizaciones de tarifas usan la acción Delta de forma predeterminada.
  • Una actualización de Delta no altera las tarifas almacenadas previamente para otras ocupaciones. Por ejemplo, si especificaste tarifas para habitaciones individuales y dobles, y envías una actualización de tarifa Delta para la habitación individual, la tarifa de la habitación doble no se modificará.

Overlay: Borra todas las tarifas existentes por ocupación para el tipo de habitación, el plan de tarifas y las fechas especificadas en <StatusApplicationControl> y las reemplaza por tarifas nuevas. Por ejemplo, si especificaste tarifas para habitaciones con ocupación individual y doble, y envías una actualización de Overlay para la habitación con ocupación individual, Google quitará todas las tarifas anteriores (tanto para ocupación individual como doble), y solo permanecerá la tarifa para ocupación individual después de la actualización.

Remove: Borra todas las tarifas existentes por ocupación para el tipo de habitación, el plan de tarifas y las fechas especificadas en <StatusApplicationControl>.

Precios basados en la duración de la estadía

Delta: Agrega o actualiza las tarifas por valor de LOS solo para las combinaciones especificadas de tipo de habitación, plan de tarifas y fechas de entrada que se indican en <StatusApplicationControl>. Reemplaza todas las tarifas por ocupación asociadas con los valores de LOS actualizados.

  • Las actualizaciones de tarifas usan la acción Delta de forma predeterminada.
  • Una actualización de Delta no altera las tarifas almacenadas previamente para otras duraciones de la estadía. Por ejemplo, si especificaste tarifas para la estadía 1 y 2, y envías una actualización de tarifa Delta para la estadía 1, las tarifas por ocupación de la estadía 2 no se modifican.
  • Una actualización de Delta reemplaza todas las tarifas por ocupación almacenadas anteriormente para la duración de la estadía determinada. Por ejemplo, si especificaste tarifas para una y dos personas para la estadía de 1 noche y envías una actualización de la tarifa Delta para la estadía de 1 noche con solo una tarifa para una persona, se quitará la tarifa para dos personas.

Overlay: Borra todas las tarifas existentes por ocupación para la estadía, el tipo de habitación, el plan de tarifas y las fechas de entrada especificados en <StatusApplicationControl> y las reemplaza por tarifas nuevas. Por ejemplo, si especificaste tarifas para la estadía 1 y 2, y envías una actualización de Overlay para la estadía 1, Google quitará todas las tarifas anteriores (tanto la de la estadía 1 como la de la estadía 2), y solo permanecerá la tarifa de la estadía 1 después de la actualización.

Remove: Borra todas las tarifas existentes por ocupación para todas las duraciones de estadía del tipo de habitación, el plan de tarifas y las fechas de ingreso especificados en <StatusApplicationControl>.

Relacionadas con impuestos

Si los impuestos y las comisiones son simples, el importe total se puede especificar con AmountAfterTax. Los impuestos complejos, como los impuestos y las tarifas que se aplican por estadía (en lugar de por noche), no se pueden representar en AmountAfterTax.

En general, Google recomienda usar TaxFeeInfo en lugar de AmountAfterTax.

Si es posible, debes incluir AmountBeforeTax (incluso si especificas AmountAfterTax), ya que algunas configuraciones regionales (por ejemplo, EE.UU.) muestran el precio antes de impuestos de forma predeterminada.

Se deben incluir todos los impuestos y las tarifas que debe pagar el usuario (IVA, impuesto de estadía, tarifas de limpieza, impuesto municipal, etc.), incluso si no se pagan en el momento de la reserva o no se pagan directamente al establecimiento.

Ejemplo

En esta sección, se proporciona un ejemplo básico de un mensaje de Rate con elementos obligatorios y opcionales. Después de preparar el archivo, debes enviarlo a Google con un mensaje POST al siguiente extremo: https://www.google.com/travel/hotels/uploads/property_data

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

En el caso de HotelCode, 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. Para <PackageID> y <RoomID>, usa los mismos IDs que usas en tu sistema para los planes de tarifas y los tipos de habitación (respectivamente). La coherencia con tu sistema es fundamental para garantizar que Google muestre correctamente tus precios y datos.

En este ejemplo, se muestra cómo establecer tarifas con una acción Delta:

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2022-02-25T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta">
  <POS><Source><RequestorID ID="partner_key" /></Source></POS>
  <RateAmountMessages HotelCode="HotelID">
    <RateAmountMessage>
      <StatusApplicationControl Start="2022-12-01"
                                End="2022-12-31"
                                InvTypeCode="RoomID"
                                RatePlanCode="PackageID" />
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt NumberOfGuests="1" CurrencyCode="USD" AmountBeforeTax="XXX.XX" />
            <BaseByGuestAmt NumberOfGuests="2" CurrencyCode="USD" AmountBeforeTax="XXX.XX" />
            <BaseByGuestAmt NumberOfGuests="3" CurrencyCode="USD" AmountBeforeTax="XXX.XX" />
            <BaseByGuestAmt NumberOfGuests="4" CurrencyCode="USD" AmountBeforeTax="XXX.XX" />
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
</OTA_HotelRateAmountNotifRQ>

Instructivos

En esta sección, se proporcionan soluciones para las situaciones que puedes encontrar cuando envías mensajes de tarifas.

Para ver ejemplos de cómo agregar, quitar y actualizar tarifas, consulta Ejemplos de tarifas.

Situación 1: Cómo cambiar los precios por ocupación

Descripción

Anteriormente, las tarifas por noche se definían solo para ocupación doble (que también se aplica a la ocupación individual), pero ahora hay una tarifa más económica para la ocupación individual.

Solución

Envía la nueva tasa de ocupación 1 con la actualización predeterminada Delta con alcance. Este nuevo valor no afecta la tasa de ocupación 2.

Situación 2: Cómo reemplazar las tarifas por ocupación de una propiedad

Descripción

Anteriormente, definiste tarifas para ocupaciones de 1 a 4, pero ahora solo son válidas las ocupaciones 1 y 2.

Solución

Usa NotifType="Overlay" para reemplazar todas las tasas de ocupación de una propiedad, un tipo de habitación, un plan de tarifas y una o varias fechas determinados. En este caso, la acción Overlay mostraría las tarifas para las ocupaciones 1 y 2.

Situación 3: Cómo establecer la misma tarifa para varias ocupaciones

Descripción

Una tarifa para una determinada ocupación se puede vender a un grupo con menos personas. En este caso, puedes simplificar tus mensajes enviando solo la actualización de la tarifa para la ocupación máxima aplicable.

Solución

Si tienes el mismo precio para varias ocupaciones, establece el valor de ocupación más alto que admitan el tipo de habitación y el plan de tarifas, y se usará automáticamente ese valor para ocupaciones más bajas. Es decir, no es necesario repetir la misma tarifa por noche para las ocupaciones de 1 a 6 si todas son iguales; solo configúrala para 6.