Offres de chambres

Les offres de chambres vous permettent de définir plusieurs types de chambres pour un même établissement ou de combiner un itinéraire de chambre avec des caractéristiques tarifaires (des services supplémentaires proposés avec un tarif et des conditions de vente) à vos utilisateurs au-delà du prix standard.

Concepts clés et workflow

Avec les offres de chambres, vous pouvez proposer des combinaisons supplémentaires de types de chambres physiques avec différents forfaits de services.

L'image suivante présente des exemples d'offres de chambres:

Dans cet exemple, le premier lot correspond à la chambre de base, avec une remise pour un seul adulte. Le deuxième est un type de chambre différent qui peut accueillir jusqu'à trois adultes. Le troisième est un autre type de chambre dans la même propriété. Le quatrième est un package "premium" de la chambre de base qui peut inclure le petit-déjeuner gratuit ou un départ ultérieur.

Les images suivantes illustrent des exemples de caractéristiques tarifaires:

L'affichage des offres de chambres et des fonctionnalités tarifaires dans les résultats de recherche suit le même processus de sélection que les tarifs des chambres standards.

Offres de chambre

Vous définissez les offres de chambres et les caractéristiques tarifaires dans les messages Transaction. L'élément racine d'un message Transaction est <Transaction>.

La structure du message Transaction dépend de ce que vous faites : définir les métadonnées de l'offre de chambres ou de la fonctionnalité tarifaire, ou mettre à jour le prix ou la disponibilité de l'offre.

Métadonnées
Définissez les métadonnées d'offre de chambres et de caractéristiques tarifaires avec <PackageData> dans un élément <PropertyDataSet>. Pour en savoir plus, consultez Définir des métadonnées de chambres et de formules. Les offres de chambres utilisent des éléments <RoomData> existants pour la description des salles physiques.
Prix et disponibilités
Définissez les tarifs et les disponibilités d'offres de chambres avec l'élément <RoomBundle> dans un <Result> pour chaque combinaison séjour/séjour. Pour en savoir plus, consultez la section Définir la tarification et la disponibilité.

Le tarif, les taxes et les autres frais de la chambre de base sont obligatoires sous <Result> lorsqu'ils ne sont pas utilisés avec les offres de chambres et peuvent être supprimés lorsqu'ils sont utilisés avec des offres de chambres. Si vous proposez des offres de chambres avec un compte actif, procédez comme suit:

  1. Incluez le tarif, les taxes et les autres frais de la chambre de base dans <Result>, puis ajoutez une offre de chambres correspondant à l'offre de base.

  2. Si nécessaire, définissez d'autres offres de chambres dans le même bloc <Result> pour les autres types de chambres de cet établissement ou pour différents packages de services.

  3. Une fois l'offre de chambres lancée, supprimez le tarif de la chambre de base, les taxes et les autres frais.

Métadonnées de l'offre de chambres

Lorsque vous définissez des offres de chambres et des caractéristiques tarifaires, vous spécifiez généralement à l'avance la description, les services supplémentaires qui font partie du tarif et d'autres informations sur l'offre. Ces informations sont appelées "métadonnées d'offre de chambres". Vous faites ensuite référence à ces métadonnées dans vos mises à jour des prix, mais ne les incluez pas dans les messages de mise à jour des prix.

Lorsque vous définissez des offres de chambres, utilisez les éléments <RoomData> existants pour les descriptions des chambres physiques, et les éléments <PackageData> pour les éléments tarifaires et les termes qui ne font pas partie de la description des chambres physiques.

L'utilisation des éléments <RoomData> et <PackageData> peut considérablement réduire la taille de votre liste d'hôtels et de votre flux de prix d'hôtel, car elle réduit la quantité de données répétitives envoyées dans les messages Transaction.

Par exemple, des données telles que le nom et la description d'une chambre sont généralement répétées pour chaque itinéraire. Vous pouvez utiliser les éléments <RoomData> et <PackageData> pour définir ce type de données une fois. Les données d'offres de chambres spécifiques au séjour sont ensuite fusionnées avec les définitions de chambres et de formules stockées, afin de les présenter à l'utilisateur final.

Google met en correspondance vos métadonnées avec les données spécifiques à votre séjour pour afficher le contenu de vos annonces. Un traitement spécial permet de combiner les noms et les descriptions des éléments <RoomData> et <PackageData>. Ainsi, la chambre physique peut être décrite dans <RoomData>, et les caractéristiques tarifaires et les détails des formules se trouvent dans <PackageData>.

Si vous définissez à la fois les données sur les chambres et les données sur les séjours organisés pour une même chambre ou offre de chambres, Google les affiche dans le résultat publicitaire, séparés par un trait d'union.

Consignes relatives aux photos

