OTA_HotelRateAmountNotifRQ

Solicitudes

Sintaxis

El mensaje OTA_HotelRateAmountNotifRQ usa la siguiente sintaxis:

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="message_ID"
                            TimeStamp="timestamp"
                            Version="3.0"
                            NotifType="[Overlay|Delta|Remove]"
                            NotifScopeType="[ProductRate]">
  <POS>
    <Source>
      <RequestorID ID="partner_key"/>
    </Source>
  </POS>
  <RateAmountMessages HotelCode="HotelID">
    <RateAmountMessage>
      <StatusApplicationControl Start="YYYY-MM-DD"
                                End="YYYY-MM-DD"
                                Mon="boolean_value"
                                Tue="boolean_value"
                                Weds="boolean_value"
                                Thur="boolean_value"
                                Fri="boolean_value"
                                Sat="boolean_value"
                                Sun="boolean_value"
                                InvTypeCode="RoomID"
                                RatePlanCode="PackageID"
                                RatePlanType="[26]" />
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="float"
                            AmountAfterTax="float"
                            CurrencyCode="currency"
                            NumberOfGuests="integer"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="float"
                                   AgeQualifyingCode="[10|8]"
                                   MaxAge="integer"/>
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Elementos y atributos

El mensaje OTA_HotelRateAmountNotifRQ tiene los siguientes elementos y atributos:

Elemento / @Attribute Casos Tipo Descripción
OTA_HotelRateAmountNotifRQ 1 Complex element Es el elemento raíz de un mensaje de tarifas.
OTA_HotelRateAmountNotifRQ / @xmlns 0..1 string (URI) El espacio de nombres XML.
OTA_HotelRateAmountNotifRQ / @EchoToken 1 string Un identificador único para este mensaje de solicitud. Se muestra este valor en el mensaje de respuesta. Los caracteres permitidos son a-z, A-Z, 0-9, _ (underscore) y - (dash).
OTA_HotelRateAmountNotifRQ / @TimeStamp 1 DateTime La fecha y hora de creación de este mensaje.
OTA_HotelRateAmountNotifRQ / @Version 1 decimal La versión del mensaje de OpenTravel.
OTA_HotelRateAmountNotifRQ / @NotifType 0..1 enum

El tipo de notificación que se aplicará a cada <RateAmountMessage>

Estos son los valores válidos:

Para entender cómo funcionan estos atributos, consulta los ejemplos.

  • Overlay: Borrar todos tarifas por ocupación para el tipo de habitación, el plan de tarifas y las fechas especificadas en <StatusApplicationControl> y reemplázalas por tarifas nuevas.
  • Remove: Borrar todos los existentes tarifas por ocupación para el tipo de habitación, el plan de tarifas y las fechas especificadas en <StatusApplicationControl>.
  • Delta: (el valor predeterminado si es NotifType (no especificada) Agrega o actualiza las tarifas por ocupación existentes de el tipo de habitación, el plan de tarifas y las fechas especificadas en <StatusApplicationControl>
OTA_HotelRateAmountNotifRQ / @NotifScopeType 0..1 enum

El alcance de NotifType que se aplicará a cada <RateAmountMessage>

Estos son los valores válidos:

  • ProductRate: (el valor predeterminado si es NotifScopeType no especificado) se aplica el NotifType a productos: combinaciones del tipo de habitación (InvTypeCode) y el plan de tarifas (RatePlanCode).
OTA_HotelRateAmountNotifRQ / POS 0..1 POS Un contenedor para especificar la cuenta de socio para este mensaje (se suele usar si el backend proporciona feeds de precios para varias cuentas de socios).
OTA_HotelRateAmountNotifRQ / POS / Source 1 Source Es obligatorio si <POS> está presente. Un contenedor para la <RequestorID>
OTA_HotelRateAmountNotifRQ / POS / RequestorID 1 RequestorID Es obligatorio si <POS> está presente. Define el socio de servicio predeterminada.
OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID 1 string La cuenta de socio de este mensaje. Este valor de cadena es el "Clave de socio" valor que aparece en el Página Configuración de la cuenta en Hotel Center.

Nota: Si tienes un backend que proporciona feeds para varios cuentas, este valor debe coincidir con el partner el valor del atributo de tu mensaje de transacción (datos de la propiedad) y el ID en el campo <RequestorID> elemento de tu <OTA_HotelAvailNotifRQ> mensaje para la misma de servicio predeterminada.

OTA_HotelRateAmountNotifRQ / RateAmountMessages 1 RateAmountMessages Una colección de elementos <RateAmountMessage> que definir tarifas.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode 1 string Es el identificador único de la propiedad. Este valor debe coincidir con el ID de hotel especificado con <id> en el elemento <listing> del hotel Feed de lista El ID de hotel también aparece en Hotel Center.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage 1..n RateAmountMessage Un contenedor para establecer precios de una tarifa de habitación (un tipo de habitación y una tarifa) combinación de plan durante un período determinado).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl 1 StatusApplicationControl Define el período, así como los identificadores del tipo de habitación (InvTypeCode) y plan de tarifas (RatePlanCode).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start 1 Date La fecha de inicio (según la zona horaria de la propiedad), inclusive, de el período.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End 1 Date La fecha de finalización (según la zona horaria de la propiedad), inclusive, de los durante un período específico. Debe ser igual o mayor que el valor start. Si start y end son iguales, se aplica la actualización hasta esa fecha. Ten en cuenta que Google admite datos de hasta tres años.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente lunes.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente martes.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente los miércoles.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente Jueves.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente los viernes.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente Sábados.

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun 0..1 boolean Configúralo en true o 1 para incluirlos explícitamente Domingos

