Categorias de quarto

Com as categorias de quarto, você pode definir vários tipos de quarto para uma única propriedade ou combinar o itinerário de um quarto com recursos de tarifa, serviços adicionais que vem com uma tarifa e condições de venda, para seus usuários além do preço padrão.

Principais conceitos e fluxo de trabalho

Com as categorias de quarto, você pode oferecer outras combinações de tipos de quarto físico com diferentes pacotes de serviços.

Exemplos

As imagens a seguir mostram exemplos de pacotes do Room em dispositivos computadores e móveis:

Categorias de quarto com imagens

Este exemplo é a versão para dispositivos móveis de pacotes de quartos, que consiste em todos os diferentes tipos de quartos para o número necessário de ocupantes e as respectivas imagens dos quartos.

Observação: os pacotes de quartos sem imagens são substituídos por uma imagem de marcador de cama.

Recursos de tarifas

As imagens a seguir mostram exemplos de recursos de taxa:

A exibição das Categorias de quarto e dos recursos de tarifa nos resultados da pesquisa é feita pelo mesmo processo de seleção das tarifas de quarto padrão.

Categorias de quarto

Você define as categorias de quarto e os recursos de tarifa nas mensagens de transação. O elemento raiz de uma mensagem de transação é <Transaction>.

A estrutura da mensagem de transação depende do que você está fazendo: definir os metadados sobre o recurso de pacote de quartos ou de tarifa ou atualizar o preço ou a disponibilidade do pacote de quartos.

Metadados
Defina os metadados do recurso de pacote de quartos e de tarifas com <PackageData> em um elemento <PropertyDataSet>. Para mais informações, consulte Definir metadados de sala e pacote. As categorias de quarto usam elementos <RoomData> para descrições de cômodos físicos.
Preços e disponibilidade
Defina os preços e a disponibilidade da categoria de quarto com o elemento <RoomBundle> em um <Result> para cada combinação de pacote/itinerário. Para mais informações, consulte Definir preços e disponibilidade.

A tarifa básica do quarto, os impostos e outras taxas são obrigatórios em <Result> quando não são usados com pacotes de quarto e podem ser removidos quando usados com pacotes de quarto. Se você estiver implementando pacotes de quartos usando uma conta ativa, siga estas etapas:

  1. Inclua a tarifa, os tributos e outras taxas do pacote de quarto base em <Result> e adicione um pacote de quarto que corresponda ao pacote de quarto base.

  2. Se necessário, defina outras categorias de quarto no mesmo bloco <Result> para outros tipos de quarto na propriedade ou diferentes pacotes de serviços.

  3. Depois que o pacote de quartos for lançado, remova a tarifa, os impostos e outras taxas do quarto base.

Metadados da categoria de quarto

Ao definir as categorias de quarto e os recursos de tarifa, você normalmente define a descrição, os serviços adicionais que fazem parte da tarifa e outras informações sobre a categoria de quarto com antecedência. Essas informações são conhecidas como os metadados do pacote de quartos. Em seguida, você faz referência a esses metadados nas atualizações de preços, mas não os inclui nas mensagens de atualização de preços.

Ao definir pacotes de salas, use os elementos <RoomData> existentes para as descrições físicas da sala e os elementos <PackageData> para os recursos de tarifa e os termos que não fazem parte da descrição física da sala.

O uso dos elementos <RoomData> e <PackageData> pode reduzir significativamente o tamanho da sua lista de hotéis e do feed de preços de hotéis, porque reduz a quantidade de dados repetitivos enviados em mensagens de transação.

Por exemplo, dados como o nome e a descrição de um quarto geralmente são repetidos em todos os itinerários. Você pode usar os elementos <RoomData> e <PackageData> para definir esse tipo de dados apenas uma vez. Os dados de Categoria de quarto específicos do itinerário são mesclados com as definições armazenadas de quartos e pacotes para exibição ao usuário final.

O Google associa seus metadados aos dados específicos do itinerário para renderizar o conteúdo dos anúncios. Há um processamento especial para combinar os nomes e as descrições dos elementos <RoomData> e <PackageData>, permitindo que o espaço físico seja descrito em <RoomData> e que os recursos de taxa e os detalhes do pacote sejam <PackageData>.

Se você definir os dados do pacote e do quarto para um único quarto ou pacote de quartos, o Google vai incluir os dois na saída do anúncio, separados por um hífen.

Diretrizes de fotos