Lorsque vous envoyez des photos de chambres, suivez ces quelques consignes pour les présenter aux utilisateurs:

  • Envoyez des photos pour chaque type de chambre, y compris des photos de chambres accessibles, par exemple des pièces accessibles avec des éléments de salle de bain tels qu'une douche à l'italienne.

  • Incluez au moins quatre photos de la chambre et au moins une photo de la salle de bain.

  • Les photos doivent représenter la chambre elle-même plutôt que l'établissement. Les photos les plus importantes sont le lit, la pièce entière, la salle de bain, l'espace de vie et la vue de la pièce (avec le reste de la pièce sur la même photo), et, le cas échéant, le balcon, le patio ou la terrasse.

    Il peut également être utile pour prendre des photos du bureau, d'une cuisine, d'une cafetière/théière et d'éléments distinctifs en chambre.

  • Évitez d'insérer des photos de personnes ou de biens (par exemple, des services extérieurs ou immobiliers), de la vue ou du tourisme, et de la nourriture.

  • Évitez les gros plans d'objets, tels que des gros plans sur des tiges.

  • Évitez le branding et les marques, bien que les articles de toilette étiquetés ou de marque soient adaptés à une photo qui capture la totalité de la salle de bain. Les photos ne doivent pas comporter de grands blocs de texte, de logos ni de filigranes.

  • Fournissez des photos standards en mode paysage (horizontal) avec un champ de vision large. Évitez les images fisheye et les photos déformées. Prenez des photos avec la plus haute résolution pour un meilleur classement. Vous n'avez pas besoin de soumettre la même photo dans différentes résolutions.

Priorité des données

Les données des offres de chambres sont recueillies auprès de toutes les sources et combinées à l'aide de règles de priorité afin de produire les données finales pour un hôtel, un séjour et une offre de chambres donnés. Voici l'ordre de priorité:

  1. (Données les plus faibles) Données des partenaires
  2. Données de propriété
  3. <RoomData>, où <RoomID> correspond à <RoomID> dans le bloc <RoomBundle>
  4. <PackageData>, où <PackageID> correspond à <PackageID> dans le bloc <RoomBundle>
  5. (le plus élevé) <RoomBundle>

Définir la tarification et la disponibilité

Pour définir les tarifs et la disponibilité d'une offre de chambres, utilisez un élément <RoomBundle> dans un message Transaction pour chaque combinaison de séjour ou de séjour. L'élément <RoomBundle> doit se trouver dans l'élément <Result>. Vous trouverez ci-dessous un exemple de code pour deux éléments <RoomBundle>. Notez que, dans cet exemple, les deux éléments <RoomBundle> font référence aux métadonnées de la chambre et de la formule à l'aide de <RoomID> et de <PackageID>.

Pour chaque <Result>, l'ensemble d'offres de chambres contenu remplace l'ensemble existant pour cette combinaison d'établissement ou de séjour. Si vous ne définissez aucune offre de chambres ni aucun élément tarifaire dans l'élément <Result>, toutes les offres de chambres sont supprimées, et seule la chambre de base pour cet hôtel ou séjour s'affiche dans les résultats de recherche.

Veillez à utiliser des éléments tels que <Name> pour rendre vos offres de chambres plus attrayantes pour les clients potentiels et assurez-vous qu'elles correspondent à la page de destination de l'hôtel. Dans cet exemple, vous devez définir les noms et d'autres informations descriptives dans les métadonnées.

<RatePlanID> est facultatif et représente l'identifiant unique d'une combinaison chambre/offre. Nous vous recommandons vivement d'utiliser RatePlanID comme variable pour créer l'URL dynamique de votre page de destination (anciennement "point de vente"). Pour en savoir plus, consultez Utiliser des variables et des conditions.

Les éléments suivants sont facultatifs dans les offres de chambres:

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

Lorsque vous implémentez l'offre de chambres dans un compte actif, supprimez <Baserate> une fois l'offre de chambres activée.

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

Définir les métadonnées de chambres et de formules

Pour définir des métadonnées d'offres de chambres, utilisez les éléments <PackageData> et <RoomData> dans l'élément <PropertyDataSet> d'un message Transaction.

Vous définissez les métadonnées des chambres et des séjours organisés dans un message Transaction distinct des données sur les tarifs et les disponibilités. Si vous définissez ces données à l'avance, vos mises à jour des prix n'auront pas besoin d'inclure des informations répétitives comme les descriptions, les URL des photos, les services proposés et d'autres données sur l'ensemble des chambres ou des séjours.

Google stocke les métadonnées pour vous et les insère dans vos annonces lors de leur affichage. Vous pouvez modifier les métadonnées des chambres et des formules à tout moment en envoyant un nouveau message Transaction.

Dans le message Transaction, vous définissez un ID de package et un ID de chambre sur chaque bloc que vous référencez ensuite dans vos blocs <Result> de mises à jour des prix.

Si les données de la chambre et de la formule changent (par exemple, si vous ajoutez un type de chambre dans un établissement, envoyez un nouveau message Transaction contenant les données de chambre et de formule mises à jour), Google remplace les métadonnées existantes de la chambre ou de la formule par les nouvelles données.

