Message sur les taxes et les frais

Présentation

Le message TaxFeeInfo définit les taxes et les frais applicables à un utilisateur lors de la réservation d'un établissement, en fonction des réglementations fiscales de l'établissement décrites sur le site Web. Pour ajouter des données sur les taxes et les frais, utilisez le message de tarif (OTA_HotelRateAmountNotifRQ).

La seule action compatible avec ce message est overlay, qui permet de remplacer les données sur les taxes et les frais pour chaque établissement. Il est important d'envoyer des mises à jour des taxes et des frais chaque fois qu'il y a des modifications.

Méthodes pour ajouter des taxes et des frais

Il existe deux façons générales d'ajouter des taxes et des frais :

Dans la première méthode, vous spécifiez AmountAfterTax dans le message de tarif. Vous ajoutez les taxes et les frais en envoyant des messages de tarif contenant à la fois les tarifs de base par nuit (hors taxes et frais) et les tarifs totaux par nuit (taxes et frais compris). Étant donné que ces tarifs sont à la nuit, cette approche ne fonctionne que pour les taxes et frais basés sur un pourcentage ou pour les montants fixes par nuit. Les taxes et les frais par séjour ne peuvent pas être utilisés.

La deuxième méthode (recommandée) consiste à n'envoyer que les tarifs de base par nuit exclusifs des taxes et frais dans les messages de tarifs, et à utiliser TaxFeeInfo pour transmettre les taxes et les frais au niveau de la propriété. Les taxes et les frais individuels peuvent toujours être limités à des types de chambres et des plans tarifaires spécifiques, qui s'appliquent à certaines plages de dates.

Cette page décrit et ne fait référence qu'à la méthode privilégiée d'utilisation de TaxFeeInfo et non à la méthode de spécification de AmountAfterTax dans le message de tarification (OTA_HotelRateAmountNotifRQ).

Méthodes de définition des taxes

Vous disposez des options suivantes pour définir les taxes :

  • Base = [salle|personne]
  • Période = [séjour|nuit]
  • Type = [pourcentage|montant]

Lorsque la période est stay et le type percent, Google applique les taxes et les frais pour l'ensemble du séjour, même si une seule date de l'itinéraire chevauche la plage StayDates. Vous ne pouvez pas spécifier l'application d'une taxe et de frais que si TOUTES les dates de l'itinéraire chevauchent la plage de dates du séjour.

Pour obtenir des exemples de différents scénarios liés aux taxes, consultez les tutoriels. Les exemples couvrent certains des principaux scénarios fiscaux, y compris des instructions pour :

  • Taxe en pourcentage
  • Taxe forfaitaire appliquée par établissement
  • Taxe calculée en pourcentage et appliquée uniquement aux nuits suivantes
  • Méthode permettant de remplacer les anciennes taxes par de nouvelles
  • Inclure ou exclure les taxes pour les pays
  • Définir la taxe applicable aux blocs d'annonces entre crochets
  • Définir les taxes et les frais taxables

Les sections suivantes contiennent des consignes générales, un exemple de base et des scénarios d'instructions pour vous aider à ajouter et à mettre à jour vos informations fiscales.

É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 Éléments et attributs TaxFeeInfo.

Syntaxe et schémas

Utilisez l'exemple de syntaxe TaxFeeInfo comme référence lorsque vous créez le message pour vous assurer de respecter 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 de message TaxFeeinfo, consultez la section Schémas Hotel Ads.

Consignes

Cette section présente les consignes générales et les instructions spéciales pour définir les taxes et les frais.

Actions

Superposition
Utilisez l'action overlay pour remplacer toutes les taxes d'une propriété. L'action overlay est l'action par défaut et la seule action acceptée. Toutes les taxes et frais précédents de cet établissement seront supprimés une fois cette mise à jour appliquée.

Général

  • Chaque Tax est évalué et, le cas échéant, calculé en fonction du montant AmountBeforeTax spécifié dans BaseByGuestAmt.

  • Une fois toutes les taxes et tous les frais applicables calculés, ils sont ajoutés au prix de base pour former le prix total.

  • La syntaxe pour <Tax> et <Fee> est identique.

  • Les taxes et les frais peuvent être soumis à des contraintes, par exemple :

    • S'applique uniquement à des types de chambres et des plans tarifaires spécifiques.
    • Ne s'applique qu'aux dates de séjour spécifiques.

    Ces contraintes sont facultatives et vous n'avez pas besoin de définir tous les types de contraintes. Vous pouvez les laisser vides si elles s'appliquent à tous.

  • Envoyez une mise à jour TaxFeeInfo chaque fois que les taxes ou les frais changent.

Exemple

Cette section fournit un exemple de base d'un message TaxFeeInfo utilisant des éléments obligatoires et facultatifs. Une fois votre fichier préparé, vous devez l'envoyer à Google à l'aide d'un message POST à ce point de terminaison :

https://www.google.com/travel/hotels/uploads/taxes

Pour savoir comment envoyer le message par push/POST, consultez Envoyer des messages par push/POST.

Pour l'attribut hotel_id, utilisez l'identifiant unique de l'hôtel 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.

Cet exemple montre comment définir un pourcentage de taxe de 10 % et un montant de frais de 50 $ pour un établissement pour le total du séjour (et non par nuit) :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-20T16:20:00-04:00"
            partner="partner_key"
            id="12345678">
  <Property>
    <ID>HOTELID</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>10</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>50</Amount>
        <Currency>USD</Currency>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Pour obtenir des exemples d'ajout de taxes liées à l'âge et d'autres exemples, consultez la section Exemples de taxes.

