Présentation
Le message "Promotions" définit les règles de remise des tarifs à l'aide de OTA_HotelRateAmountNotifRQ. Pour chaque tarif, les promotions définies sont évaluées et la remise maximale autorisée est appliquée. Ce type de message est facultatif. Vous n'avez besoin de définir des promotions que si elles sont utilisées dans votre système pour appliquer des remises sur les tarifs.
Vous pouvez combiner des promotions et les appliquer à différents attributs utilisateur, tels que les types d'appareils (mobile, tablette, ordinateur) et les codes pays.
Pour obtenir des exemples de différents scénarios liés aux promotions, consultez Procédure.
Les sections suivantes présentent des consignes générales, un exemple de base et des scénarios pratiques pour vous aider à ajouter et à modifier des promotions.
Consignes
Cette section présente les consignes générales et les instructions spéciales pour configurer les promotions.
Respectez les consignes suivantes concernant les promotions :
Actions
- Supprimer
- Utilisez une action
deletedans l'élément<Promotion>pour supprimer une seule promotion à l'aide de son ID. - Superposition
- Utilisez une action
overlaydans l'élément<HotelPromotions>pour remplacer toutes les promotions d'un établissement. - Delta
- Si aucune action n'est spécifiée, toutes les promotions indiquées dans
<HotelPromotions>sont ajoutées ou remplacées. Si une promotion avec cet ID n'a jamais été ajoutée ou a été supprimée, elle est ajoutée. Si une promotion portant cet ID existe déjà, elle est écrasée par la nouvelle définition.
Général
Il peut y avoir une ou plusieurs promotions pour chaque propriété, et chaque promotion est soumise à un ensemble de conditions. Cette promotion ne peut être appliquée que si les conditions sont remplies.
Les promotions s'appliquent au tarif de l'itinéraire. Il n'est pas possible de définir une remise maximale par occupant.
Si vous souhaitez qu'une promotion ne s'applique qu'à une date, un type de chambre ou un plan tarifaire spécifiques, indiquez-le dans les conditions de cette promotion. Si la promotion ne s'applique pas à une date, un type de chambre ou un plan tarifaire spécifiques, vous n'avez pas besoin de les définir.
Chaque promotion est associée à un établissement spécifique. Si vous utilisez la même promotion pour plusieurs propriétés, vous devez l'envoyer séparément pour chacune d'elles. Pour spécifier l'identifiant de votre propriété, utilisez l'attribut
hotel_idde l'élément<HotelPromotions>.Vous pouvez inclure jusqu'à 99 promotions. Contactez votre TAM Google si vous devez inclure plus d'éléments.
Utilisez l'élément
<Stacking>pour spécifier comment combiner les promotions. Par défaut, Google utilise le type d'empilementbase, ce qui signifie que la meilleure promotion de base éligible est sélectionnée et appliquée en premier, avant les autres promotions. Notez quebasene peut être combiné qu'avecsecondouany, et non avec un autrebaseounone.Même si plusieurs promotions peuvent être appliquées ensemble, il est possible que cette combinaison ne soit pas celle qui est utilisée si une autre promotion unique ou une autre combinaison de promotions offre une remise plus importante. La promotion (ou la combinaison de promotions) offrant la plus grande remise est appliquée à la réservation lorsque plusieurs promotions (ou combinaisons de promotions) sont éligibles.
Envoyez un message de mise à jour des promotions chaque fois que des modifications affectent vos promotions.
Problèmes liés aux taxes
La meilleure promotion (ou la meilleure combinaison de promotions) est appliquée au montant AmountAfterTax. Si seul AmountBeforeTax est spécifié, les promotions sont appliquées à AmountBeforeTax.
Exemple
Cette section fournit un exemple de base de message Promotions utilisant des éléments obligatoires et facultatifs. Une fois votre fichier préparé, envoyez-le à Google via un message POST à ce point de terminaison :
https://www.google.com/travel/hotels/uploads/promotions
Pour savoir comment envoyer/publier le message, consultez Envoyer des messages.
Pour l'attribut hotel_id de <HotelPromotions>, utilisez l'ID d'hôtel unique que vous avez utilisé dans votre système pour identifier l'établissement. Cette valeur doit correspondre à l'identifiant de l'hôtel spécifié à l'aide de <id> dans l'élément <listing> du flux Hotel List Feed. La cohérence avec votre système est essentielle pour vous assurer que Google affiche correctement vos données.
UserCountry permet de répertorier les positions géographiques (pays) des utilisateurs éligibles à la promotion. Si cet élément est spécifié, seuls les utilisateurs dans les pays répertoriés bénéficient d'un tarif réduit.
Cet exemple montre comment définir une remise de 15 % pour un séjour prolongé pour les utilisateurs aux États-Unis et en Italie :
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123_abc"
timestamp="2022-05-30T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="15"/>
<UserCountries>
<Country code="US"/>
<Country code="IT"/>
</UserCountries>
</Promotion>
</HotelPromotions>
</Promotions>
Pour obtenir d'autres exemples, consultez Exemples de promotions.
Guides pratiques
Cette section fournit des solutions aux scénarios que vous pouvez rencontrer lors de la configuration des promotions.
Scénario 1 : Ajouter une promotion de remise pour un séjour prolongé
Description
Vous souhaitez proposer des nuits à prix réduit certains jours d'un séjour prolongé.
Solution
Utilisez le paramètre FreeNights pour personnaliser le type de remise appliqué en fonction du nombre de nuits de séjour.
Échantillon
Cet exemple montre comment ajouter une remise de 20 % pour deux nuits pour chaque séjour de sept nuits pour la plage de dates de réservation spécifiée. Pour un itinéraire de 15 nuits, une remise de 20 % s'applique à un total de 4 nuits.
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-05T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingDates>
<DateRange start="2022-02-01" end="2022-06-30"/>
</BookingDates>
<Discount>
<FreeNights stay_nights="7"
discount_nights="2"
discount_percentage="20"
night_selection="cheapest"
repeats="true"/>
</Discount>
</Promotion>
</HotelPromotions>
</Promotions>
Scénario 2 : Définir les types d'appareils
Vous définissez devices pour spécifier les appareils des utilisateurs éligibles à la promotion. Si cet élément est spécifié, seuls les utilisateurs sur les appareils répertoriés bénéficient d'un tarif réduit.
Description
Vous souhaitez spécifier le type d'appareil utilisateur éligible à la promotion.
Solution
Définissez le type d'appareil sur une ou plusieurs des valeurs suivantes : desktop, tablet ou mobile.
Échantillon
L'exemple suivant montre comment spécifier une remise de 25 % pour les utilisateurs de mobiles et de tablettes :
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-20T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="25"/>
<Devices>
<Device type="mobile"/>
<Device type="tablet"/>
</Devices>
</Promotion>
</HotelPromotions>
</Promotions>
Scénario 3 : Remplacer les anciennes promotions par de nouvelles
Description
L'ensemble actuel de promotions pour un établissement est obsolète ou incorrect et doit être remplacé par un tout nouvel ensemble.
Solution
Utilisez l'action overlay pour remplacer les promotions.
Échantillon
L'exemple suivant montre les deux remises initiales de 20 % et 30 % pour l'établissement.
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-20T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingDates>
<DateRange start="2022-06-01" end="2022-07-31"/>
</BookingDates>
<Discount percentage="20"/>
</Promotion>
<Promotion id="2">
<BookingDates>
<DateRange start="2022-08-01" end="2022-08-31"/>
</BookingDates>
<Discount percentage="30"/>
</Promotion>
</HotelPromotions>
</Promotions>
Cet exemple montre ensuite comment utiliser overlay pour remplacer les deux promotions existantes par une seule promotion offrant une remise de 15 % pour l'établissement.
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-25T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1" action="overlay">
<Promotion id="1">
<BookingDates>
<DateRange start="2022-06-01" end="2022-07-31"/>
</BookingDates>
<Discount percentage="15"/>
</Promotion>
</HotelPromotions>
</Promotions>
Scénario 4 : Supprimer une ou plusieurs promotions
Description
Vous souhaitez supprimer une ou plusieurs promotions (sans les remplacer), car l'établissement a supprimé toutes ses promotions sans en définir de nouvelles, ou vous avez fait une erreur et devez la corriger.
Solution
Utilisez l'action delete si vous souhaitez supprimer uniquement des promotions individuelles spécifiques pour une propriété. Utilisez l'action overlay (et non delete) pour supprimer toutes les promotions existantes sans les remplacer.
Pour savoir comment remplacer des promotions à l'aide de overlay, consultez Scénario 3.
Exemples
L'exemple suivant montre comment supprimer une seule promotion pour un établissement :
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-20T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1" action="delete"/>
</HotelPromotions>
</Promotions>
Cet exemple montre comment supprimer toutes les promotions d'un établissement sans les remplacer :
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-20T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1" action="overlay"/>
</Promotions>
Scénario 5 : Cumuler des promotions
L'empilement indique comment combiner les promotions. Si aucune valeur n'est spécifiée, type est supposé être base, ce qui signifie que la meilleure promotion de base éligible est sélectionnée et appliquée en premier, avant les autres promotions. Lorsque l'attribut type de Stacking est défini sur any, il peut être combiné avec n'importe quelle autre promotion.
Description
Vous souhaitez que l'utilisateur puisse utiliser plusieurs promotions en même temps pour le même établissement.
Solution
Utilisez l'empilement pour définir plusieurs remises par propriété. Une pile peut comporter au maximum un base et un second, mais un nombre illimité de any. De plus, any peut être combiné avec les autres types, à l'exception de none.
Échantillon
Cet exemple montre comment empiler les types d'empilement base, second et any. Pour une remise combinée de 15 %, 25 % et 10 %, un prix de 100 $revient à 57,38 $ (100 × 0,85 × 0,75 × 0,9).
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
id="123"
timestamp="2022-05-20T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="15"/>
<Stacking type="base"/>
</Promotion>
<Promotion id="2">
<Discount percentage="25"/>
<Stacking type="second"/>
</Promotion>
<Promotion id="3">
<Discount percentage="10"/>
<Stacking type="any"/>
</Promotion>
<Promotion id="4">
<Discount percentage="40"/>
<Stacking type="none"/>
</Promotion>
</HotelPromotions>
</Promotions>
Notez que la remise combinée pour les promotions cumulables 1 à 3 est plus intéressante que celle de la promotion 4. La promotion 4 ne peut pas être combinée avec d'autres promotions en raison de son type de cumul (none). Si la promotion 4 offrait une remise de 43 % ou plus, elle serait utilisée à la place de la combinaison des promotions 1 à 3.