Google vous recommande de définir des métadonnées lors de la configuration initiale. Après avoir prédéfini les métadonnées, il vous suffit de référencer les valeurs <RoomID> et <PackageID> dans vos mises à jour de tarifs au lieu d'inclure à nouveau toutes ces informations. Google utilise ces identifiants pour faire correspondre les chambres et les offres de chambres aux métadonnées stockées. Cela peut réduire considérablement la taille globale de vos messages Transaction.

Étant donné que les prix des combinaisons de chambres ou de séjours changent beaucoup plus fréquemment que les descriptions de chambre ou de séjour organisé, définir les métadonnées une fois avant d'y faire référence est une utilisation bien plus efficace des messages Transaction. De plus, vous pouvez éliminer les erreurs telles que les descriptions de chambres incompatibles en utilisant des métadonnées plutôt qu'en définissant les données de façon intégrée.

Voici la méthode recommandée et la plus efficace pour définir séparément les métadonnées et les tarifs:

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

Nombre de personnes et capacité

Lorsque vous définissez des offres de chambres, vous devez comprendre la différence entre l'occupation et la capacité:

Nombre de personnes
Nombre d'invités auxquels l'offre de chambres est destinée. Par exemple, le "forfait lune de miel" possède une occupation pour deux personnes. Vous définissez la valeur d'occupation d'un package à l'aide de l'élément enfant <Occupancy> des éléments <PackageData> ou <RoomBundle>.
Capacité
Nombre maximal de personnes pouvant accueillir physiquement une chambre. La capacité d'une salle est toujours égale ou supérieure à l'occupation. Par exemple, la "Suite Lune de miel" de votre hôtel peut accueillir six personnes, mais vous proposez un tarif pour deux personnes. Vous définissez la valeur de la capacité d'un package à l'aide de l'élément enfant <Capacity> de l'élément <RoomData>.

Lorsque vous définissez le prix d'une offre de chambres, vous devez indiquer le prix correspondant au nombre de personnes pour lequel l'offre est prévue (c'est-à-dire la valeur spécifiée dans l'élément <Occupancy> de l'offre). Si <Occupancy> est défini sur deux, le prix de ce package doit être pour deux personnes. Vous ne pouvez pas définir <Occupancy> sur quatre personnes et définir le prix du lot pour deux personnes.

Salles partagées

Vous pouvez également utiliser l'occupation et la capacité dans les offres de chambres afin de définir les prix pour les hébergements partagés, par exemple l'auberge de jeunesse. Par exemple, pour définir le prix par personne dans un dortoir comportant 8 lits, vous devez définir le nombre de personnes sur 1 et la capacité sur 8, puis identifier le prix dans le nom de <RoomData>. Voir un exemple

Modifier les offres de chambres

Cette section explique comment supprimer une offre de chambres qui n'est plus disponible et comment mettre à jour son prix.

Suppression de l'offre de chambres

Les offres de chambres sont différentes des prix de l'hôtel selon la façon dont vous les supprimez.

Pour supprimer une combinaison de chambre ou de séjour de l'inventaire, définissez la valeur <Baserate> de l'élément <Result> sur -1. Pour supprimer une offre de chambres pour une chambre ou un séjour donné, supprimez l'élément <RoomBundle> du bloc <Result> dans le message Transaction.

Les offres de chambres de vos flux de données sont considérées comme un ensemble (nombre compris entre 0 et plusieurs dizaines). Lorsque vous envoyez des offres de chambres à Google, vous envoyez l'ensemble actuel. Vous ne modifiez pas les valeurs d'une offre de chambres individuelle pour marquer une offre précédemment disponible comme indisponible. L'ensemble de lots figurant dans le message Transaction le plus récent remplace l'ensemble actuel.

Par exemple, il existe des offres groupées A, B, C et D. Vous commencez par envoyer un message qui définit l'ensemble des offres de chambres A, B, C et D. Ensuite, si le lot B n'est plus disponible, vous renvoyez l'ensemble complet avec les lots A, C et D uniquement. Si toutes les offres de chambres sont épuisées, envoyez une liste vide.

Ajustements des prix

Pour modifier le prix d'une offre de chambres, définissez la nouvelle<Baserate> <Result>.

Chaque fois que vous mettez à jour le bloc <Result> d'une chambre ou d'un séjour dans vos messages Transaction, vous devez inclure un ensemble complet d'offres de chambres pour chaque élément <Result>. Google remplace l'ensemble d'offres de chambres existant par le nouvel ensemble. Si vous n'incluez aucune offre de chambres dans <Result>, Google supprime toutes les offres de chambres pour cette chambre ou ce séjour.

Mises à jour des métadonnées

Vous mettez à jour les métadonnées de l'offre de chambres en réponse à un élément <Query> de Google.

Vous répondez à un message de requête avec un message Transaction qui définit les métadonnées de la chambre et de la formule pour les hôtels spécifiés. Pour en savoir plus, consultez Messages de requête.