Mensagem de promoções

Visão geral

A mensagem de promoções define regras para taxas de desconto usando OTA_HotelRateAmountNotifRQ. Para cada tarifa, as promoções definidas são avaliadas, e o maior desconto permitido é aplicado. Esse tipo de mensagem é opcional, e você só precisa definir promoções se elas forem usadas no seu sistema para aplicar descontos nas tarifas.

Você pode combinar promoções e aplicá-las a diferentes atributos do usuário, como tipos de dispositivo (smartphone, tablet, computador) e códigos de país.

Para exemplos de vários cenários relacionados a promoções, consulte Instruções.

As seções a seguir abordam diretrizes gerais, um exemplo básico e cenários de instruções para você começar a adicionar e atualizar promoções.

Diretrizes

Esta seção aborda as diretrizes comuns e instruções especiais para configurar promoções.

Siga estas diretrizes para promoções:

Ações

Excluir
Use uma ação delete no elemento <Promotion> para excluir uma única promoção pelo ID.
Sobreposição
Use uma ação overlay no elemento <HotelPromotions> para substituir todas as promoções de uma propriedade.
Delta
Se nenhuma ação for especificada, todas as promoções em <HotelPromotions> serão adicionadas ou substituídas. Se uma promoção com esse ID nunca tiver sido adicionada ou tiver sido excluída, ela será adicionada. Se uma promoção com esse ID existir, ela será substituída pela nova definição.

Geral

  • Pode haver uma única promoção ou um conjunto delas para cada propriedade, e cada promoção tem um conjunto de condições. Essa promoção só poderá ser aplicada se as condições forem atendidas.

  • As promoções se aplicam à tarifa do itinerário. Não é possível definir um desconto máximo por ocupante.

  • Se você quiser que uma promoção seja válida apenas para uma data, um tipo de quarto ou um plano de tarifas específico, especifique isso nas condições da promoção. Se a promoção não se aplicar a uma data, tipo de quarto ou plano de tarifa específico, não é necessário definir essas opções.

  • Cada promoção está vinculada a uma propriedade específica. Se você usar a mesma promoção em várias propriedades, envie-a separadamente para cada uma delas. Para especificar o identificador da propriedade, use o atributo hotel_id do elemento <HotelPromotions>.

  • É possível incluir até 99 promoções. Entre em contato com seu TAM do Google se precisar incluir mais do que isso.

  • Use o elemento <Stacking> para especificar como as promoções podem ser combinadas. Por padrão, o Google usa o tipo de empilhamento base, o que significa que a melhor promoção básica qualificada é selecionada e aplicada primeiro, antes de outras promoções. base só pode ser combinado com second ou any, e não com outro base ou none.

  • Mesmo que haja várias promoções que possam ser aplicadas juntas, talvez não seja essa combinação que será usada se houver outra promoção única ou combinação de promoções que ofereça um desconto maior. A promoção (combinação) com o maior desconto é aplicada à reserva quando várias promoções (combinações) são qualificadas.

  • Enviar uma atualização de mensagem de promoções sempre que houver mudanças que afetem suas promoções.

A melhor promoção (ou conjunto de promoções) é aplicada ao valor AmountAfterTax. Se apenas AmountBeforeTax for especificado, as promoções serão aplicadas a AmountBeforeTax.

Exemplo

Nesta seção, apresentamos um exemplo básico de uma mensagem de promoções usando elementos obrigatórios e opcionais. Depois de preparar o arquivo, envie-o ao Google com uma mensagem POST para este endpoint:

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

Para saber mais sobre como enviar/POST a mensagem, consulte Envio de mensagens.

Para o atributo hotel_id de <HotelPromotions>, use o ID exclusivo do hotel que você usou no seu sistema para identificar a propriedade. Esse valor precisa corresponder ao ID do hotel especificado usando <id> no elemento <listing> do feed de lista de hotéis. A consistência com seu sistema é fundamental para garantir que o Google esteja mostrando seus dados corretamente.

