Message Transaction (Données sur un établissement)

Présentation

Le message ARI Transaction (Données sur un établissement) définit les informations sur les types de chambres et les formules (ou plans tarifaires) de chaque établissement. Chaque type de chambre comprend un identifiant unique (RoomID), un nom localisé, une description et des URL vers des photos de la chambre. Chaque package data inclut un identifiant unique (PackageID), un nom localisé, une description, un nombre de personnes et des avantages supplémentaires.

Vous pouvez utiliser un message de transaction pour effectuer les opérations suivantes:

  • Définissez des données pour une ou plusieurs propriétés.
  • Définissez le type de chambre et les informations sur les formules pour chaque établissement.
  • Contrôler les offres de produits

Vous pouvez également définir des actions pour effectuer les opérations suivantes:

  • Ajoutez un type de chambre et une formule à un établissement.

  • Supprimez un type de chambre et un package d'une propriété.

  • Ajoutez des points de fidélité ou un programme de fidélité à un package ou à une propriété.

Pour obtenir des exemples de messages de transaction, consultez Exemples de messages Transaction (Données sur un établissement).

Éléments obligatoires et facultatifs

La documentation de référence XML fournit des descriptions des éléments obligatoires et facultatifs. Pour en savoir plus sur les attributs et les éléments enfants, consultez la section Éléments et attributs Transaction (Données sur un établissement).

Syntaxe et schémas

Utilisez l'exemple de syntaxe Transaction (Données sur un établissement) comme référence lorsque vous créez le message Transaction pour vous assurer que vous respectez le format approprié.

Vous pouvez utiliser un outil XML tiers tel que xmllint pour valider vos flux avec les schémas publiés avant de les envoyer à Google. Pour le schéma du message Transaction, consultez la section Schémas Hotel Ads.

Consignes

Pour un message Transaction, suivez les consignes suivantes:

Actions :

delta: permet d'ajouter ou de mettre à jour des types de chambres et des packages (forfaits tarifaires).

overlay: permet de remplacer tous les types de chambres et les packages d'un établissement par un nouvel ensemble. Doit inclure des informations sur tous les types de chambres et les plans tarifaires que vous souhaitez toujours vendre.

Langues acceptées:

Indiquez une à deux langues (anglais et une langue locale pour l'établissement, si nécessaire) pour les champs "Nom", "Description" et "Libellé". Vous pouvez ajouter plus de deux langues si nécessaire.

Types de chambres et formules:

Lorsque vous mettez à jour un type de chambre ou un séjour organisé, vous devez envoyer toutes les informations associées à ce type de chambre ou à ce séjour organisé. Par exemple, lorsque vous ajoutez une photo, vous devez également inclure le nom et la description.

<AllowablePackageIDs> et <AllowableRoomIDs> sont facultatifs. Si ces valeurs ne sont pas définies, n'importe quelle combinaison de type de chambre et de plan tarifaire peut être effectuée. Vous devez toujours envoyer les disponibilités et les tarifs avec les ID de type de chambre et de plan tarifaire. Ces éléments vous permettent de contrôler les produits et de désactiver les combinaisons que votre système n'est plus en mesure de prendre en charge.

Envoyez à Google une mise à jour du message Transaction chaque fois qu'un changement est apporté aux types de chambres ou aux formules, ou que des informations importantes sur les types de chambres ou les formules doivent être ajoutées.

Points de fidélité:

Pour inclure ou exclure le programme de fidélité dans votre package, configurez une configuration de points de fidélité avec Google. Les points gagnés associés à ce package s'affichent. En savoir plus sur les points de fidélité

Utilisez l'élément <MilesIncluded> pour définir ou mettre à jour votre campagne de fidélité. Pour en savoir plus, consultez Transaction(Property Data). Les points de fidélité peuvent être inclus avec <PackageData>.

Exemple

Cette section fournit un exemple de base d'un message de transaction ARI utilisant des éléments obligatoires et facultatifs. Pour ajouter ou mettre à jour des types de chambres et des formules, utilisez une action pour delta afin d'ajouter ou de mettre à jour des types de chambres et des formules, ou pour overlay afin de remplacer toutes les définitions de types de chambres et de formules (les anciennes entrées sont supprimées).

Vous devez spécifier une à deux langues (anglais et une langue locale pour l'établissement, si nécessaire) pour les champs "Nom", "Description" et "Sous-titres". Ajoutez ensuite des informations sur la propriété, y compris des liens vers des photos.

Pour <PropertyID> et <RoomID>, utilisez les mêmes ID que ceux que vous utilisez dans votre système pour les plans tarifaires et les types de chambres (respectivement). La cohérence avec votre système est essentielle pour vous assurer que Google affiche correctement vos prix et vos données.

Une fois votre fichier préparé, vous devez l'envoyer à Google via un message POST au point de terminaison suivant: https://www.google.com/travel/hotels/uploads/property_data

Pour en savoir plus sur l'envoi du message par push/POST, consultez la section Envoyer des messages.

L'exemple suivant montre comment définir le message de transaction à l'aide d'une action 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>

Pour obtenir d'autres exemples, par exemple sur l'utilisation de l'action overlay, l'ajout d'un type de chambre et d'une formule aux données d'un établissement existant, et la suppression de types de chambres et de formules existants, consultez la section Exemples de messages Transaction (Données sur un établissement).

Guides pratiques

Cette section fournit des solutions aux scénarios que vous pouvez rencontrer lors de l'envoi de messages de transaction.

Scénario 1: Supprimer les données sur les types de chambre

Comment supprimer des données de type de chambre et/ou de formule existantes ?

Description

Vous avez envoyé plusieurs types de chambres, y compris des chambres doubles et des chambres doubles avec lit queen, pour l'établissement. Tous les types de chambres avec lit queen sont indisponibles pendant les travaux de rénovation. Seuls les types de chambres avec lit king sont actuellement disponibles.

Solution

  • Vous n'avez pas besoin de mettre à jour la disponibilité, les tarifs ni l'inventaire pour les types de chambres et les ID de formules qui ont été supprimés ou désactivés.
  • Si le type de chambre ou le package a été supprimé ou désactivé, envoyez un nouveau message Transaction avec action="overlay", qui n'inclut que les types de chambres et les packages toujours actifs, et exclut le type de chambre ou le package supprimé.

Échantillon

Cet extrait XML montre comment utiliser l'action overlay pour supprimer un type de chambre.

Voici l'action delta d'origine, qui inclut les types de chambres King et 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>

Vous pouvez ensuite définir overlay pour supprimer le type de chambre Queen et conserver le type de chambre 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>

Scénario 2: Contrôler les produits à l'aide de AllowablePackageIDs

Comment contrôler les produits (combinaisons de types de chambres et de formules) lorsque les formules sont regroupées par type de chambre ?

Description

Certains packages ne sont disponibles que pour certains types de chambres. Par exemple, si votre établissement propose quatre types de chambres (y compris une suite présidentielle) et six packages différents, mais que seuls quelques packages sont éligibles à la suite présidentielle, vous pouvez spécifier l'éligibilité.

Solution

Envoyez un message de transaction mis à jour qui spécifie les produits inclus dans le package à l'aide de <AllowablePackageIDs>.

Échantillon

Cet extrait de code XML montre comment utiliser <AllowablePackageIDs> pour spécifier les packages utilisés avec un certain type de chambre. Ici, le type de chambre "Suite Penthouse" n'autorise que le forfait tout compris Penthouse ou le forfait petit-déjeuner gratuit, tandis que le type de chambre "Suite King" n'autorise que le forfait tout compris King ou le forfait animaux acceptés.

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

Scénario 3: Contrôler des produits à l'aide de AllowableRoomIDs

Comment contrôler les produits (combinaisons de types de chambres et de formules) lorsque les types de chambres sont regroupés par formule ?

Description

Une combinaison type de chambre et séjour organisé n'est plus vendue en tant que produit, ou vous souhaitez contrôler ce qui est inclus dans un nouveau séjour organisé. Par exemple, vous souhaitez n'indiquer que certains types de chambres, comme les chambres doubles et les chambres doubles avec vue sur l'océan, dans un package.

Solution

Envoyez un message de transaction mis à jour qui spécifie les produits exacts inclus dans le package à l'aide de l'élément <AllowableRoomIDs>.

Échantillon

Cet extrait XML montre comment utiliser <AllowableRoomID> pour spécifier les types de chambres King et Queen avec vue sur l'océan dans le package.

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