OTA_HotelRateAmountNotifRQ

Solicitações

Sintaxe

A mensagem OTA_HotelRateAmountNotifRQ usa a seguinte sintaxe:

<?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 e atributos

A mensagem OTA_HotelRateAmountNotifRQ tem os seguintes elementos e atributos:

Elemento / @Attribute Ocorrências Tipo Descrição
OTA_HotelRateAmountNotifRQ 1 Complex element O elemento raiz de uma mensagem de tarifas.
OTA_HotelRateAmountNotifRQ / @xmlns 0..1 string (URI) O namespace do XML.
OTA_HotelRateAmountNotifRQ / @EchoToken 1 string Um identificador exclusivo para essa mensagem de solicitação. Esse valor é retornado na mensagem de resposta. Os caracteres permitidos são a-z, A-Z, 0-9, _ (underscore) e - (dash).
OTA_HotelRateAmountNotifRQ / @TimeStamp 1 DateTime A data e a hora de criação da mensagem.
OTA_HotelRateAmountNotifRQ / @Version 1 decimal A versão da mensagem do OpenTravel.
OTA_HotelRateAmountNotifRQ / @NotifType 0..1 enum

O tipo de notificação a ser aplicada a cada <RateAmountMessage>:

Os valores válidos são:

Para entender como esses atributos funcionam, confira Confira os exemplos.

  • Overlay: Excluir todas as tarifas por ocupação para o tipo de quarto, o plano de tarifa e as datas. especificado em <StatusApplicationControl>, e e substituí-las por novas taxas.
  • Remove: Excluir todos os elementos tarifas por ocupação para o tipo de quarto, o plano de tarifa e as datas. especificado em <StatusApplicationControl>.
  • Delta: (o padrão se NotifType não está especificada) Adicione ou atualize as tarifas por ocupação existentes para o tipo de quarto, o plano de tarifa e as datas especificadas <StatusApplicationControl>
OTA_HotelRateAmountNotifRQ / @NotifScopeType 0..1 enum

O escopo do NotifType a ser aplicado a todos <RateAmountMessage>.

Os valores válidos são:

  • ProductRate: (o padrão se NotifScopeType não for especificado) o NotifType se aplica a produtos: combinações de tipos de quarto (InvTypeCode) e plano de tarifação (RatePlanCode).
OTA_HotelRateAmountNotifRQ / POS 0..1 POS Um contêiner para especificar a conta do parceiro para esta mensagem (normalmente usada se o back-end fornecer feeds de preço para várias contas de parceiros).
OTA_HotelRateAmountNotifRQ / POS / Source 1 Source Obrigatório se <POS> estiver presente. Um contêiner para o <RequestorID>:
OTA_HotelRateAmountNotifRQ / POS / RequestorID 1 RequestorID Obrigatório se <POS> estiver presente. Define o parceiro do Compute Engine.
OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID 1 string A conta do parceiro para esta mensagem. Esse valor de string é o "Chave do parceiro" valor listado em o página de configurações da conta na Central para Hotéis.

Observação: se você tem um back-end que fornece feeds para vários esse valor precisa corresponder ao partner da mensagem de transação (dados da propriedade) e o valor do atributo Valor do atributo ID na <RequestorID> elemento do seu <OTA_HotelAvailNotifRQ> mensagem para a mesma mensagem do Compute Engine.

OTA_HotelRateAmountNotifRQ / RateAmountMessages 1 RateAmountMessages Um conjunto de elementos <RateAmountMessage> que definir as taxas.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode 1 string O identificador exclusivo da propriedade. Esse valor precisa corresponder ao ID do hotel especificado usando <id> no o elemento <listing> na lista de hotéis Feed de lista. O ID do hotel também aparece na Central para Hotéis.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage 1..n RateAmountMessage Um contêiner para definir os preços de uma diária (um tipo de quarto e uma tarifa) combinação de planos em um período).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl 1 StatusApplicationControl Define o período, bem como os identificadores do tipo de quarto. (InvTypeCode) e plano de tarifa (RatePlanCode).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start 1 Date A data de início (com base no fuso horário da propriedade), inclusive, de o período.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End 1 Date A data de término (com base no fuso horário da propriedade), inclusive, do período. Precisa ser igual ou maior que o valor de start. Se start e end forem iguais, a atualização será aplicada até essa data. O Google oferece suporte a até três anos de dados.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon 0..1 boolean Defina como true ou 1 para incluir explicitamente às segundas-feiras.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue 0..1 boolean Defina como true ou 1 para incluir explicitamente terças-feiras.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds 0..1 boolean Defina como true ou 1 para incluir explicitamente Quartas-feiras.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur 0..1 boolean Defina como true ou 1 para incluir explicitamente quintas-feiras.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri 0..1 boolean Defina como true ou 1 para incluir explicitamente Sextas-feiras.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat 0..1 boolean Defina como true ou 1 para incluir explicitamente Sábados.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun 0..1 boolean Defina como true ou 1 para incluir explicitamente aos domingos.