Ao enviar fotos do ambiente, siga estas diretrizes para garantir que as fotos sejam mostradas aos usuários:

  • Envie fotos para cada tipo de quarto, incluindo fotos de ambientes acessíveis. Por exemplo, salas acessíveis designadas com vários acessórios de banheiro, como chuveiro integrado.

  • Inclua pelo menos quatro fotos do quarto e pelo menos uma foto do banheiro.

  • As fotos precisam ser do próprio quarto, e não da propriedade. As fotos mais importantes são da cama, do quarto, do banheiro, da área de convivência, da vista do quarto (com o restante do quarto na mesma foto) e, se aplicável, da varanda, pátio ou terraço.

    Também é útil tirar fotos da mesa, da cozinha, da cafeteira/bule e dos recursos distintos do quarto.

  • Evite fotos de pessoas e propriedades, por exemplo, do exterior ou das comodidades da propriedade, turismo/turismo e comida.

  • Evite fotos de objetos em close, como taças.

  • Evite marcas e produtos de higiene pessoal rotulados ou de marca. Eles podem ser incluídos em uma foto que mostre toda a área do banheiro. As fotos não podem ter grandes blocos de texto, logotipos ou marcas d'água.

  • Forneça fotos padrão no modo paisagem (horizontal) com um campo de visão amplo. Evite fotos olho de peixe e distorcidas. Tire fotos com a maior resolução para melhorar a classificação. Não é necessário enviar a mesma foto em várias resoluções.

Precedência de dados

Os dados do pacote de quartos são coletados de todas as fontes e combinados usando regras de precedência para produzir os dados finais de um determinado hotel, itinerário e pacote de quartos. A ordem é a seguinte, da prioridade mais baixa para a mais alta:

  1. (Menor) Dados do parceiro
  2. Dados da propriedade
  3. <RoomData>, em que o <RoomID> corresponde ao <RoomID> no bloco <RoomBundle>
  4. <PackageData>, em que <PackageID> corresponde ao <PackageID> no bloco <RoomBundle>.
  5. (Mais alta) <RoomBundle>

Definir preços e disponibilidade

Para definir o preço e a disponibilidade de categorias de quarto, use um elemento <RoomBundle> em uma mensagem de transação para cada combinação de pacote ou itinerário. O elemento <RoomBundle> precisa estar dentro do elemento <Result>. O exemplo de código para dois elementos <RoomBundle> é mostrado abaixo. Neste exemplo, os dois elementos <RoomBundle> fazem referência aos metadados de sala e pacote usando <RoomID> e <PackageID>.

Para cada <Result>, o conjunto de pacotes de quartos contido substitui o conjunto existente para essa propriedade ou combinação de itinerário. Se você não definir nenhum pacote de quartos ou recursos de tarifa no elemento <Result>, todos os pacotes de quartos serão removidos e apenas o quarto básico do hotel ou itinerário vai aparecer nos resultados da pesquisa.

Use elementos como <Name> para tornar seus pacotes de quartos mais atraentes para clientes em potencial e verifique se eles correspondem à página de destino do hotel. Neste exemplo, você definiria nomes e outras informações descritivas nos metadados.

<RatePlanID> é opcional e representa o identificador exclusivo de uma combinação de quarto e pacote. Recomendamos o uso de RatePlanID como uma variável para criar o URL da página de destino dinâmica (antigo ponto de venda). Para detalhes, consulte Como usar variáveis e condições.

Os seguintes elementos são opcionais nos pacotes de quartos:

<Baserate>
<Tax>
<OtherFees>
<RoomID>
<PackageID>
<Occupancy>
<OccupancyDetails>

Quando você implementar o pacote de salas em uma conta ativa, remova <Baserate> depois que o pacote de salas for ativado.

<Result>
  <!-- Note: When using Room Bundles, the top level result price is no
       longer necessary. -->
  <Property>180054</Property>
  <Checkin>2017-10-07</Checkin>
  <Nights>2</Nights>
  <!-- Base Room Bundle -->
  <RoomBundle>
    <RoomID>060773</RoomID>
    <PackageID>P54321</PackageID>
    <Baserate currency="USD">199.99</Baserate>
    <Tax currency="USD">25.12</Tax>
    <OtherFees currency="USD">2.00</OtherFees>
    <!-- RatePlanID is optional and represents the unique identifier for a
    room and package data combination. We strongly recommend using RatePlanID
    as a variable to build your dynamic landing page (formerly Point of Sale)
    URL. For details, see Using Variables and Conditions. -->
    <RatePlanID>060773-P54321</RatePlanID>
  </RoomBundle>
  <!-- Premium Room Bundle -->
  <RoomBundle>
    <RoomID>436233</RoomID>
    <PackageID>P12345</PackageID>
    <!-- Price for 4 ("occupancy") -->
    <Baserate currency="USD">298.88</Baserate>
    <Tax currency="USD">42.12</Tax>
    <OtherFees currency="USD">10.00</OtherFees>
    <RatePlanID>436233-P12345</RatePlanID>
  </RoomBundle>
