TaxFeeInfo

Syntaxe

Le message TaxFeeInfo utilise la syntaxe suivante :
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="timestamp"
            id="message_ID"
            partner="partner_account_name">
  <Property>
    <ID>HotelID</ID>
    <Taxes>
      <Tax>
        <StayDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <Type>[percent|amount]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>tax_amount</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <StayDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <Type>[percent|amount]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>fee_amount</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Éléments et attributs

Le message TaxFeeInfo contient les éléments et les attributs suivants :
Élément / @Attribut Occurrences Type Description
TaxFeeInfo 1 Élément complexe Élément racine d'un message définissant les taxes et les frais pour un même établissement.
TaxFeeInfo / @timestamp 1 DateTime Date et heure de création de ce message.
TaxFeeInfo / @id 1 Chaîne Identifiant unique de chaque message TaxFeeInfo.
TaxFeeInfo / @partner 1 Chaîne 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 avez 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 Propriété Conteneur permettant de définir les taxes et les frais pour un même établissement.
TaxFeeInfo / Property / ID 1 Chaîne Identifiant unique de 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. L'identifiant de l'hôtel est également répertorié dans Hotel Center.
TaxFeeInfo / Property / Taxes 0..1 Taxes Conteneur pour un ou plusieurs éléments <Tax>.
TaxFeeInfo / Property / Taxes / Tax 1..n Taxe Taxe individuelle s'appliquant à l'établissement.
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 (par exemple, pour prendre en compte les taxes saisonnières) :

  • Si <Period> est défini sur "stay" (séjour) et que <Type> est défini sur "percent" (pourcentage), le pourcentage de taxe est appliqué à toutes les nuits du séjour si une date de celui-ci chevauche une date de la plage de dates (par exemple, si la date de départ est le 1er octobre et que la première date de la plage de dates est également le 1er octobre, la taxe n'est pas appliquée au séjour).
  • Si <Period> est défini sur "stay" (séjour) et que <Type> est défini sur "amount" (montant), le montant de la taxe est appliqué en tant que montant fixe couvrant l'ensemble du séjour, si une date de celui-ci chevauche une date de la plage de dates.
  • Si <Period> est défini sur "night" (nuit) et que <Type> est défini sur "amount" (montant), le montant de la taxe est appliqué à chaque nuit du séjour pour lequel cette date chevauche une date de la plage de dates.

Remarque : La définition de <Period> sur "night" (nuit) et de <Type> sur "percent" (pourcentage) n'est pas couverte, car il s'agit en général d'une combinaison non valide dans un message TaxFeeInfo.

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 en fait illimitée en ce qui concerne la 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, de la plage de dates. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est en fait illimitée en ce qui concerne la date de fin.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @days_of_week 0..1 Chaîne

Jours de la semaine autorisés dans la plage de dates. Si cet attribut n'est pas spécifié, 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 / 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 <RoomTypes> n'est pas spécifié, 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 Chaîne 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 <RatePlans> n'est pas spécifié, 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'une formule, 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 la valeur PackageID.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan / @id 1 Chaîne Identifiant unique du plan tarifaire. Cette valeur correspond à la valeur PackageID dans l'élément <PackageData> d'un message Transaction (Données sur un établissement), ainsi que dans l'attribut RatePlanCode de l'élément <StatusApplicationControl> dans les messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ>. Le nombre maximal de caractères autorisés est de 50.
TaxFeeInfo / Property / Taxes / Tax / Type 1 Énumération

Les valeurs valides sont les suivantes :

  • percent (pourcentage) : pourcentage du prix total
  • amount (montant) : montant fixe à ajouter au prix total
TaxFeeInfo / Property / Taxes / Tax / Basis 1 Énumération

Les valeurs valides sont les suivantes :

  • room (chambre) : la valeur <Amount> est appliquée à la chambre.
  • person (personne) : la valeur <Amount> est appliquée par personne. Cette valeur ne s'applique que si <Type> est définie sur "amount" (montant).
TaxFeeInfo / Property / Taxes / Tax / Period 1 Énumération

Cette valeur ne s'applique que si <Type> est défini sur "amount" (montant).

Les valeurs valides sont les suivantes :

  • stay (séjour) : la valeur <Amount> est ajoutée au prix total du séjour.
  • night (nuit) : la valeur <Amount> est ajoutée à chaque nuit du séjour.
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 Chaîne Code à trois lettres de la devise utilisée pour la taxe (par exemple, USD).
TaxFeeInfo / Property / Taxes / Tax / Amount 1 Float Valeur du pourcentage ou du montant de la taxe.
TaxFeeInfo / Property / Fees 0..1 Frais Conteneur pour un ou plusieurs éléments <Fee>.
TaxFeeInfo / Property / Fees / Fee 1..n Frais Frais individuels qui s'appliquent à l'établissement.
TaxFeeInfo / Property / Fees / Fee / StayDates 0..1 StayDates

Conteneur pour une ou plusieurs plages de dates qui déterminent si les frais sont appliqués (par exemple, pour prendre en compte les frais saisonniers) :

  • Si <Period> est défini sur "stay" (séjour) et que <Type> est défini sur "percent" (pourcentage), le pourcentage de frais est appliqué à toutes les nuits du séjour si une date de celui-ci chevauche une date de la plage de dates (par exemple, si la date de départ est le 1er octobre et que la première date de la plage de dates est également le 1er octobre, les frais ne sont pas appliqués au séjour).
  • Si <Period> est défini sur "stay" (séjour) et que <Type> est défini sur "amount" (montant), le montant des frais est appliqué en tant que montant fixe couvrant l'ensemble du séjour, si une date de celui-ci chevauche une date de la plage de dates.
  • Si <Period> est défini sur "night" (nuit) et que <Type> est défini sur "amount" (montant), le montant des frais est appliqué à chaque nuit du séjour pour lequel cette date chevauche une date de la plage de dates.

Remarque : La définition de <Period> sur "night" (nuit) et de <Type> sur "percent" (pourcentage) n'est pas couverte, car il s'agit en général d'une combinaison non valide dans un message TaxFeeInfo.

TaxFeeInfo / Property / Fees / Fee / StayDates / DateRange 1..20 DateRange Plage de dates indiquant les dates auxquelles les frais doivent être appliqués.
TaxFeeInfo / Property / Fees / Fee / 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 en fait illimitée en ce qui concerne la date de début.
TaxFeeInfo / Property / Fees / Fee / StayDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est en fait illimitée en ce qui concerne la date de fin.
TaxFeeInfo / Property / Fees / Fee / StayDates / DateRange / @days_of_week 0..1 Chaîne

Jours de la semaine autorisés dans la plage de dates. Si cet attribut n'est pas spécifié, 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 / Fees / Fee / RoomTypes 0..1 RoomTypes Conteneur pour la liste des types de chambres auxquels les frais s'appliquent. Les frais sont appliqués à chaque <RoomType> spécifié. Si <RoomTypes> n'est pas spécifié, les frais s'appliquent à toutes les chambres.
TaxFeeInfo / Property / Fees / Fee / 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 est référencé à l'aide de sa valeur <RoomID>. (Sa valeur <RoomID> est également référencée par l'attribut InvTypeCode dans les messages OTA_HotelRateAmountNotifRQ.)
TaxFeeInfo / Property / Fees / Fee / RoomTypes / RoomType / @id 1 Chaîne 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 / Fees / Fee / RatePlans 0..1 RatePlans Conteneur pour la liste des plans tarifaires auxquels les frais s'appliquent. Si <RatePlans> n'est pas spécifié, les frais s'appliquent à tous les plans tarifaires.
TaxFeeInfo / Property / Fees / Fee / RatePlans / RatePlan 1..n RatePlan Spécifie un plan tarifaire. Un plan tarifaire est défini par la combinaison d'une formule, 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 la valeur PackageID.
TaxFeeInfo / Property / Fees / Fee / RatePlans / RatePlan / @id 1 Chaîne Identifiant unique du plan tarifaire. Cette valeur correspond à la valeur PackageID dans l'élément <PackageData> d'un message Transaction (Données sur un établissement), ainsi que dans l'attribut RatePlanCode de l'élément <StatusApplicationControl> dans les messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ>. Le nombre maximal de caractères autorisés est de 50.
TaxFeeInfo / Property / Fees / Fee / Type 1 Énumération