Guides pratiques

Cette section fournit des solutions aux scénarios que vous pouvez rencontrer lors de la configuration des taxes et des frais.

Scénario 1 : Ajouter une taxe forfaitaire

Cet exemple de taxe montre comment définir une taxe forfaitaire par propriété.

Description

Vous souhaitez appliquer une taxe fixe pour la chambre ou le séjour par établissement plutôt qu'une taxe proportionnelle.

Solution

Utilisez amount au lieu de percentage pour ajouter l'option de taxe forfaitaire.

Échantillon

Cet exemple montre comment ajouter une taxe forfaitaire à l'aide de amount plutôt que de percentage :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>30</Amount>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Scénario 2 : Cibler les taxes à l'aide de ApplicableNights

Description

Vous souhaitez appliquer une taxe forfaitaire uniquement aux nuits suivantes. Par exemple, des frais obligatoires sont facturés pour l'utilisation quotidienne d'un certain service, qui ne sont pas inclus pour la première nuit, où le ou les clients n'ont pas eu la possibilité d'utiliser ce service particulier.

Solution

Utilisez <ApplicableNights excluded="1"/> pour contrôler les nuits auxquelles des taxes sont appliquées.

Échantillon

Cet exemple montre comment utiliser ApplicableNights :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Amount>50</Amount>
        <ApplicableNights excluded="1"/>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Scénario 3 : Remplacer les anciennes taxes et frais par de nouvelles

Description

Les taxes et frais actuels ont changé et doivent être remplacés par de nouveaux.

Solution

Utilisez l'action overlay pour supprimer toutes les taxes et tous les frais existants.

Échantillon

L'exemple suivant montre comment supprimer toutes les taxes et tous les frais pour un établissement :

    <?xml version="1.0" encoding="UTF-8"?>
    <TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
                id="12345678"
                partner="partner_key">
      <Property action="overlay">
        <ID>Property_1</ID>
      </Property>
    </TaxFeeInfo>

Scénario 4 : Inclure ou exclure des taxes pour des pays

Description

Vous devez inclure la taxe pour certains pays, mais l'exclure pour d'autres. Par exemple, vous devez exclure les taxes pour une confédération plus petite avec des taxes non européennes, tout en taxant tous les autres pays.

Solution

Utilisez les options include ou exclude pour UserCountries type. Utilisez include pour n'appliquer la taxe qu'au pays indiqué ou exclude pour l'appliquer à tous les pays, à l'exception de celui indiqué.

Échantillon

L'exemple suivant montre comment définir des taxes pour les utilisateurs situés en dehors du pays de l'hôtel (Israël) :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <UserCountries type="exclude">
          <Country code="IL"/>
        </UserCountries>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Scénario 5 : Définir une taxe par tranche avec des tranches

Description

Vous souhaitez ajouter une taxe sur la valeur ajoutée (GST) appliquée en fonction des tarifs par nuit.

Solution

Dans ce scénario, supposons que les tranches de taxe TPS du pays cible sont les suivantes:

  • Aucune taxe si le tarif par nuit est inférieur ou égal à 1 000.
  • 12% de taxe si le tarif par nuit est supérieur à 1 000 et inférieur ou égal à 7 500.
  • 18% de taxe si le tarif par nuit est supérieur à 7 500.

Échantillon

L'exemple suivant montre comment définir une taxe par tranche avec des tranches :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-28T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Brackets base_amount="0">
          <Bracket starts_at="1000.01" amount="12"/>
          <Bracket starts_at="7500.01" amount="18"/>
        </Brackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Scénario 6: Définir les taxes et les frais imposables

Description

Vous souhaitez ajouter une taxe (par exemple, la TVA) et un autre frais de service qui s'appliquent également à cette taxe.

Solution

Ce scénario examine deux exemples de cas d'utilisation des frais imposables :

  • Les taxes et les frais taxables sont définis comme des frais exprimés en pourcentage.
  • La taxe est facturée en pourcentage, tandis que les frais taxables sont facturés à un montant fixe par séjour.

Exemples

Frais imposables en pourcentage

Dans cet exemple, le AmountBeforeTax est de 100 $, la taxe sur la valeur ajoutée est de 18 % et les frais de service supplémentaires sont de 5 %. Le pourcentage total des frais imposables est donc de 5,9 % (5 * 1,18) et le tarif total s'élève à 123,90 $ [= 118 $ (18 % de TPS) + 5,9 $ (5,9 % de frais de service)].

L'extrait de code suivant définit la taxe (TPS) et les frais taxables (frais de service) en pourcentages :

<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
  id="12345678"
  partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>18</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>5.9</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Montant des frais imposables

Dans cet exemple, une AmountBeforeTax de 100 $, une taxe de 18 % sur la TPS et un tarif forfaitaire supplémentaire de 20 $, soit des frais imposables de 23,60 $ (20 x 1,18 $) et un tarif total de 141,60 $ [= 118 $ (18% de TPS) + 23,60 $ (taux fixe de 20 $)]

Dans l'extrait de code suivant, la taxe (GST) est exprimée en pourcentage et la taxe applicable (frais de service) correspond à un montant fixe:

<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
  id="12345678"
  partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>18</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>23.6</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>