</Result>

Definir metadados de sala e pacote

Para definir os metadados de Categoria de quarto, use os elementos <PackageData> e <RoomData> dentro do elemento <PropertyDataSet> de uma Mensagem de transação.

Você define os metadados do quarto e do pacote em uma mensagem de transação separada dos dados de preço e disponibilidade. Ao definir esses dados com antecedência, suas atualizações de preços não precisam incluir informações repetitivas, como descrições, URLs de fotos, comodidades e outros dados sobre cada quarto ou pacote de cada itinerário.

O Google armazena os metadados para você e os insere nos seus anúncios quando eles são exibidos. É possível atualizar os metadados de sala e pacote a qualquer momento com uma nova mensagem de transação.

Na mensagem de transação, você define um ID de pacote e um ID de sala em cada bloco, que são referenciados nos blocos de atualizações de preços <Result>.

Se os dados de quartos e pacotes mudarem, por exemplo, se você adicionar um novo tipo de quarto em uma propriedade, enviar uma nova Mensagem de transação que contenha os dados atualizados de quartos e pacotes, o Google substituirá os metadados existentes sobre um quarto ou pacote pelos novos dados.

O Google recomenda que você defina metadados durante a configuração inicial. Depois de definir os metadados, basta fazer referência aos valores <RoomID> e <PackageID> nas atualizações de preços, em vez de incluir todas essas informações novamente. O Google usa esses IDs para corresponder os ambientes e os pacotes de ambientes aos metadados armazenados. Isso pode reduzir significativamente o tamanho geral das suas Mensagens de transação.

Como os preços das combinações de quartos ou itinerários mudam com muito mais frequência do que as descrições de quartos ou pacotes, definir metadados uma vez e depois se referir a eles é um uso muito mais eficiente das mensagens de transação. Além disso, erros como descrições de cômodos incompatíveis podem ser eliminados usando metadados em vez de definir dados inline.

O método recomendado e mais eficiente de definir metadados e preços separadamente é mostrado abaixo:

<!-- Efficient method of defining Room Bundles -->
<!----- Occupancy of 2 and 4 example ------>

<Transaction timestamp="2019-04-18T16:20:00-04:00" id="12345678">
  <!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
  <!-- Note: Once defined it does not have to be repeated for future Transaction Messages. -->
  <!--       PropertyDataSets can also be defined and sent in their own Transaction Message -->
  <!--       separately from pricing. Google can be configured to pull just PropertyDataSets -->
  <!--       once per day (or on a predefined frequency). -->
  <PropertyDataSet>
    <Property>180054</Property>
    <!-- Can be reused by multiple Room Bundles -->
    <RoomData>
      <RoomID>060773</RoomID>
      <Name>
        <Text text="Single Queen Room - Non-Smoking" language="en"/>
        <Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4, but bundle is for 2 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageQueen.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <RoomData>
      <RoomID>436233</RoomID>
      <Name>
        <Text text="Premium King Room - Non-Smoking" language="en"/>
        <Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4 and bundle is for 4 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageKing.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <!-- Can be reused by multiple Room Bundles -->
    <PackageData>
      <PackageID>P54321</PackageID>
      <Occupancy>2</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="7"
           refundable_until_time="18:00:00"/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
    <PackageData>
      <PackageID>P12345</PackageID>
      <Occupancy>4</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="1"
           refundable_until_time="18:00:00"/>
      <BreakfastIncluded/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
  </PropertyDataSet>

    <!-- Efficient method of defining Room Bundles -->
    <!-- Part 2: Reference RoomData and PackageData through ID -->
  <Result>
    <Property>180054</Property>
    <Checkin>2017-10-07</Checkin>
    <Nights>2</Nights>

    <!-- Base Room Bundle -->
    <RoomBundle>
      <RoomID>060773</RoomID>
      <PackageID>P54321</PackageID>
      <Baserate currency="USD">199.99</Baserate>
      <Tax currency="USD">25.12</Tax>
      <OtherFees currency="USD">2.00</OtherFees>
      <!-- RatePlanID is optional and represents the unique identifier for a
      room and package data combination. We strongly recommend using RatePlanID
      as a variable to build your dynamic landing page (formerly Point of Sale)
      URL. For details, see Using Variables and Conditions. -->
      <RatePlanID>060773-P54321</RatePlanID>
    </RoomBundle>
    <!-- Premium Room Bundle -->
    <RoomBundle>
      <RoomID>436233</RoomID>
      <PackageID>P12345</PackageID>
      <!-- Price for 4 ("occupancy") -->
      <Baserate currency="USD">298.88</Baserate>
      <Tax currency="USD">42.12</Tax>
      <OtherFees currency="USD">10.00</OtherFees>
      <RatePlanID>060773-P12345</RatePlanID>
    </RoomBundle>
    <!-- Continue providing all available RoomBundle rates under matched
         property for any other occupancies -->
  </Result>