UserCountry é para listar os locais (países) dos usuários que estão qualificados para a promoção. Se especificado, somente os usuários nos países listados vão receber a tarifa com desconto.

Este exemplo mostra como definir um desconto de 15% para uma estadia prolongada para usuários nos Estados Unidos e na Itália:

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

Para mais exemplos, consulte Exemplos de promoções.

Tutoriais

Esta seção oferece soluções para cenários que podem ocorrer ao configurar promoções.

Cenário 1: como adicionar uma promoção de desconto para estadias prolongadas

Descrição

Você quer oferecer noites com desconto em determinados dias de uma estadia prolongada.

Solução

Use a configuração FreeNights para personalizar o tipo de desconto aplicado dependendo do número de pernoites.

Exemplo

Este exemplo mostra como adicionar um desconto de 20% para duas noites a cada sete noites de estadia no período especificado de datas de reserva. Em um itinerário de 15 noites, um desconto de 20% é aplicado a um total de 4 noites.

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

Cenário 2: como definir tipos de dispositivo

Defina devices para especificar os dispositivos do usuário que estão qualificados para a promoção. Se especificado, apenas os usuários nos dispositivos listados vão receber a taxa com desconto.

Descrição

Você quer especificar qual tipo de dispositivo do usuário está qualificado para a promoção.

Solução

Defina o tipo de dispositivo como um ou mais dos seguintes valores: desktop, tablet ou mobile.

Exemplo

O exemplo a seguir mostra como especificar um desconto de 25% para usuários de dispositivos móveis e tablets:

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

Cenário 3: como substituir promoções antigas por novas

Descrição

O conjunto atual de promoções de uma propriedade está desatualizado ou incorreto e precisa ser substituído por um conjunto totalmente novo.

Solução

Use a ação overlay para substituir as promoções.

Exemplo

O exemplo a seguir mostra os dois descontos originais de 20% e 30% para a propriedade.

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

Este exemplo mostra como usar overlay para substituir as duas promoções atuais por uma única promoção de 15% de desconto para a propriedade.

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

Cenário 4: como remover uma ou todas as promoções

Descrição

Você quer remover uma ou todas as promoções (sem substituição) porque a propriedade removeu todas as promoções sem definir novas ou porque você cometeu um erro e precisa corrigi-lo.

Solução

Use a ação delete se quiser excluir apenas promoções individuais específicas de uma propriedade, e use a ação overlay (não delete) para remover todas as promoções atuais sem substituição.

Para detalhes sobre como substituir promoções usando overlay, consulte Cenário 3.

Amostras

O exemplo a seguir mostra como excluir apenas uma promoção de uma propriedade:

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

Este exemplo mostra como remover todas as promoções sem substituição de uma propriedade:

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

Cenário 5: como combinar promoções

O empilhamento especifica como as promoções podem ser combinadas. Se não for especificado, o type será considerado base, ou seja, a melhor promoção básica qualificada será selecionada e aplicada primeiro, antes de outras promoções. Quando o atributo type de Stacking é any, ele pode ser combinado com qualquer outra promoção.

Descrição

Você quer que o usuário tenha a opção de usar várias promoções ao mesmo tempo para a mesma propriedade.

Solução

Use o empilhamento para definir vários descontos por propriedade. Uma pilha pode ter no máximo um base e um second, mas um número ilimitado de any. Além disso, any pode ser combinado com os outros tipos, exceto none.

Exemplo

Este exemplo mostra como empilhar os tipos de empilhamento base, second e any. Para um desconto combinado de 15%, 25% e 10%, um preço de US $100 é um total de US$ 57,38 (100 × 0,85 × 0,75 × 0,9).

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

O desconto combinado das promoções 1 a 3 é melhor do que o da promoção 4. A promoção 4 não pode ser combinada com outras devido ao tipo de empilhamento (none). Se ela tivesse um desconto de 43% ou mais, seria usada em vez da combinação das promoções de 1 a 3.