Si la estableces como true, otros días de la semana que no estén establecidos de forma explícita en true se excluyen (en efecto, son se filtró a partir de las fechas dentro de Start y End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode 1 string Es el identificador único del inventario (tipo de habitación). Este valor se asigna a <RoomID> en un mensaje de transacción (datos de propiedad).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode 1 string Es un identificador único para el plan de tarifas. Este identificador se asigna <PackageID> en una transacción (datos de propiedad) mensaje. El plan de tarifas se define con más detalle y se denomina en <StatusApplicationControl> en ambas <OTA_HotelRateAmountNotifRQ> y <OTA_HotelAvailNotifRQ> mensajes.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType 0..1 string Un identificador que indica el tipo de modelo de precios de ARI que se aplica a esta actualización de precios. Esto solo debe especificarse mediante un de 26 cuando se usa el modelo de precios basado en la LOS Exclusión de este atributo indica que se trata de un precio por fecha. actualización.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates 0..1 Rates Contenedor para una colección de elementos <Rate>. Si NotifType es "Remove", este elemento no debe que se debe especificar. De lo contrario, este elemento debe especificarse exactamente una vez.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate 1 Rate Contenedor para una colección de <BaseByGuestAmts> o de terceros.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit 0..1 String Es la unidad que especifica la duración de la estadía. La única plataforma valor es "Day", lo que significa que la duración de la estadía será de especificada en días.

Para usar precios basados en la pérdida de datos, RateTimeUnit y UnitMultiplier deben ser especificada. De lo contrario, no debe especificarse ninguno.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier 0..1 Integer La cantidad de RateTimeUnits que componen la longitud de se mantendrá por esta tarifa.

Por ejemplo, si el valor de RateTimeUnits es "Day", se muestra un UnitMultiplier de 5 indica que las tarifas especificadas en este objeto Rate se aplican a todas las noches de una estadía de 5 noches.

Las tasas de ocupación especificadas en este Rate el objeto se multiplicará por la UnitMultiplier (duración de la estadía) para llegar al precio total de la estadía.

Para usar precios basados en la pérdida de datos, RateTimeUnit y UnitMultiplier deben ser especificada. De lo contrario, no debe especificarse ninguno.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts 1 BaseByGuestAmts Contenedor de un conjunto de cargos base.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt 1..n BaseByGuestAmt Especifica los precios de las habitaciones en una moneda determinada. El precio puede ser por ocupación con varias <BaseByGuestAmt> elementos, cada uno con un valor diferente para NumberOfGuests. De lo contrario, el precio se aplicará a una cantidad máxima de ocupantes. definido por NumberOfGuests
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax 0..1 float

El precio diario de la tarifa de la habitación sin impuestos ni tarifas.

Tanto AmountBeforeTax como AmountAfterTax. Si No se especifica AmountBeforeTax, Se debe especificar AmountAfterTax. Si AmountBeforeTax se especifica y No se especifica AmountAfterTax, luego los impuestos y las tarifas debe especificarse en un mensaje <TaxFeeInfo>.

Si usas promociones, el el descuento se aplica a AmountBeforeTax; porcentaje también se aplican descuentos a AmountAfterTax. Desde este no funciona con algunas estructuras fiscales, solo recomendamos que especifica AmountBeforeTax aquí y usa <TaxFeeInfo> para especificar los impuestos y las tarifas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax 0..1 float El precio diario de la tarifa de la habitación después de incluir los impuestos aplicables y tarifas. Si se especifica AmountAfterTax, sepárelos por propiedad. No es necesario enviar <TaxFeeInfo> mensajes. Esta el atributo se puede usar junto con AmountBeforeTax para proporcionar las tarifas base y totales que se pueden mostrar a los usuarios regiones determinadas.

Advertencia: Si utilizas promociones, te recomendamos recomendar el uso de AmountAfterTax importes. Si deseas usar descuentos, especifica los impuestos y las tarifas mediante usando el mensaje <TaxFeeInfo>. Tus descuentos y, luego, se aplicará a importes de AmountBeforeTax.

Nota: Si AmountBeforeTax no se especifica, AmountAfterTax debe especificarse.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode 1 enum Es el código de caracteres alfa ISO 4217 (3) para una unidad monetaria específica.

Consulta la lista de aplicaciones compatibles monedas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests 0..1 integer Cantidad máxima de huéspedes que pueden alojarse con esta tarifa. El valor predeterminado es 2 invitados si no se proporcionan.

Ten en cuenta que si <AdditionalGuestAmounts> contiene cargos por niños, solo hace referencia a NumberOfGuests a adultos. Si <AdditionalGuestAmounts> no se especifica o no incluye cargos por niños, NumberOfGuests se refiere a la cantidad total de ocupantes. incluidos adultos y niños.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts 0..1 AdditionalGuestAmounts Contenedor para un cobro de cargos por huéspedes adicionales.

Esta sintaxis es útil si se aplican tarifas adicionales para huéspedes o para niños. cambian según la fecha. Considera usar la configuración ExtraGuestCharges si estas cantidades se pueden definir de forma estática en la propiedad a nivel de organización.

Se aplican importes de huéspedes adicionales de la siguiente manera:
  • Se aplican sobre la tarifa de ocupación base. La base La tasa de ocupación es la tasa de ocupación más alta, especificada en <BaseByGuestAmts>, que es menor o igual que la cantidad de adultos en una búsqueda de usuarios.
  • Se aplican siempre que la ocupación en una búsqueda de usuarios sea dentro de la capacidad de la sala.
  • <AdditionalGuestAmounts> reemplazar siempre importes adicionales especificados anteriormente con otros nuevos cuando NotifType es Delta o Superposición.
  • Es posible que se envíe <AdditionalGuestAmounts> independientemente de las tarifas base solo cuando NotifType sea Delta. <BaseByGuestAmts>debe especificarse cuando NotifType sea Overlay.
  • Un elemento <AdditionalGuestAmounts> vacío con El valor de NotifType establecido en Delta quita los existentes importes adicionales sin afectar las tarifas base.
  • Se aplican usando la moneda especificada en <BaseByGuestAmt>

Por ejemplo, supongamos que se especifican las tarifas base para 1 y 2. los adultos.

  • Si un usuario busca 3 adultos, la tarifa de ocupación doble elegiremos como tarifa base y un importe de huéspedes adicional por 1 “adulto” se aplicaría sobre él.
  • Si el usuario busca 1 adulto y 2 niños, el único de ocupación de tu propiedad se seleccionará como la tarifa base y se aplicarían cantidades sobre él, para los dos hijos.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount 0..n AdditionalGuestAmount Especifica los precios según el tipo de huésped, especificado mediante AgeQualifyingCode y, si corresponde, la edad del invitado especificadas a través de MaxAge.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode 1 enum Define el tipo de invitado adicional, ya sea adulto o niño. Válida estas son las opciones:
  • 10: Adulto.
  • 8: publicador secundario.

AgeQualifyingCode se puede establecer como 10 por un valor de la mayoría de un elemento AdditionalGuestAmount.

MaxAge debe especificarse cuando AgeQualifyingCode es 8.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge 0..1 integer MaxAge debe especificarse cuando AgeQualifyingCode es 8. No debe ser se especifica cuando AgeQualifyingCode es 10.

MaxAge debe ser un número entero entre 0 y 17.

Si especificas un valor de 0, se inhabilitan los ocupantes secundarios.

Los valores superiores a 17 se considerarán como el máximo valor aceptado de 17.

Varios rangos de edad infantiles se pueden especificar mediante diferentes Elementos AdditionalGuestAmount. Los rangos de edad deben ser contiguas y no superpuestas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount 1 float Importe sin impuestos ni tarifas que se agrega a la tarifa base de cada invitado adicional.

Impuestos y tarifas que dependen de la propiedad de los ocupantes las edades deben especificarse mediante el elemento <AgeBrackets> en un <TaxFeeInfo> mensaje.

Ejemplos

En esta sección, se proporcionan ejemplos de código en los que se destaca cómo realizar las siguientes acciones:

Cuando estableces los valores add, overlay o remove, los períodos pueden iguales o diferentes según tus objetivos. Por ejemplo, puedes usar overlay para establecer solo unas pocas semanas para las festividades de diciembre en lugar de la rango completo configurado en “Agregar tarifa” mensaje. Esto reemplazará la ocupación de rendimiento solo para este período.

Precios por fecha

Para una habitación y un plan de tarifas determinados, puede haber un máximo de 50 tarifas de ocupación por propiedad. Si las tarifas son iguales para todas las ocupaciones, solo debes enviar el ocupaciones máximas con el precio requerido. Al hacer esto, Google infiere que las ocupaciones más bajas también recibe la misma tarifa base.

Configura las tarifas base y las tarifas totales

Ejemplo 1

Tarifa base (sin impuestos ni tarifas) para la ocupación predeterminada (doble). En este los impuestos y las tarifas de la propiedad deben definirse con un <TaxFeeInfo> mensaje. La tarifa base será mayor para los usuarios que realizan búsquedas desde ciertas regiones.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Ejemplo 2

Tarifa base y total para la ocupación predeterminada (doble). En este modelo, los impuestos y las tarifas no deben definirse por separado usando <TaxFeeInfo> mensajes nuevos. La tarifa base será más prominente para los usuarios que realicen búsquedas desde regiones determinadas.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            AmountAfterTax="110.00"
                            CurrencyCode="USD"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Ejemplo 3

Tarifa total (con impuestos y tarifas) para varias ocupaciones. En este modelo, los impuestos y las tarifas no deben definirse por separado usando <TaxFeeInfo> mensajes nuevos.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountAfterTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountAfterTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
            <BaseByGuestAmt AmountAfterTax="120.00"
                            CurrencyCode="USD"
                            NumberOfGuests="3"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Ejemplo 4

Tarifas base y total para varios tipos de habitaciones y planes de tarifas en diferentes períodos.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            AmountAfterTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-01"
                                End="2020-05-31"
                                InvTypeCode="RoomID_2"
                                RatePlanCode="PackageID_2"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            AmountAfterTax="220.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
Agrega, superpón y quita tarifas

Hay un límite de 5,000 productos: tipo de habitación y paquete se combinan para cada propiedad. Usa la notificación Overlay o Remove. para quitar los productos definidos anteriormente.

Agregar tarifas

Configura NotifType como Delta para agregar tarifas por ocupación RoomID_1 y PackageID_1 entre el 20/10/2021 y el 31/12/2021. Ten en cuenta que Google admite hasta tres años de datos.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountBeforeTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
            <BaseByGuestAmt AmountBeforeTax="120.00"
                            CurrencyCode="USD"
                            NumberOfGuests="3"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Tarifas de superposición

Configura NotifType como Overlay para borrar todas las personas por ocupación Tarifas de RoomID_1 y PackageID_1 entre el 20/10/2021 y el 31/12/2021 y reemplázalas por las nuevas tasas por ocupación especificadas.

Por ejemplo, si este mensaje se envió después de la opción “Agregar tarifas” mensaje, el Se borrarán las tarifas de ocupación 1, 2 y 3, y solo la ocupación nueva 1 y tasa de cambio. También puedes establecer un período más corto P.ej., 2021-12-20 y 2021-12-31) para reemplazar solo una parte de la ocupación tarifas en ciertas fechas, por ejemplo, para los días festivos.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Quitar tarifas