</Transaction>

Ocupação e capacidade

Ao definir pacotes de quartos, é preciso entender a diferença entre ocupação e a capacidade:

Ocupação
O número de hóspedes a que uma Categoria de quarto se destina. Por exemplo, o "Pacote de lua de mel" tem uma ocupação de duas pessoas. Você define o valor da ocupação de um pacote usando o elemento filho <Occupancy> dos elementos <PackageData> ou <RoomBundle>.
Capacidade
O número máximo de pessoas que um espaço pode acomodar fisicamente. A capacidade de um quarto é sempre igual ou maior que a ocupação. Por exemplo, a "Suíte de lua de mel" no seu hotel tem capacidade máxima de seis pessoas, mas você define o preço de um pacote para dois hóspedes. Você define o valor da capacidade de um pacote usando o elemento filho <Capacity> do elemento <RoomData>.

Ao definir o preço de uma Categoria de quarto, você precisa fornecer o preço referente ao número de hóspedes a que a categoria foi destinada (o valor especificado no elemento <Occupancy> da categoria). Se <Occupancy> for definido como dois, o preço do pacote precisa ser para duas pessoas. Não é possível definir <Occupancy> como quatro hóspedes e definir o preço do pacote para dois hóspedes.

Salas compartilhadas

Você também usa a ocupação e a capacidade nos pacotes de quartos para definir preços de acomodações compartilhadas, como hostels. Por exemplo, para definir um preço por pessoa em um dormitório com 8 camas, defina "Ocupação" como 1 e "Capacidade" como 8 e identifique-o como tal no nome <RoomData>. Confira o exemplo.

Atualizar categorias de quarto

Esta seção descreve como remover um pacote de quartos que não está mais disponível e como atualizar o preço de um pacote de quartos existente.

Remoção da categoria de quarto

Os pacotes de quartos são diferentes dos preços de hotéis na forma como você os remove.

Para remover uma combinação de sala ou itinerário do inventário, defina o <Baserate> do elemento <Result> como -1. Para remover um pacote de quartos de um determinado quarto ou itinerário, remova o elemento <RoomBundle> do bloco <Result> na mensagem de transação.

Os pacotes de sala nos seus feeds de dados são considerados um conjunto, que varia de 0 a dezenas deles. Quando você envia pacotes de quartos ao Google, envia o conjunto atual e completo. Não é possível mudar os valores de um pacote de quartos individual para marcar um pacote disponível anteriormente como indisponível. O conjunto de pacotes que estiver na Mensagem de transação mais recente substitui o conjunto atual.

Por exemplo, há os pacotes A, B, C e D. Primeiro, você envia uma mensagem que define o conjunto de pacotes de salas A, B, C e D. Mais tarde, se o pacote B esgotar, você reenvia todo o conjunto com os pacotes A, C e D. Se todas as Categorias de quarto estiverem esgotadas, envie um conjunto vazio de Categorias de quarto.

Ajustes de preço

Para mudar o preço de uma Categoria de quarto, defina o novo <Baserate> no elemento <Result>.

Sempre que você atualiza o bloco <Result> de um quarto/itinerário em suas Mensagens de transação, é necessário incluir um conjunto completo de Categorias de quarto disponíveis para cada <Result>. O Google substitui o conjunto existente de Categorias de quarto pelo novo conjunto. Se você não incluir categorias de quarto em <Result>, o Google vai remover todas as categorias de quarto para esse quarto ou itinerário.

Atualizações de metadados

Você atualiza os metadados do pacote de sala com uma resposta a um <Query> do Google.

Você responde a uma Mensagem de consulta com uma Mensagem de transação que define os metadados de quartos e pacotes para os hotéis especificados. Para mais informações, consulte Mensagens de consulta.