Se definido como true, outros dias da semana que não forem explicitamente definidos como true são excluídos. filtrada a partir das datas nos campos Start e End).

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode 1 string O identificador exclusivo do inventário (tipo de quarto). Esse valor mapeia como <RoomID> em uma mensagem de transação (dados da propriedade).
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode 1 string Um identificador exclusivo para o plano de tarifação. Esse identificador é mapeado para o <PackageID> em uma transação (dados da propriedade) mensagem. O plano de tarifação é definido com mais detalhes em <StatusApplicationControl> em ambos <OTA_HotelRateAmountNotifRQ> e <OTA_HotelAvailNotifRQ> mensagens.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType 0..1 string Um identificador que indica o tipo de modelo de preços ARI que serão aplicadas a essa atualização de preços. Isso só deve ser especificado, usando uma valor de 26, ao usar o modelo de preços com base na estadia. Exclusão desse atributo indica que é um preço por data atualizar.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates 0..1 Rates Contêiner para uma coleção de elementos <Rate>. Se NotifType é "Remove", esse elemento não pode ser especificado. Caso contrário, esse elemento precisa ser especificado exatamente uma vez.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate 1 Rate Contêiner para uma coleção de <BaseByGuestAmts> os elementos.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit 0..1 String A unidade pela qual a duração da estadia é especificada. Os únicos compatíveis o valor é "Day", o que significa que a duração da estadia será especificado em dias.

Para usar preços baseados em estadias, RateTimeUnit e UnitMultiplier precisam ser especificado. Caso contrário, nenhum deles deve ser especificado.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier 0..1 Integer O número de RateTimeUnits que compõem o comprimento de se hospedam por essa taxa.

Por exemplo, se o valor de RateTimeUnits for "Day", um UnitMultiplier de 5 indica que as taxas especificadas neste objeto Rate se aplicam a cada noite de uma estadia de cinco noites.

As taxas de ocupação especificadas neste Rate será multiplicado pelo elemento UnitMultiplier (duração da estadia) para chegar ao preço total da estadia.

Para usar preços baseados em estadias, RateTimeUnit e UnitMultiplier precisam ser especificado. Caso contrário, nenhum deles deve ser especificado.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts 1 BaseByGuestAmts Contêiner para uma coleção de cobranças básicas.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt 1..n BaseByGuestAmt Especifica os preços dos quartos na moeda especificada. O preço pode ser por ocupação usando vários <BaseByGuestAmt>. elementos, cada um com um valor diferente para NumberOfGuests. Caso contrário, o preço é aplicável a um número máximo de ocupantes. definido por NumberOfGuests.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax 0..1 float

O preço diário da diária sem tributos e taxas.

Tanto AmountBeforeTax quanto AmountAfterTax pode ser especificado. Se AmountBeforeTax não for especificado, AmountAfterTax precisa ser especificado. Se AmountBeforeTax é especificado e AmountAfterTax não é especificado, então tributos e taxas precisa ser especificado em uma mensagem <TaxFeeInfo>.

Se você estiver usando promoções, o desconto aplicado a AmountBeforeTax porcentagem os descontos também são aplicados a AmountAfterTax. Como este não trabalha com algumas estruturas fiscais, recomendamos que apenas especificando AmountBeforeTax aqui e usando <TaxFeeInfo> para especificar tributos e taxas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax 0..1 float O preço diário da diária após a inclusão dos impostos aplicáveis e tarifas. Se AmountAfterTax for especificado, separe por propriedade <TaxFeeInfo> mensagens não precisam ser enviadas. Isso pode ser usado em combinação com AmountBeforeTax. para fornecer as taxas básicas e totais que podem ser mostradas aos usuários nos em determinadas regiões.

Aviso: se você usa promoções, é altamente recomendável não recomendam o uso de AmountAfterTax quantidades Se você quiser usar descontos, especifique tributos e taxas por usando a mensagem <TaxFeeInfo>. Seus descontos irão depois aplicados a AmountBeforeTax valores.

