Infos sur les taxes

Requests

Syntaxe

Le message TaxFeeInfo utilise la syntaxe suivante:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="timestamp"
            id="message_ID"
            partner="partner_key">
  <Property action="[overlay]">
    <ID>HotelID</ID>
    <Taxes>
      <Tax>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>tax_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>fee_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Éléments et attributs

Le message TaxFeeInfo comporte les éléments et les attributs suivants:

Élément / @Attribut Occurrences Type Description
TaxFeeInfo 1 Complex element Élément racine d'un message définissant les taxes et les frais pour une seule propriété.
TaxFeeInfo / @timestamp 1 DateTime Date et heure de création de ce message.
TaxFeeInfo / @id 1 string Identifiant unique pour ce message de requête. Cette valeur est renvoyée dans le message de réponse. Caractères autorisés : a-z, A-Z, 0-9, _ (trait de soulignement) et - (tiret).
TaxFeeInfo / @partner 1 string Compte partenaire pour ce message. Cette valeur de chaîne correspond à la valeur "Partner key" (Clé partenaire) indiquée sur la page Paramètres du compte dans Hotel Center.

Remarque:Si vous disposez d'un backend qui fournit des flux pour plusieurs comptes, cette valeur doit correspondre à la valeur de l'attribut ID spécifiée dans l'élément <RequestorID> de vos messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ> pour le même compte.

