Mensagem de transação (dados da propriedade)

Visão geral

A mensagem de transação (dados de propriedade) do ARI define as informações sobre os tipos de quarto e pacotes (ou planos de tarifa) de cada propriedade. Os dados de cada tipo de quarto incluem um identificador exclusivo (RoomID), nome localizado, descrição e URLs para fotos do quarto. Os dados de cada pacote incluem um identificador exclusivo (PackageID), nome, descrição, ocupação e benefícios localizados.

Você pode usar uma mensagem de transação para fazer o seguinte:

  • Defina dados para uma ou mais propriedades.
  • Defina o tipo de quarto e as informações do pacote para cada propriedade.
  • Controlar as ofertas de produtos.

Além disso, é possível definir ações para fazer o seguinte:

  • Adicione um tipo de quarto e um pacote a uma propriedade.

  • Remove um tipo de quarto e um pacote de uma propriedade.

  • Adicione pontos de fidelidade, um programa de recompensas, a um pacote ou propriedade.

Para exemplos de mensagens de transação, consulte Exemplos de transação (dados da propriedade).

Elementos obrigatórios e opcionais

A referência XML fornece descrições dos elementos obrigatórios e opcionais. Para detalhes sobre atributos e elementos filhos, consulte Elementos e atributos de transação (dados de propriedade).

Sintaxe e esquemas

Use o exemplo de sintaxe de transação (dados da propriedade) como referência ao criar a mensagem de transação para garantir que você esteja seguindo o formato correto.

Você pode usar uma ferramenta XML de terceiros, como xmllint, para validar seus feeds com os esquemas publicados antes de enviá-los ao Google. Para o esquema de mensagens de transação, consulte Esquemas dos anúncios de hotéis.

Diretrizes

Use as seguintes diretrizes para uma mensagem de transação:

Ações:

delta: use para adicionar ou atualizar novos tipos de quartos e pacotes (planos de tarifas).

overlay: usado para substituir todos os tipos de quarto e pacotes de uma propriedade por um novo conjunto. Inclua informações sobre todos os tipos de quartos e planos de tarifas que você ainda quer vender.

Suporte de linguagem:

Especifique um ou dois idiomas (inglês e um idioma local para a propriedade, se necessário) para os campos "Nome", "Descrição" e "Legenda". É possível adicionar mais de duas línguas, se necessário.

Tipos de quarto e pacotes:

Ao atualizar um tipo de quarto ou pacote, envie todas as informações relacionadas a ele. Por exemplo, ao adicionar uma foto, você também precisa incluir o nome e a descrição.

<AllowablePackageIDs> e <AllowableRoomIDs> são opcionais. Se não forem definidos, qualquer combinação de tipo de quarto e plano de tarifa poderá ser feita. Você ainda precisa enviar disponibilidade e tarifas com os IDs do tipo de quarto e do plano de tarifa. Esses elementos permitem controlar produtos e desativar combinações que seu sistema não oferece mais suporte.

Envie ao Google uma atualização de mensagem de transação sempre que houver uma mudança nos tipos ou pacotes de quartos ou detalhes importantes sobre eles que precisem ser adicionados.

Pontos de fidelidade:

Para incluir ou excluir o programa de recompensas no seu pacote, configure uma configuração de pontos de fidelidade com o Google. Isso vai mostrar os pontos ganhos associados a esse pacote. Saiba mais sobre os pontos de fidelidade.

Use o elemento <MilesIncluded> para definir ou atualizar sua campanha de fidelidade. Consulte Transação(dados da propriedade) para mais informações. Os pontos de fidelidade podem ser incluídos com <PackageData>.

Exemplo

Esta seção fornece um exemplo básico de uma mensagem de transação da ARI usando elementos obrigatórios e opcionais. Para adicionar ou atualizar tipos de quartos e pacotes, use uma ação para delta ou overlay.

É necessário especificar um ou dois idiomas (inglês e um idioma local para a propriedade, se necessário) nos campos "Nome", "Descrição" e "Legenda". Em seguida, adicione informações sobre os dados da propriedade, incluindo links para fotos.

Para <PropertyID> e <RoomID>, use os mesmos IDs que você usa no seu sistema para planos de tarifas e tipos de quarto, respectivamente. A consistência com seu sistema é fundamental para garantir que o Google mostre seus preços e dados corretamente.

Depois de preparar o arquivo, envie-o ao Google por uma mensagem POST para o seguinte endpoint: https://www.google.com/travel/hotels/uploads/property_data

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

O exemplo a seguir mostra como definir a mensagem de transação usando uma ação delta:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="202X-XX-XXT00:00:00-0X:00" id="12345678" partner="partner_key">
  <PropertyDataSet action="delta">
    <Property>PROPERTYID</Property>
      <RoomData>
        <RoomID>ROOMID</RoomID>
        <Name><Text text="ROOM NAME" language="en"/></Name>
        <Description>
          <Text text="ROOM DESCRIPTION TEXT" language="en"/>
        </Description>
        <Capacity>4</Capacity>
        <PhotoURL>
          <Caption><Text text="ROOM PHOTO CAPTION TEXT" language="en"/></Caption>
          <URL>https://LINK TO PHOTO</URL>
        </PhotoURL>
      </RoomData>
      <PackageData>
        <PackageID>BASE</PackageID>
        <Name><Text text="Internet Special" language="en"/></Name>
        <Description><Text text="Direct Booking through Hotel Website" language="en"/></Description>
        <Refundable available="true" refundable_until_days="2" refundable_until_time="12:00"/>
      </PackageData>
  </PropertyDataSet>