Observação:se AmountBeforeTax não for especificado, AmountAfterTax deverá ser especificado.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode 1 enum O código de caractere alfa ISO 4217 (3) para uma unidade monetária específica.

Consulte a lista de sistemas de gerenciamento moedas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests 0..1 integer Número máximo de hóspedes que podem ser acomodados por esta tarifa. Se não for informado, o padrão será dois hóspedes.

Se <AdditionalGuestAmounts> contém cobranças para crianças, NumberOfGuests se refere apenas para adultos. Se <AdditionalGuestAmounts> não especificada ou não contém cobranças para filhos, NumberOfGuests refere-se ao número total de ocupantes incluindo adultos e crianças.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts 0..1 AdditionalGuestAmounts Contêiner para uma coleção de cobranças de convidados adicionais.

Esta sintaxe é útil se houver tarifas adicionais para hóspedes ou crianças com base na data. Considere usar o modelo mais eficiente ExtraGuestCharges se esses valores puderem ser definidos estaticamente na propriedade nível

Valores adicionais para hóspedes são aplicados da seguinte forma:
  • Elas são aplicadas sobre a tarifa de ocupação básica. A base de ocupação é a maior taxa de ocupação, especificada em <BaseByGuestAmts>, que é menor ou igual a o número de adultos em uma pesquisa do usuário.
  • Elas serão aplicadas desde que a ocupação em uma pesquisa do usuário seja dentro da capacidade da sala.
  • <AdditionalGuestAmounts> sempre substituir valores adicionais especificados anteriormente por novos valores quando NotifType é Delta ou Overlay.
  • <AdditionalGuestAmounts> pode ser enviado independentemente das taxas básicas somente quando NotifType for Delta. <BaseByGuestAmts>deve ser especificado quando NotifType for Overlay.
  • Um elemento <AdditionalGuestAmounts> vazio com NotifType definido como Delta remove existente valores adicionais sem afetar as taxas básicas.
  • Elas são aplicadas usando a moeda especificada no <BaseByGuestAmt>:

Por exemplo, suponha que as taxas básicas sejam especificadas para 1 e 2 adultos.

  • Se um usuário pesquisar três adultos, a tarifa de ocupação dupla será ser selecionada como a tarifa básica e um valor adicional de hóspede para uma adulto será aplicada sobre ele.
  • Se o usuário pesquisar um adulto e duas crianças, a única de ocupação é selecionada como a tarifa básica, e a tarifa adicional valores seriam aplicados sobre ele, para os dois filhos.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount 0..n AdditionalGuestAmount Especifica os preços com base no tipo de hóspede, especificados por AgeQualifyingCode e, se aplicável, a idade do hóspede especificado por MaxAge.
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode 1 enum Define o tipo de convidado adicional, adulto ou criança. Válida são:
  • 10: adulto.
  • 8: Filho.

O AgeQualifyingCode pode ser definido como 10 por no no máximo um elemento AdditionalGuestAmount.

MaxAge precisa ser especificado quando O valor da coluna AgeQualifyingCode é 8.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge 0..1 integer MaxAge precisa ser especificado quando O valor da coluna AgeQualifyingCode é 8. Não podem ser especificado quando AgeQualifyingCode é 10.

MaxAge precisa ser um número inteiro entre 0 e 17.

Especificar um valor de 0 desativa os ocupantes filhos.

Valores maiores que 17 serão tratados como o máximo valor aceito de 17.

Várias faixas etárias podem ser especificadas por meio de Elementos AdditionalGuestAmount. As faixas etárias devem ser contíguas e não sobrepostas.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount 1 float Valor antes dos tributos e taxas adicionados à taxa básica de cada convidado adicional.

Tributos e taxas que dependem dos ocupantes idades devem ser especificadas por o elemento <AgeBrackets> em um <TaxFeeInfo> mensagem.

Exemplos

Esta seção fornece exemplos de código que destacam como:

.

Quando você define os valores add, overlay ou remove, os períodos podem é igual ou diferente dependendo das suas metas. Por exemplo, é possível usar overlay para definir apenas algumas semanas para os feriados de dezembro, em vez dos o intervalo inteiro definido para a opção "Adicionar taxa" mensagem. Isso vai substituir a ocupação diárias apenas para este período.

Preços por data