TaxFeeInfo / Property 1..n Property Conteneur permettant de définir les taxes et les frais pour un même établissement.
TaxFeeInfo / Property / @action 0..1 string Indique comment la mise à jour est appliquée. Seul overlay est accepté, et la valeur par défaut est overlay. Tous les Taxes et Fees précédents de cette propriété seront effacés avant l'application de cette mise à jour.
TaxFeeInfo / Property / ID 1 string Identifiant unique de la propriété. Cette valeur doit correspondre à l'ID de l'hôtel spécifié à l'aide de <id> dans l'élément <listing> du flux Hotel List Feed. L'ID de l'hôtel est également indiqué dans Hotel Center.
TaxFeeInfo / Property / Taxes 0..1 Taxes Conteneur pour un ou plusieurs éléments <Tax>.
TaxFeeInfo / Property / Taxes / Tax 1..n Tax Taxe individuelle qui s'applique à l'établissement.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes 0..1 RoomTypes Conteneur pour la liste des types de chambres auxquels la taxe s'applique. La taxe est appliquée à chaque <RoomType> spécifié. Si aucune valeur n'est spécifiée pour <RoomTypes>, la taxe s'applique à toutes les chambres.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType 1..n RoomType Spécifie un type de chambre. Un type de chambre est défini dans un élément <RoomData> d'un message Transaction (Données sur un établissement) et identifié à l'aide de son RoomID. Sa valeur <RoomID> est également référencée par l'attribut InvTypeCode dans les messages OTA_HotelRateAmountNotifRQ.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType / @id 1 string Identifiant unique de l'inventaire (type de chambre). Cette valeur correspond à <RoomID> dans un message Transaction (Données sur un établissement). Le nombre maximal de caractères autorisés est de 50.
TaxFeeInfo / Property / Taxes / Tax / RatePlans 0..1 RatePlans Conteneur pour la liste des plans tarifaires auxquels la taxe s'applique. Si aucune valeur n'est spécifiée pour <RatePlans>, la taxe s'applique à tous les plans tarifaires.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan 1..n RatePlan Spécifie un plan tarifaire. Un plan tarifaire est défini par la combinaison d'un package, de tarifs et d'une disponibilité, telle que définie dans les messages Transaction (Données sur un établissement), OTA_HotelRateAmountNotifRQ et OTA_HotelAvailNotifRQ, et telle qu'identifiée par l'identifiant PackageID.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan / @id 1 string Identifiant unique du plan tarifaire. Cette valeur correspond à la valeur PackageID de <PackageData> dans un message Transaction (Données sur un établissement), et à l'attribut RatePlanCode dans <StatusApplicationControl> dans les messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ>. Le nombre maximal de caractères autorisés est de 50.
TaxFeeInfo / Property / Taxes / Tax / BookingDates 0..1 BookingDates Conteneur pour une ou plusieurs plages de dates qui définissent le moment auquel la réservation doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange 1..99 DateRange Plage de dates indiquant le moment auquel la réservation doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @start 0..1 Date Date de début (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être antérieure ou identique à la date end. Si start n'est pas spécifié, la plage de dates est illimitée en termes de date de début.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est illimitée en termes de date de fin.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @days_of_week 0..1 string

Jours de la semaine autorisés dans la plage de dates. Si aucune valeur n'est spécifiée, tous les jours sont autorisés dans la plage de dates. Chaque caractère de la chaîne spécifie un jour. Par exemple, "MTWHF" indique que les jours de la semaine sont autorisés dans la plage de dates.

Caractères valides:

  • M pour lundi
  • T pour mardi
  • W pour mercredi
  • H pour jeudi
  • F pour vendredi
  • S pour samedi
  • U pour dimanche

Toute combinaison de caractères est valide.

TaxFeeInfo / Property / Taxes / Tax / CheckinDates 0..1 CheckinDates Conteneur pour une ou plusieurs plages de dates qui définissent le moment auquel l'arrivée doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange 1..20 DateRange Plage de dates indiquant le moment auquel l'arrivée doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @start 0..1 Date Date de début (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être antérieure ou identique à la date end. Si start n'est pas spécifié, la plage de dates est illimitée en termes de date de début.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est illimitée en termes de date de fin.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @days_of_week 0..1 string

Jours de la semaine autorisés dans la plage de dates. Si aucune valeur n'est spécifiée, tous les jours sont autorisés dans la plage de dates. Chaque caractère de la chaîne spécifie un jour. Par exemple, "MTWHF" indique que les jours de la semaine sont autorisés dans la plage de dates.

Caractères valides:

  • M pour lundi
  • T pour mardi
  • W pour mercredi
  • H pour jeudi
  • F pour vendredi
  • S pour samedi
  • U pour dimanche

Toute combinaison de caractères est valide.

TaxFeeInfo / Property / Taxes / Tax / CheckoutDates 0..1 CheckoutDates Conteneur pour une ou plusieurs plages de dates qui définissent le moment auquel le départ doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange 1..20 DateRange Plage de dates indiquant le moment où le départ doit avoir lieu pour que la taxe soit appliquée.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @start 0..1 Date Date de début (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être antérieure ou identique à la date end. Si start n'est pas spécifié, la plage de dates est illimitée en termes de date de début.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est illimitée en termes de date de fin.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @days_of_week 0..1 string

Jours de la semaine autorisés dans la plage de dates. Si aucune valeur n'est spécifiée, tous les jours sont autorisés dans la plage de dates. Chaque caractère de la chaîne spécifie un jour. Par exemple, "MTWHF" indique que les jours de la semaine sont autorisés dans la plage de dates.

Caractères valides:

  • M pour lundi
  • T pour mardi
  • W pour mercredi
  • H pour jeudi
  • F pour vendredi
  • S pour samedi
  • U pour dimanche

Toute combinaison de caractères est valide.

TaxFeeInfo / Property / Taxes / Tax / StayDates 0..1 StayDates

Conteneur pour une ou plusieurs plages de dates qui déterminent si la taxe est appliquée (pour des remises saisonnières, par exemple).

TaxFeeInfo / Property / Taxes / Tax / StayDates / @application 1 enum

Explique comment la taxe doit être appliquée.

Les valeurs possibles sont les suivantes :

  • all: applique la taxe à chaque nuit du séjour si toutes les dates du séjour se chevauchent.
  • any: applique la taxe à toutes les nuits du séjour si une date de celui-ci chevauche une date de la plage de dates de séjour.
  • overlap: applique uniquement la taxe aux nuits du séjour qui se chevauchent avec une date de la plage de dates de séjour.

    Remarque: overlap n'est valide que lorsque <Period> est défini sur night.

Cet attribut doit toujours être spécifié.

TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange 1..99 DateRange Plage de dates indiquant les dates auxquelles la taxe doit être appliquée.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @start 0..1 Date Date de début (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être antérieure ou identique à la date end. Si start n'est pas spécifié, la plage de dates est illimitée en termes de date de début.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est illimitée en termes de date de fin.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @days_of_week 0..1 string

Jours de la semaine autorisés dans la plage de dates. Si aucune valeur n'est spécifiée, tous les jours sont autorisés dans la plage de dates. Chaque caractère de la chaîne spécifie un jour. Par exemple, "MTWHF" indique que les jours de la semaine sont autorisés dans la plage de dates.

Caractères valides:

  • M pour lundi
  • T pour mardi
  • W pour mercredi
  • H pour jeudi
  • F pour vendredi
  • S pour samedi
  • U pour dimanche

Toute combinaison de caractères est valide.

TaxFeeInfo / Property / Taxes / Tax / Type 1 enum

Les valeurs possibles sont les suivantes :

  • percent: Pourcentage du tarif total
  • amount: Montant fixe à ajouter au tarif final
TaxFeeInfo / Property / Taxes / Tax / Basis 1 enum

Les valeurs possibles sont les suivantes :

  • room: Le <Amount> est appliqué au salon.
  • person: Le <Amount> est appliqué par personne. Cette valeur ne s'applique que si <Type> est défini sur "amount" (montant).
TaxFeeInfo / Property / Taxes / Tax / Period 1 enum

Les valeurs possibles sont les suivantes :

  • stay: Le <Amount> est ajouté au tarif total du séjour.
  • night: Le <Amount> est ajouté par nuit du séjour.
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 string Code de la devise à trois lettres correspondant à la taxe (par exemple, USD).
TaxFeeInfo / Property / Taxes / Tax / Amount 0..1 float Valeur du pourcentage ou du montant de la taxe.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights 0..1 ApplicableNights Cette valeur ne s'applique que si <Type> est défini sur amount et sur <Period> sur night.

Limite le nombre de nuits pour lesquelles une taxe peut être appliquée.

Spécifiez max ou excluded, mais pas les deux.

TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @max 0..1 integer <ApplicableNights max="N"> indique que les nuits après les N premières nuits doivent être exclues.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @excluded 0..1 integer <ApplicableNights excluded="N"> indique que les N premières nuits doivent être exclues.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay 0..1 LengthOfStay Définit la durée maximale du séjour au sein duquel cette taxe peut être appliquée. La taxe n'est pas appliquée lorsque la durée du séjour dépasse les limites minimale et maximale.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @min 0..1 integer Nombre minimal de nuits autorisées dans le séjour pour que la taxe soit appliquée. Si aucune valeur n'est spécifiée, il n'y a pas de minimum.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @max 0..1 integer Nombre maximal de nuits autorisées dans le séjour pour que la taxe soit appliquée. Si aucune valeur n'est spécifiée, il n'y a pas de maximum.
TaxFeeInfo / Property / Taxes / Tax / Brackets 0..1 Brackets Conteneur pour un ou plusieurs éléments <Bracket>. Définit un ensemble de tranches de taxe contiguës et qui ne se chevauchent pas (par exemple, les tranches de TPS indiennes).

Cet élément n'est valide que lorsque <Period> est défini sur night et que <Amount> n'est pas spécifié.

TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount 0..1 float Valeur du pourcentage ou du montant de taxes, appliquée aux tarifs par nuit en dessous de la valeur starts_at de la première tranche.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket 1..n Bracket Définit une tranche de taxe basée sur les tarifs par nuit.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at 1 float

Définit la limite inférieure d'une tranche de taxe. La limite supérieure est spécifiée dans le champ starts_at de l'accolade suivante. Il n'y a pas de limite supérieure pour le dernier crochet.

Une tranche de taxe est active lorsque le tarif par nuit est supérieur ou égal à la valeur starts_at de la tranche et strictement inférieur à la valeur starts_at de la tranche suivante.

Cette valeur doit être strictement supérieure à 0.

TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @amount 1 float Valeur du pourcentage ou du montant de taxe appliqué à cette tranche de taxe.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets 0..1 AgeBrackets Permet de spécifier un ensemble de taxes en fonction de l'âge des occupants.

Cet élément n'est valide que si <Brackets> et <Amount> ne sont pas spécifiés, si <Basis> est défini sur person et <Type> est défini sur amount.

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge 0..1 AdultCharge Conteneur permettant de spécifier les taxes pour les adultes.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge / @amount 1 float Montant de taxe fixe appliqué aux adultes.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Conteneur pour contenir un ou plusieurs éléments <ChildAgeBracket>.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..n ChildAgeBracket Définit une tranche d'âge pour les enfants et le montant de taxe correspondant.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer

Définit la limite supérieure de l'âge d'un enfant. La limite inférieure est spécifiée dans le champ max_age + 1 du crochet précédent. Les limites supérieure et inférieure sont inclusives. La limite inférieure du premier crochet est égale à 0.

max_age doit être compris entre 0 et 17 (inclus).

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 1 float Montant fixe des taxes appliqué aux enfants de cette tranche d'âge.
TaxFeeInfo / Property / Taxes / Tax / UserCountries 0..1 UserCountries Conteneur permettant de lister les pays des utilisateurs pour lesquels la taxe est incluse ou exclue Si elle est présente, la taxe n'est incluse ou exclue que pour les utilisateurs des pays spécifiés.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / @type 0..1 enum Type de spécification de "UserCountry".

Les valeurs valides sont include et exclude.

Si la valeur de UserUsers type est définie sur include, la taxe ne s'applique qu'aux utilisateurs des pays indiqués.

En revanche, si la valeur de UserUsers type est exclude, la taxe ne s'applique qu'aux utilisateurs situés en dehors des pays répertoriés.

Si cette règle type n'est pas définie, nous la considérerons comme include, et la taxe ne s'applique qu'aux utilisateurs des pays indiqués.

TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country 1..n Country Définit un pays dans la liste des pays de l'utilisateur.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code 1 string Un code pays CLDR, tel que DE ou FR. Notez que, pour certains pays, le code pays CLDR est différent du code pays ISO à deux lettres. De plus, les codes de région CLDR ne sont pas acceptés.
TaxFeeInfo / Property / Fees 0..1 Fees Conteneur pour un ou plusieurs éléments <Fee>.
TaxFeeInfo / Property / Fees / Fee 1..n Fee

Frais individuels qui s'appliquent à l'établissement.

Tous les éléments enfants de <Tax> sont également compatibles avec <Fee> avec la même syntaxe.

Exemples

Message de base

Un message TaxFeeInfo de base:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2020-05-18T16: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>10.00</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <Currency>USD</Currency>
        <Amount>5.00</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Supprimer les taxes

Supprimez toutes les taxes et frais au niveau de l'établissement pour l'hôtel spécifié:

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

Taxe sur les plaques

Taxe sur l'application de la TPS indienne, appliquée en fonction des tarifs par nuit. Voici les tranches fiscales:

  • 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.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2020-05-18T16: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>

Taxes en fonction de l'âge

Taxes appliquées en fonction de l'âge des passagers:

  • Taxe de 20 $ pour les personnes adultes.
  • 10 $ de taxes pour les enfants âgés de 11 à 17 ans.
  • 5 $ de taxes pour les enfants âgés de 0 à 10 ans.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2020-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <AgeBrackets>
          <AdultCharge amount="20"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="10" amount="5"/>
            <ChildAgeBracket max_age="17" amount="10"/>
          </ChildAgeBrackets>
        </AgeBrackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Réponses

Syntaxe

Le message TaxFeeInfoResponse utilise la syntaxe suivante:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="timestamp"
                    id="message_ID"
                    partner="partner_key">
  <!-- Either Success or Issues will be populated. -->
  <Success/>
  <Issues>
    <Issue code="issue_code" status="issue_type">issue_description</Issue>
  </Issues>
</TaxFeeInfoResponse>

Éléments et attributs

Le message TaxFeeInfoResponse comporte les éléments et les attributs suivants:

Élément / @Attribut Occurrences Type Description
TaxFeeInfoResponse 1 Complex element Élément racine indiquant la réussite ou les problèmes liés à un message de requête TaxFeeInfo reçu.
TaxFeeInfoResponse / @timestamp 1 DateTime Date et heure de création de ce message.
TaxFeeInfoResponse / @id 1 string Identifiant unique du message TaxFeeInfo associé.
TaxFeeInfoResponse / @partner 1 string Compte partenaire pour ce message.
TaxFeeInfoResponse / Success 0..1 Success Indique que le message TaxFeeInfo a été traité sans avertissement, erreur ni échec.

<Success> ou <Issues> est présent dans chaque message.

TaxFeeInfoResponse / Issues 0..1 Issues Conteneur pour un ou plusieurs problèmes rencontrés lors du traitement du message TaxFeeInfo.

<Success> ou <Issues> est présent dans chaque message.

TaxFeeInfoResponse / Issues / Issue 1..n Issue Description d'un avertissement, d'une erreur ou d'un échec survenu lors du traitement du message TaxFeeInfo. Pour en savoir plus sur ces problèmes, consultez Messages d'erreur concernant l'état du flux.
TaxFeeInfoResponse / Issues / Issue / @code 1 integer Identifiant du problème.
TaxFeeInfoResponse / Issues / Issue / @status 1 enum

Type de problème rencontré.

Les valeurs valides sont warning, error et failure .

Exemples

Réussite

Voici une réponse à un message TaxFeeInfo traité avec succès.

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2020-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Success/>
</TaxFeeInfoResponse>

Issues

Voici une réponse à un message TaxFeeInfo non traité en raison d'erreurs.

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2020-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</TaxFeeInfoResponse>