Configura NotifType como Remove para borrar todas las ocupación tarifas de RoomID_1 y PackageID_1 entre el 20/10/2021 y el 31/12/2021.

Por ejemplo, si este mensaje se envió después de cualquiera de los otros ejemplos mensajes, no se almacenarían tasas por ocupación.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">>
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
Agregar, superponer y quitar montos de invitados adicionales

Agregar importes

Establece NotifType en Delta para agregar tarifas base para ocupación 1 y 2, y importes adicionales de huéspedes, para RoomID_1 y PackageID_1 entre el 20/10/2021 y el 31/12/2021.

Se aplicarán importes de huéspedes adicionales sobre la tarifa base que será determinado por la ocupación en la búsqueda de un usuario. El usuario especificó debe estar dentro de la capacidad de RoomID_1.

En este ejemplo, se aplicarán importes de huéspedes adicionales como:

  • USD 5 para niños de 0 a 10 años (inclusive).
  • USD 10 para niños de entre 11 y 17 años (inclusive).
  • USD 20 para adultos.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountBeforeTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="5.00" AgeQualifyingCode="8" MaxAge="10" />
            <AdditionalGuestAmount Amount="10.00" AgeQualifyingCode="8" MaxAge="17" />
            <AdditionalGuestAmount Amount="20.00" AgeQualifyingCode="10" />
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Importes superpuestos

