Message Transaction (Données sur un établissement)

Présentation

Le message Transaction ARI (Property Data) définit les informations sur les types de chambres et les formules (ou plans tarifaires) de chaque établissement. Les données sur le type de chambre incluent un identifiant unique (RoomID), un nom localisé, une description et les URL des photos des chambres. Les données de chaque formule comprennent un identifiant unique (PackageID), un nom localisé, une description, le nombre de personnes et des éléments à valeur ajoutée.

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

  • Définissez les données d'une ou plusieurs propriétés.
  • Définissez le type de chambre et les informations sur la formule pour chaque établissement.
  • Contrôlez 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 une formule d'un établissement.

Pour obtenir des exemples de messages Transaction, consultez la section Exemples de transactions (données sur un établissement).

Éléments obligatoires et facultatifs

La référence XML fournit une description des éléments obligatoires et facultatifs. Pour en savoir plus sur les attributs et les éléments enfants, consultez la page Éléments et attributs des transactions (données sur un établissement).

Syntaxe et schémas

Utilisez l'exemple Syntaxe de 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 connaître le schéma du message Transaction, consultez la section Schémas Hotel Ads.

Consignes

Pour créer un message Transaction, procédez comme suit:

Actions :

delta: permet d'ajouter ou de mettre à jour de nouveaux types de chambres et formules (plans tarifaires).

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

Langues acceptées:

Spécifiez une ou deux langues (l'anglais et une langue locale pour la propriété si nécessaire) dans les champs "Nom", "Description" et "Légende". Vous pouvez ajouter plus de deux langues si nécessaire.

Types de chambres et formules:

Lors de la mise à jour d'un type de chambre ou d'une formule, vous devez envoyer toutes les informations correspondantes. Par exemple, lorsque vous ajoutez une photo, vous devez également inclure le nom et la description.

<AllowablePackageIDs> et <AllowableRoomIDs> sont facultatifs. Si ce paramètre n'est pas défini, vous pouvez créer n'importe quelle combinaison de type de chambre et de plan tarifaire. Vous devez toujours envoyer la disponibilité et les tarifs avec les ID du type de chambre et des plans tarifaires. Ces éléments vous permettent de contrôler des produits et de désactiver les combinaisons qui ne sont plus compatibles avec votre système.

Envoyez à Google un message Transaction en cas de modification des types de chambres ou des formules, ou d'informations importantes sur les types de chambres ou les formules à ajouter.

Exemple

Cette section fournit un exemple de base de message Transaction ARI, qui utilise des éléments obligatoires et facultatifs. Pour ajouter ou mettre à jour des types de chambres et des formules, vous devez utiliser une action delta pour ajouter ou mettre à jour les types de chambres et les formules, ou overlay pour remplacer toutes les définitions de type de chambre et de formule (supprime les anciennes entrées).

Vous devez spécifier une ou deux langues (l'anglais et une langue locale pour la propriété si nécessaire) dans les champs "Nom", "Description" et "Légende". Ajoutez ensuite des informations sur les données de propriété, y compris des liens vers des photos.

Pour <PropertyID> et <RoomID>, utilisez les mêmes identifiants 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 garantir que Google affiche correctement vos prix et vos données.

Une fois le 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 la manière de transférer/envoyer le message via la méthode POST, consultez la section Envoyer des messages.

L'exemple suivant montre comment définir le message 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 voir d'autres exemples, par exemple pour découvrir comment utiliser l'action overlay, ajouter un type de chambre et une formule aux données d'un établissement existants, et supprimer les types de chambres et les formules existants, consultez la section Exemples de transactions (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 Transaction.

Scénario 1: Supprimer les données du type de chambre

Comment supprimer les données existantes relatives au type de chambre et/ou à la formule ?

Description

Vous avez envoyé plusieurs types de chambres pour l'établissement, y compris des chambres King et Queen. Tous les types de chambres "Queen" ne sont pas disponibles en cas de rénovation, et seuls les hébergements "King" sont disponibles.

Solution

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

Échantillon

Cet extrait de code 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 d'AllowablePackageID

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

Description

Certaines formules ne sont disponibles que pour certains types de chambres. Par exemple, si votre établissement propose quatre types de chambres (y compris la suite présidentielle) et six formules différentes, mais que seules quelques formules sont éligibles pour la suite présidentielle, vous pouvez spécifier votre éligibilité.

Solution

Envoie un message Transaction mis à jour spécifiant les produits inclus dans le package à l'aide de <AllowablePackageIDs>.

Échantillon

Cet extrait de code XML montre comment utiliser <AllowablePackageIDs> pour spécifier les formules utilisées pour un certain type de chambre. Ici, la formule Penthouse tout compris n'accepte que la formule tout compris ou la formule petit-déjeuner sans frais, tandis que la suite King

<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 les produits à l'aide d'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 de type de chambre et de séjour organisé n'est plus vendue en tant que produit, ou vous souhaitez contrôler les éléments inclus dans un nouveau séjour organisé. Par exemple, vous souhaitez ne spécifier que certains types de chambres, tels que les chambres King et Queen avec vue sur l'océan, dans le cadre d'une formule.

Solution

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

Échantillon

Cet extrait de code XML montre comment utiliser <AllowableRoomID> pour spécifier les types de chambres "King" et "Queen" dans la formule.

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