Em um determinado plano de tarifa, pode haver no máximo 50 tarifas de ocupação por . Se as taxas forem as mesmas para todas as ocupações, envie apenas o para o máximo de ocupações com o preço exigido. Ao fazer isso, o Google infere que as ocupações mais baixas também recebem a mesma taxa básica.

Configurar taxas básicas e totais

Exemplo 1

Taxa básica (sem tributos ou taxas) para ocupação padrão (duplo). Neste os tributos e as taxas da propriedade devem ser definidos usando um <TaxFeeInfo> mensagem. A taxa básica será mais proeminentes para usuários que pesquisam em determinadas regiões.

<?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>

Exemplo 2

Taxa básica e total para ocupação padrão (duplo). Nesse modelo, os tributos e taxas não podem ser definidas separadamente usando <TaxFeeInfo> e envio de mensagens. A taxa básica terá mais destaque para os usuários que pesquisarem em em determinadas regiões.

<?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>

Exemplo 3

Taxa total (com tributos e taxas) para várias ocupações. Nesse modelo, não pode ser definido separadamente usando <TaxFeeInfo> e envio de mensagens.

<?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>

Exemplo 4

Diária básica e total para vários tipos de quarto e planos de tarifas no períodos diferentes.

<?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>
Adicionar, sobrepor e remover taxas

Há um limite de 5.000 produtos, tipo de quarto e pacote. por propriedade. Usar a notificação Overlay ou Remove para remover produtos definidos anteriormente.

Adicionar diárias

Defina NotifType como Delta para adicionar tarifas por ocupação RoomID_1 e PackageID_1 entre 20/10/2021 e 31/12/2021. Observe que O Google oferece suporte a até três anos de dados.

<?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>

Taxas de sobreposição

Defina NotifType como Overlay para excluir todas as opções por ocupação. tarifas para o RoomID_1 e o PackageID_1 entre 20/10/2021 e 31/12/2021 e substitua-as pelas novas tarifas por ocupação.

Por exemplo, se essa mensagem foi enviada depois do botão "Adicionar tarifas" a mensagem, o as tarifas de ocupação 1, 2 e 3 serão excluídas, e apenas a nova ocupação 1 taxa seria armazenada. Você também pode definir um período mais curto Por exemplo: 20/12/2021 e 31/12/2021) para substituir apenas parte da ocupação tarifas em determinadas datas, como feriados.

<?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>

Remover tarifas

Defina NotifType como Remove para excluir todas as opções por ocupação. para o RoomID_1 e o PackageID_1 entre 20/10/2021 e 31/12/2021.

Por exemplo, se esta mensagem foi enviada depois de qualquer outro nenhuma taxa por ocupação seria armazenada.

<?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>
Adicionar, sobrepor e remover valores adicionais de convidados

Adicionar valores

Defina NotifType como Delta para adicionar taxas básicas a ocupação 1 e 2 e valores adicionais de hóspedes para RoomID_1 e PackageID_1 entre 20/10/2021 e 31/12/2021.

Valores adicionais para hóspedes serão aplicados sobre a tarifa básica que será ser determinada pela ocupação em uma pesquisa do usuário. O usuário especificado o número de hóspedes precisa estar dentro da capacidade do RoomID_1.

Neste exemplo, os valores adicionais de hóspedes serão aplicados como:

  • US$ 5 para crianças na faixa etária de 0 a 10 anos (inclusive).
  • US$ 10 para crianças na faixa etária de 11 a 17 anos (inclusive).
  • US$ 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>

Valores de sobreposição

Defina NotifType como Overlay para excluir todas as opções por ocupação. diárias e todos os valores adicionais de hóspedes para o RoomID_1 e o PackageID_1 entre 20/10/2021 e 31/12/2021, substituindo-os tarifas por ocupação e valores adicionais.

Por exemplo, se essa mensagem foi enviada depois do botão "Adicionar tarifas" a mensagem, o as tarifas de ocupação básica 1 e 2 serão excluídas, e apenas a nova base a tarifa de ocupação 1 seria armazenada. O conjunto anterior de convidados adicionais valores seriam excluídos e apenas o novo conjunto de valores seria armazenado. Os valores adicionais de hóspedes agora usarão a nova tarifa de ocupação 1 como o e a taxa básica. Após essa atualização, não haverá mais convidados cobranças definidas para filhos.

<?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>

Remover valores

Defina NotifType como Delete para excluir todas as opções por ocupação. tarifas básicas e todos os valores adicionais para hóspedes em RoomID_1 e PackageID_1. entre 20/10/2021 e 31/12/2021.

