Requêtes
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|cumulative_percent]</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>
<!--"exclusive" parameter is optional -->
<Rank exclusive="[true|false]">integer</Rank>
</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|cumulative_percent]</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>
<!--"exclusive" parameter is optional -->
<Rank exclusive="[true|false]">integer</Rank>
</Fee>
</Fees>
</Property>
</TaxFeeInfo>
Éléments et attributs
Le message TaxFeeInfo
inclut 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 un même établissement. |
TaxFeeInfo / @timestamp | 1 | DateTime | Date et heure de création de ce message. |
TaxFeeInfo / @id | 1 | string | Identifiant unique pour ce message de demande. Cette valeur est renvoyée dans le message de réponse. Les caractères autorisés sont 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 avez un backend qui fournit des flux pour plusieurs comptes, cette valeur doit correspondre à la valeur de l'attribut |
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 | Spécifie comment la mise à jour est appliquée. Seule la valeur overlay est acceptée. La valeur par défaut est overlay . Toutes les précédentes Taxes et Fees pour cette propriété seront supprimées avant l'application de cette mise à jour. |
TaxFeeInfo / Property / ID | 1 | string | 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'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 s'appliquant à 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 <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 | 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 <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 | string | Identifiant unique du plan tarifaire. Cette valeur correspond à la valeur PackageID dans l'élément <PackageData> du message Transaction (Données sur un établissement), ainsi qu'à la valeur RatePlanCode définie sous l'attribut <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 être effectuée 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 être effectuée 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 en fait illimitée en ce qui concerne la 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, 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 / BookingDates / DateRange / @days_of_week | 0..1 | string | 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 :
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 en fait illimitée en ce qui concerne la 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, 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 / CheckinDates / DateRange / @days_of_week | 0..1 | string | 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 :
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 auquel 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 en fait illimitée en ce qui concerne la 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, 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 / CheckoutDates / DateRange / @days_of_week | 0..1 | string | 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 :
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 (par exemple, pour prendre en compte les remises saisonnières). |
TaxFeeInfo / Property / Taxes / Tax / StayDates / @application | 1 | enum | Décrit comment la taxe doit être appliquée. Les valeurs valides sont les suivantes :
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 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 | string | 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 :
Toute combinaison de caractères est valide. |
TaxFeeInfo / Property / Taxes / Tax / Type | 1 | enum | Les valeurs valides sont les suivantes :
|
TaxFeeInfo / Property / Taxes / Tax / Basis | 1 | enum | Les valeurs valides sont les suivantes :
|
TaxFeeInfo / Property / Taxes / Tax / Period | 1 | enum |
Les valeurs valides sont les suivantes :
|
TaxFeeInfo / Property / Taxes / Tax / Currency | 0..1 | string | Code à trois lettres de la devise utilisée pour la taxe (par exemple, USD).
Remarque : Si |
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 <Period> sur night.
Limite le nombre de nuits à celles pour lesquelles une taxe est applicable. Indiquez |
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 de séjour pendant laquelle cette taxe peut être appliquée. Les taxes ne sont pas appliquées lorsque la durée du séjour est en dehors des limites minimales et maximales. |
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 cet attribut n'est pas spécifié, 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 cet attribut n'est pas spécifié, 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 taxation indiennes sur les produits et services.
Cet élément n'est valide que si |
TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount | 0..1 | float | Valeur du pourcentage ou du montant de taxe, appliquée aux tarifs par nuit inférieurs à la valeur starts_at de la première tranche. |
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket | 1..n | Bracket | Définit une tranche de taxation en fonction des 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 Une tranche de taxation est active lorsque le tarif par nuit est supérieur ou égal à la valeur 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ée à 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 lorsque |
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 forfaitaire de la taxe appliquée aux adultes. |
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets | 0..1 | ChildAgeBrackets | Conteneur pour 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
|
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount | 1 | float | Montant forfaitaire de la taxe appliquée aux enfants de cette tranche d'âge. |
TaxFeeInfo / Property / Taxes / Tax / UserCountries | 0..1 | UserCountries | Conteneur permettant de répertorier les pays des utilisateurs pour lesquels la taxe est incluse ou exclue. Si elle est présente, la taxe ne sera 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 UserCountries.
Les valeurs valides sont Si UserCountries En revanche, si UserCountries Si UserCountries |
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country | 1..n | Country | Définit un pays dans la liste UserCountries. |
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code | 1 | string | 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 / Taxes / Tax / Rank | 1 | integer | Rang qui spécifie l'ordre d'application d'une taxe ou de frais.
Par exemple, une valeur de 2 signifie que la taxe est appliquée en deuxième.
Cet élément doit toujours être spécifié si <Rank>2</Rank> Les valeurs de classement en double sont autorisées pour les taxes et les frais, mais cela peut entraîner un comportement indéfini où les taxes et les frais sont appliqués de manière arbitraire et cumulative. Vous pouvez également utiliser le paramètre Si le paramètre <Rank exclusive="true">1</Rank> Les taxes sont appliquées avant les frais. Par conséquent, si une taxe et des frais ont le même rang et que les frais sont définis sur Pour inclure tous les frais et taxes du même rang, évitez de définir Les taxes et frais sans classement sont appliqués avant toutes les entrées classées.
|
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 |
Exemples
Vous pouvez indiquer jusqu'à 300 taxes et frais par établissement. Consultez l'exemple "Supprimer des taxes" pour supprimer les taxes et les frais d'une propriété.
Message de base
Message TaxFeeInfo
de base :
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-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="2024-06-16T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Property action="overlay"/>
<ID>Property_1</ID>
</Property>
</TaxFeeInfo>
Tranches de taxation
Taxe indienne sur les produits et services (TPS) appliquée en fonction des tarifs par nuit. Voici les différentes tranches :
- 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="2024-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 basées sur l'âge
Taxes appliquées en fonction de l'âge des occupants :
- Taxe de 20 $ pour les adultes
- 10 $ de taxe pour les enfants âgés de 11 à 17 ans
- 5 $ de taxe pour les enfants âgés de 0 à 10 ans.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-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>
Chevauchement des plages de dates de séjour
Lorsque plusieurs plages de dates de séjour définies se chevauchent, la date de séjour indiquée n'a besoin de correspondre qu'à l'une d'entre elles, et non à toutes. Les plages de dates de séjour doivent être spécifiées dans une seule plage de début et de fin.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2025-03-12T10:59:49+01:00"
id="12345678"
partner="partner_key">
<Property action="overlay">
<ID>987654</ID>
<Taxes>
<Tax>
<Type>amount</Type>
<Basis>person</Basis>
<Period>night</Period>
<RoomTypes>
<RoomType id="RoomID_1"/>
<RoomType id="RoomID_2"/>
</RoomTypes>
<StayDates application="any">
<DateRange start="2025-06-16"/>
</StayDates>
<Currency>USD</Currency>
<Amount>50</Amount>
</Tax>
</Taxes>
<Fees>
<Fee>
<Type>amount</Type>
<Basis>room</Basis>
<Period>stay</Period>
<StayDates application="any">
<DateRange start="2025-03-12" end="2025-03-18"/>
</StayDates>
<Currency>USD</Currency>
<Amount>200</Amount>
</Fee>
<Fee>
<Type>amount</Type>
<Basis>room</Basis>
<Period>stay</Period>
<StayDates application="any">
<DateRange start="2025-03-19"/>
</StayDates>
<Currency>USD</Currency>
<Amount>300</Amount>
</Fee>
</Fees>
</Property>
</TaxFeeInfo>
Plusieurs taxes et frais avec un classement exclusif
Voici un exemple avec plusieurs taxes et frais avec exclusive="true"
et différents rangs. Tenez compte des taxes et frais suivants qui doivent être appliqués au tarif :
- Taxe de séjour de 5 % avec le rang 1
exclusive="true"
. - Taxe de 10 USD sur le service de chambre, avec le rang 1.
- Frais de nettoyage de 50 USD avec le niveau 2
exclusive="true"
. - Frais de commodité de 2 % avec le niveau 3.
L'ordre chronologique dans lequel les taxes et les frais sont appliqués en fonction de <Rank>
est le suivant :
- La taxe de séjour avec
exclusive="true"
et le rang 1 est appliquée en premier. - La taxe sur le service en chambre de rang 1 ne sera pas appliquée, car la taxe d'occupation précédente est exclusive.
- Les frais de ménage avec
exclusive="true"
et le rang 2 sont ensuite appliqués. - Les frais liés aux équipements de niveau 3 sont appliqués après les frais de ménage de niveau 2.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-02-29T12:00:00Z"
id="tax-fee-id"
partner="partner_key">
<Property action="overlay">
<ID>765432</ID>
<Taxes>
<Tax>
<Type>percent</Type>
<Amount>5</Amount>
<Period>stay</Period>
<Basis>room</Basis>
<Rank exclusive="true">1</Rank>
</Tax>
<Tax>
<Type>amount</Type>
<Amount>10</Amount>
<Period>night</Period>
<Basis>room</Basis>
<Currency>USD</Currency>
<Rank>1</Rank>
</Tax>
</Taxes>
<Fees>
<Fee>
<Type>amount</Type>
<Amount>50</Amount>
<Period>night</Period>
<Basis>room</Basis>
<Currency>USD</Currency>
<Rank exclusive="true">2</Rank>
</Fee>
<Fee>
<Type>percent</Type>
<Amount>2</Amount>
<Period>stay</Period>
<Basis>room</Basis>
<Rank>3</Rank>
</Fee>
</Fees>
</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
inclut les éléments et les attributs suivants :
Élément / @Attribut | Occurrences | Type | Description |
---|---|---|---|
TaxFeeInfoResponse | 1 | Complex element | Élément racine indiquant la réussite d'un message de demande TaxFeeInfo reçu ou ses problèmes. |
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 bien été traité sans avertissement, erreur ni échec.
Chaque message contient soit |
TaxFeeInfoResponse / Issues | 0..1 | Issues | Conteneur pour un ou plusieurs problèmes rencontrés lors du traitement du message TaxFeeInfo .
Chaque message contient soit |
TaxFeeInfoResponse / Issues / Issue | 1..n | Issue | Description d'un avertissement, d'une erreur ou d'un échec survenus 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 |
Exemples
Opération réussie
Voici une réponse à un message TaxFeeInfo
correctement traité :
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2024-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Success/>
</TaxFeeInfoResponse>
Problèmes
La réponse ci-dessous est une réponse à un message TaxFeeInfo
non traité en raison d'erreurs.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2024-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Issues>
<Issue code="1001" status="error">Example</Issue>
</Issues>
</TaxFeeInfoResponse>