</Transaction>

Para mais exemplos, como usar a ação overlay, adicionar um tipo de quarto e um pacote aos dados da propriedade e remover tipos de quarto e pacotes atuais, consulte Exemplos de transação (dados da propriedade).

Tutoriais

Esta seção oferece soluções para cenários que podem ocorrer ao enviar mensagens de transação.

Cenário 1: como remover dados de tipo de quarto

Como faço para remover dados de tipo de quarto e/ou pacote?

Descrição

Você enviou vários tipos de quartos, incluindo quartos King e Queen, para a propriedade. Todos os tipos de quarto Queen estão indisponíveis durante uma reforma, e apenas os tipos de quarto King estão disponíveis no momento.

Solução

  • Não é necessário atualizar a disponibilidade, as tarifas ou o inventário noturno dos IDs de tipo de quarto e pacote que foram removidos ou desativados.
  • Se o tipo de quarto ou pacote foi removido ou desativado, envie uma nova mensagem de transação com action="overlay", que inclui apenas os tipos de quarto e pacotes ainda ativos e exclui o tipo de quarto ou pacote removido.

Exemplo

Este snippet XML mostra como usar a ação overlay para remover um tipo de quarto.

Esta é a ação delta original, que inclui os tipos de quarto King e Queen:

  <PropertyDataSet action="delta">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>King</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Capacity>2</Capacity>
    </RoomData>
    <PackageData>
      <PackageID>Standard</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
      </PackageData>
    <RoomData>
      <RoomID>Queen</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <Capacity>2</Capacity>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
  </PropertyDataSet>

Em seguida, defina overlay para remover o tipo de quarto Queen e manter o tipo King:

  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>King</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Capacity>2</Capacity>
    </RoomData>
    <PackageData>
      <PackageID>Standard</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>

Cenário 2: como controlar produtos usando AllowablePackageIDs

Como controlar produtos (combinações de tipos de quarto e pacotes) quando os pacotes são agrupados por tipo de quarto?

Descrição

Você tem determinados pacotes que só estão disponíveis para determinados tipos de quarto. Por exemplo, se sua propriedade tiver quatro tipos de quarto (incluindo a suíte presidencial) e seis pacotes diferentes, mas apenas alguns pacotes forem qualificados para a suíte presidencial, você poderá especificar a qualificação.

Solução

Envie uma mensagem de transação atualizada que especifica quais produtos estão incluídos no pacote usando <AllowablePackageIDs>.

Exemplo

Este snippet de XML mostra como usar <AllowablePackageIDs> para especificar pacotes usados com um determinado tipo de quarto. Nesse caso, o tipo de quarto "Suíte Penthouse" permite apenas o pacote "Penthouse com tudo incluído" ou "Café da manhã gratuito", enquanto o tipo de quarto "Suíte King" permite apenas o pacote "King com tudo incluído" ou "Aceita animais de estimação".

<RoomData>
  <RoomID>penthouse_suite</RoomID>
  <AllowablePackageIDs>
    <AllowablePackageID>penthouse_all_inclusive</AllowablePackageID>
    <AllowablePackageID>free_breakfast</AllowablePackageID>
  </AllowablePackageIDs>
  <!-- Additional child elements omitted. -->
</RoomData>
<RoomData>
  <RoomID>king_suite</RoomID>
  <AllowablePackageIDs>
    <AllowablePackageID>king_all_inclusive</AllowablePackageID>
    <AllowablePackageID>pet_friendly</AllowablePackageID>
  </AllowablePackageIDs>
  <!-- Additional child elements omitted. -->
</RoomData>
<PackageData>
  <PackageID>penthouse_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>free_breakfast</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>king_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>pet_friendly</PackageID>
</PackageData>

Cenário 3: como controlar produtos usando AllowableRoomIDs

Como controlar produtos (combinações de tipos de quarto e pacotes) quando os tipos de quarto são agrupados por pacote?

Descrição

Um tipo de quarto e uma combinação de pacote não são mais vendidos como um produto ou você quer controlar o que está incluído em um novo pacote. Por exemplo, você quer especificar apenas determinados tipos de quarto, como quartos King e Queen com vista para o mar, com um pacote.

Solução

Envie uma mensagem de transação atualizada que especifique os produtos exatos incluídos no pacote usando o elemento <AllowableRoomIDs>.

Exemplo

Este snippet de XML mostra como usar <AllowableRoomID> para especificar os tipos de quarto King e Queen com vista para o mar no pacote.

<PackageID>RO</PackageID>
<AllowableRoomIDs>
  <AllowableRoomID>king_oceanview</AllowableRoomID>
  <AllowableRoomID>queen_oceanview</AllowableRoomID>
</AllowableRoomIDs>