Por exemplo, se esta mensagem foi enviada depois de qualquer outro mensagens, sem tarifas básicas por ocupação ou valores adicionais para hóspedes ser armazenados.

<?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>

Remover apenas valores adicionais de hóspedes

Defina NotifType como Delta com uma Elemento <AdditionalGuestAmounts> para excluir todos valores adicionais de hóspedes para o RoomID_1 e o PackageID_1 sem afetar entre 20/10/2021 e 31/12/2021.

Por exemplo, se esta mensagem foi enviada depois de qualquer outro somente os valores base seriam armazenados.

<?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>

Preços com base na estadia

Configurar tarifas com base na estadia

Exemplo 1

Defina tarifas para estadias de 1, 2 e 3 noites a partir de 18/05/2020. A a tarifa total para estadias de uma, duas e três noites neste exemplo seria de US $100, US$ 180 e US $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>
Adicionar, sobrepor e remover tarifas com base na estadia

Adicionar duração(s) da estadia

Com preços baseados na estadia, uma operação de Delta permite que as tarifas sejam atualizados de modo incremental para os períodos de check-in indicados em <StatusApplicationControl> e para todas as durações de estadia indicado pelo atributo Rate de cada elemento filho UnitMultiplier.

Para cada data de check-in e duração da estadia aplicável, todos os hóspedes devem ser especificadas.

<?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>

Sobrepor duração(s) da estadia

Com preços baseados na estadia, uma operação de Overlay substitui as tarifas para todas as durações da estadia do produto e a data do check-in intervalo indicado em <StatusApplicationControl>.

Esta mensagem indica as tarifas por ocupação para todas as durações de estadia no as datas de chegada especificadas serão removidas e substituídas por um quarto duplo. que é definida somente para a duração da estadia 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>

Remover períodos de permanência

Com preços baseados na estadia, uma operação Remove remove as taxas para todos os períodos de permanência do produto e o período de check-in indicados em <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>

Respostas

Sintaxe

A mensagem OTA_HotelRateAmountNotifRS usa a seguinte sintaxe:

<?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 e atributos

A mensagem OTA_HotelRateAmountNotifRS tem o seguinte elementos e atributos:

Elemento / @Attribute Ocorrências Tipo Descrição
OTA_HotelRateAmountNotifRS 1 Complex element O elemento raiz de uma resposta a uma mensagem de disponibilidade.
OTA_HotelRateAmountNotifRS / @TimeStamp 1 DateTime A data e a hora de criação da mensagem.
OTA_HotelRateAmountNotifRS / @EchoToken 1 string O identificador exclusivo do identificador OTA_HotelRateAmountNotifRQ mensagem.
OTA_HotelRateAmountNotifRS / Success 0..1 Success Indica que a mensagem OTA_HotelRateAmountNotifRQ foi processado com sucesso.

<Success> ou <Errors> são presentes em cada mensagem.

OTA_HotelRateAmountNotifRS / Errors 0..1 Errors Um contêiner para um ou mais problemas encontrados durante o processamento da OTA_HotelRateAmountNotifRQ mensagem.

<Success> ou <Errors> são presentes em cada mensagem.

OTA_HotelRateAmountNotifRS / Errors / Error 1..n Error A descrição de um erro encontrado durante o processamento do OTA_HotelRateAmountNotifRQ mensagem. Detalhes os erros podem ser encontrados em Mensagens de erro de status do feed.
OTA_HotelRateAmountNotifRS / Errors / Error / @Type 1 integer O tipo de aviso de erro (EWT, na sigla em inglês) da OpenTravel Alliance associado à erro. Apenas o valor 12 (Processing exception) é usado.
OTA_HotelRateAmountNotifRS / Errors / Error / @Code 1 integer O ERR (código de erro) da OpenTravel Alliance associado ao erro. Apenas o valor 450 (Unable to process) é usado.
OTA_HotelRateAmountNotifRS / Errors / Error / @Code 1 enum O status da solicitação original. Apenas o valor NotProcessed é usado.
OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText 1 string É o identificador do Google para o problema. Detalhes sobre esses erros podem ser encontrado em Mensagens de erro de status do feed.

Exemplos

Sucesso

A seguir, temos uma resposta para um erro 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>

Erros

Esta é uma resposta a uma mensagem OTA_HotelRateAmountNotifRQ que não processados devido a erros.

<?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>