Configura NotifType como Overlay para borrar todas las personas por ocupación tarifas y todos los importes adicionales de huéspedes para RoomID_1 y PackageID_1 entre el 20-10-2021 y el 31-12-2021 y reemplázalas por tasas por ocupación especificadas y importes adicionales.

Por ejemplo, si este mensaje se envió después de la opción “Agregar tarifas” mensaje, el se borrarán las tarifas de ocupación base 1 y 2, y solo la nueva de ocupación 1. El conjunto anterior de invitados adicionales los importes se borrarían y solo se almacenaría el nuevo conjunto de importes. Los importes adicionales de huéspedes ahora usarían la nueva tarifa de ocupación 1 como el tarifa base. Ten en cuenta que, después de esta actualización, no habrá invitados adicionales cargos definidos para niños.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="30.00" AgeQualifyingCode="10" />
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Quitar importes

Configura NotifType como Delete para borrar todas las personas por ocupación las tarifas base y todos los importes adicionales de huéspedes para RoomID_1 y PackageID_1 entre el 20/10/2021 y el 31/12/2021.

Por ejemplo, si este mensaje se envió después de cualquiera de los otros ejemplos no se cobran tarifas base por ocupación ni cantidades adicionales de huéspedes almacenar.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">>
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Quitar solo los importes adicionales de los huéspedes