Les valeurs valides sont les suivantes :

  • percent (pourcentage) : pourcentage du prix total
  • amount (montant) : montant fixe à ajouter au prix total
TaxFeeInfo / Property / Fees / Fee / Basis 1 Énumération

Les valeurs valides sont les suivantes :

  • room (chambre) : la valeur <Amount> est appliquée à la chambre.
  • person (personne) : la valeur <Amount> est appliquée par personne. Cette valeur ne s'applique que si <Type> est définie sur "amount" (montant).
TaxFeeInfo / Property / Fees / Fee / Period 1 Énumération

Cette valeur ne s'applique que si <Type> est défini sur "amount" (montant).

Les valeurs valides sont les suivantes :

  • stay (séjour) : la valeur <Amount> est ajoutée au prix total du séjour.
  • night (nuit) : la valeur <Amount> est ajoutée à chaque nuit du séjour.
TaxFeeInfo / Property / Fees / Fee / Currency 0..1 Chaîne Code à trois lettres de la devise utilisée pour les frais (par exemple, USD).
TaxFeeInfo / Property / Fees / Fee / Amount 1 Float Valeur du pourcentage ou du montant des frais.

Exemples

Exemple 1

L'exemple ci-dessous représente un message TaxFeeInfo de base :

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo  timestamp="2020-05-18T16:20:00-04:00"
             id="12345678">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Currency>USD</Currency>
        <Amount>10.00</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Currency>USD</Currency>
        <Amount>5.00</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>