Establece NotifType en Delta con un campo vacío <AdditionalGuestAmounts> elemento para borrar todo importes adicionales de huéspedes para RoomID_1 y PackageID_1 sin afectar tarifas base entre el 20/10/2021 y el 31/12/2021.

Por ejemplo, si este mensaje se envió después de cualquiera de los otros ejemplos mensajes, solo se almacenarían los importes base.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <AdditionalGuestAmounts/>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

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

Configurar tarifas basadas en la duración de la estadía

Ejemplo 1

Establecer tarifas para estadías de 1, 2 y 3 noches a partir del 18/5/2020. El La tarifa total para estadías de 1, 2 y 3 noches en este ejemplo sería de USD 100, USD 180 y USD 240, respectivamente.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="1" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
        <Rate UnitMultiplier="2" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="90.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2" />
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
Cómo agregar, superponer y quitar tarifas basadas en la duración de la estadía

Agregar duraciones de estadía

Con los precios basados en la duración de la estadía, una operación Delta permite que se se actualiza de forma incremental para los períodos de entrada indicados en <StatusApplicationControl> para todas las duraciones de estadía indicados por cada elemento Rate secundario UnitMultiplier

Para cada fecha de entrada y duración aplicables de la estadía, toda la ocupación se deben especificar las tasas de cambio.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Superposición de duraciones de estadía

Con los precios basados en la duración de la estadía, una operación Overlay reemplaza las tarifas para todas las duraciones de la estadía del producto y la fecha de entrada rango indicado en <StatusApplicationControl>.

Con este mensaje, las tarifas por ocupación para todas las duraciones de la estadía en el se quitarán las fechas de llegada especificadas y se reemplazarán por una habitación doble que solo se define para la duración de la estadía 3.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Quitar las duraciones de la estadía

Con los precios basados en la duración de la estadía, una operación Remove quita las tarifas. para todas las duraciones de la estadía del producto y el período de entrada que se indica en <StatusApplicationControl>

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Respuestas

Sintaxis

El mensaje OTA_HotelRateAmountNotifRS usa la siguiente sintaxis:

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                            TimeStamp="timestamp"
                            EchoToken="echo_token"
                            Version="3.0">
  <!-- Either Success or Errors will be populated. -->
  <Success/>
  <Errors>
    <Error Type="12" Status="NotProcessed" ShortText="issue_code">issue_description</Error>
  </Errors>
</OTA_HotelRateAmountNotifRS>

Elementos y atributos

El mensaje OTA_HotelRateAmountNotifRS tiene lo siguiente y atributos:

Elemento / @Attribute Casos Tipo Descripción
OTA_HotelRateAmountNotifRS 1 Complex element El elemento raíz de una respuesta a un mensaje de disponibilidad.
OTA_HotelRateAmountNotifRS / @TimeStamp 1 DateTime La fecha y hora de creación de este mensaje.
OTA_HotelRateAmountNotifRS / @EchoToken 1 string El identificador único del servicio de OTA_HotelRateAmountNotifRQ mensaje.
OTA_HotelRateAmountNotifRS / Success 0..1 Success Indica que el mensaje OTA_HotelRateAmountNotifRQ se se procesó correctamente.

<Success> o <Errors> es presente en cada mensaje.

OTA_HotelRateAmountNotifRS / Errors 0..1 Errors Un contenedor para uno o más problemas encontrados durante el procesamiento del OTA_HotelRateAmountNotifRQ mensaje.

<Success> o <Errors> es presente en cada mensaje.

OTA_HotelRateAmountNotifRS / Errors / Error 1..n Error La descripción de un error encontrado durante el procesamiento del OTA_HotelRateAmountNotifRQ mensaje. Detalles sobre estas puedes encontrar información sobre los errores en el artículo Mensajes de error sobre el estado del feed.
OTA_HotelRateAmountNotifRS / Errors / Error / @Type 1 integer El EWT (tipo de advertencia de error) de OpenTravel Alliance asociado con el . Solo se usa el valor 12 (Processing exception).
OTA_HotelRateAmountNotifRS / Errors / Error / @Code 1 integer El ERR (código de error) de OpenTravel Alliance asociado con el error. Solo se usa el valor 450 (Unable to process).
OTA_HotelRateAmountNotifRS / Errors / Error / @Code 1 enum El estado de la solicitud original. Solo el valor NotProcessed está en uso.
OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText 1 string Es el identificador de Google del problema. Puedes encontrar detalles sobre estos errores que se encuentran en Mensajes de error sobre el estado del feed.

Ejemplos

Listo

La siguiente es una respuesta a un problema Mensaje OTA_HotelRateAmountNotifRQ.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                       EchoToken="12345678"
                       TimeStamp="2021-10-20T20:50:37-05:00"
                       Version="3.0">
  <Success/>
</OTA_HotelRateAmountNotifRS>

Errores

La siguiente es una respuesta a un mensaje OTA_HotelRateAmountNotifRQ que no se procesó debido a errores.

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                       EchoToken="12345678"
                       TimeStamp="2021-10-20T20:50:37-05:00"
                       Version="3.0">
  <Errors>
    <Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error>
  </Errors>
</OTA_HotelRateAmountNotifRS>