TaxFeeInfo

要求

語法

TaxFeeInfo 訊息使用下列語法:

<?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>

元素和屬性

TaxFeeInfo 訊息包含下列元素和屬性:

元素 / @Attribute 發生次數 類型 說明
TaxFeeInfo 1 Complex element 訊息的根元素,用於定義單一房源的稅金和費用。
TaxFeeInfo / @timestamp 1 DateTime 這則訊息的建立日期和時間。
TaxFeeInfo / @id 1 string 這則要求訊息的專屬 ID。這個值會傳回至回應訊息。允許的字元為 a-zA-Z0-9_ (底線) 和 - (連字號)。
TaxFeeInfo / @partner 1 string 這封郵件的合作夥伴帳戶。這個字串值是 Hotel Center「帳戶設定」頁面中列出的「合作夥伴金鑰」值。

注意:如果後端提供多個帳戶的動態饋給,這個值必須與相同帳戶的 <OTA_HotelRateAmountNotifRQ><OTA_HotelAvailNotifRQ> 訊息中 <RequestorID> 元素的 ID 屬性值相符。

TaxFeeInfo / Property 1..n Property 用於定義單一房源的稅金和費用的容器。
TaxFeeInfo / Property / @action 0..1 string 指定更新的套用方式。系統僅支援 overlay,預設值為 overlay。套用這項更新前,系統會清除這項資源的所有先前TaxesFees
TaxFeeInfo / Property / ID 1 string 房源的專屬 ID。這個值必須與飯店清單動態饋給中<listing> 元素內使用 <id> 指定的飯店 ID 相符。飯店 ID 也會列在 Hotel Center 中。
TaxFeeInfo / Property / Taxes 0..1 Taxes 一或多個 <Tax> 元素的容器。
TaxFeeInfo / Property / Taxes / Tax 1..n Tax 適用於房源的個別稅金。
TaxFeeInfo / Property / Taxes / Tax / RoomTypes 0..1 RoomTypes 容器,內含適用稅金的房型清單。 系統會對指定的每個 <RoomType> 套用稅金。如未指定 <RoomTypes>,稅金會套用至所有房型。
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType 1..n RoomType 指定房型。房型是在交易 (資源資料) 訊息的 <RoomData> 元素中定義,並使用 RoomID 識別。(<RoomID> 值也會由 OTA_HotelRateAmountNotifRQ 訊息中的 InvTypeCode 屬性參照)。
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType / @id 1 string 房源 (房型) 的專屬 ID。這個值會對應至交易 (房源資料)訊息中的 <RoomID>。最多可輸入 50 個半形字元。
TaxFeeInfo / Property / Taxes / Tax / RatePlans 0..1 RatePlans 這個容器列有適用稅金的房價方案。 如未指定 <RatePlans>,稅金會套用至所有費率方案。
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan 1..n RatePlan 指定費率方案。費率方案是由套裝行程、費率和供應情形組合定義,如交易 (資源資料)、OTA_HotelRateAmountNotifRQ 和 OTA_HotelAvailNotifRQ 訊息中所定義,並由 PackageID 識別。
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan / @id 1 string 費率方案的專屬 ID。這個值會對應至交易 (房源資料) 訊息中 <PackageData>RatePlanCode 屬性下設定的 <StatusApplicationControl> 值,以及 <OTA_HotelRateAmountNotifRQ><OTA_HotelAvailNotifRQ> 訊息中的 PackageID 值。最多可輸入 50 個半形字元。
TaxFeeInfo / Property / Taxes / Tax / BookingDates 0..1 BookingDates 一或多個日期範圍的容器,用於定義必須在何時預訂,才能套用稅金。
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange 1..99 DateRange 指定預訂必須發生的日期範圍,稅金才會適用。
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @start 0..1 Date 日期範圍的開始日期 (以資源時區為準)。這個日期必須早於或等於「end」日期。如果未指定 start,開始日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @end 0..1 Date 日期範圍的結束日期 (以資源時區為準),含此日期。這個日期必須與「start」日期相同或晚於該日期。如未指定 end,日期範圍的結束日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @days_of_week 0..1 string

日期範圍內允許的星期幾。如未指定,則日期範圍內的所有日期都適用。字串中的每個字元都代表一天。舉例來說,「MTWHF」指定日期範圍內允許平日。

有效字元包括:

  • M 代表星期一
  • T 代表星期二
  • W 代表星期三
  • H 代表星期四
  • F 代表星期五
  • S 代表星期六
  • U 代表星期日

任何字元組合都有效。

TaxFeeInfo / Property / Taxes / Tax / CheckinDates 0..1 CheckinDates 一或多個日期範圍的容器,用於定義必須辦理入住的時間,才能套用稅金。
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange 1..20 DateRange 指定入住日期範圍,系統會根據此範圍套用稅金。
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @start 0..1 Date 日期範圍的開始日期 (以資源時區為準)。這個日期必須早於或等於「end」日期。如果未指定 start,開始日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @end 0..1 Date 日期範圍的結束日期 (以資源時區為準),含此日期。這個日期必須與「start」日期相同或晚於該日期。如未指定 end,日期範圍的結束日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @days_of_week 0..1 string

日期範圍內允許的星期幾。如未指定,則日期範圍內的所有日期都適用。字串中的每個字元都代表一天。舉例來說,「MTWHF」指定日期範圍內允許平日。

有效字元包括:

  • M 代表星期一
  • T 代表星期二
  • W 代表星期三
  • H 代表星期四
  • F 代表星期五
  • S 代表星期六
  • U 代表星期日

任何字元組合都有效。

TaxFeeInfo / Property / Taxes / Tax / CheckoutDates 0..1 CheckoutDates 一或多個日期範圍的容器,用於定義必須辦理退房的日期,才能套用稅金。
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange 1..20 DateRange 日期範圍,指定套用稅金的退房時間。
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @start 0..1 Date 日期範圍的開始日期 (以資源時區為準)。這個日期必須早於或等於「end」日期。如果未指定 start,開始日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @end 0..1 Date 日期範圍的結束日期 (以資源時區為準),含此日期。這個日期必須與「start」日期相同或晚於該日期。如未指定 end,日期範圍的結束日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @days_of_week 0..1 string

日期範圍內允許的星期幾。如未指定,則日期範圍內的所有日期都適用。字串中的每個字元都代表一天。舉例來說,「MTWHF」指定日期範圍內允許平日。

有效字元包括:

  • M 代表星期一
  • T 代表星期二
  • W 代表星期三
  • H 代表星期四
  • F 代表星期五
  • S 代表星期六
  • U 代表星期日

任何字元組合都有效。

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

一或多個日期範圍的容器,用於判斷是否適用稅金,例如配合季節性折扣。

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

說明應如何套用稅金。

有效值如下:

  • all:如果行程中的所有日期都與住宿日期重疊,則行程中的每晚都適用稅金。
  • any:如果行程中的任何日期與住宿日期範圍內的日期重疊,則行程中的所有住宿夜數均須繳交稅金。
  • overlap:僅針對行程中與住宿日期範圍重疊的住宿夜數套用稅金。

    注意:只有在 <Period> 設為 night 時,overlap 才會生效。

請務必指定這項屬性。

TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange 1..99 DateRange 指定稅金適用日期的日期範圍。
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @start 0..1 Date 日期範圍的開始日期 (以資源時區為準)。這個日期必須早於或等於「end」日期。如果未指定 start,開始日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @end 0..1 Date 日期範圍的結束日期 (以資源時區為準),含此日期。這個日期必須與「start」日期相同或晚於該日期。如未指定 end,日期範圍的結束日期實際上沒有限制。
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @days_of_week 0..1 string

日期範圍內允許的星期幾。如未指定,則日期範圍內的所有日期都適用。字串中的每個字元都代表一天。舉例來說,「MTWHF」指定日期範圍內允許平日。

有效字元包括:

  • M 代表星期一
  • T 代表星期二
  • W 代表星期三
  • H 代表星期四
  • F 代表星期五
  • S 代表星期六
  • U 代表星期日

任何字元組合都有效。

TaxFeeInfo / Property / Taxes / Tax / Type 1 enum

有效值如下:

  • percent: 總費率的百分比
  • amount: 要加到最終費率的固定金額
  • cumulative_percent:在計算這項稅金或費用前,累計的總費率、稅金和費用百分比。如果指定這個值,也必須指定 <Rank>
  • <Brackets><AgeBrackets> 不得指定為 cumulative_percent 類型。

TaxFeeInfo / Property / Taxes / Tax / Basis 1 enum

有效值如下:

  • room: <Amount>已套用至會議室。
  • person: <Amount> 是每人收取的金額。 只有在 <Type> 設為金額時,這個值才會生效。
TaxFeeInfo / Property / Taxes / Tax / Period 1 enum

有效值如下:

  • stay: <Amount>會加到住宿總房價中。
  • night: <Amount> 是每晚的加價費用。
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 string 稅金的 3 碼貨幣代碼 (例如:USD)。

注意:如未指定 <Currency>,但指定了 <Amount>,則 <Currency> 值會預設為基本費率幣別。

TaxFeeInfo / Property / Taxes / Tax / Amount 0..1 float 稅金的百分比或金額值。
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights 0..1 ApplicableNights 只有在 <Type> 設為「amount」<Period> 設為「night」 時,這個值才適用。

限制可套用稅金的晚數。

您可以選擇指定 maxexcluded,但不能兩者同時指定。

TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @max 0..1 integer <ApplicableNights max="N"> 表示應排除前 N 晚之後的夜晚。
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @excluded 0..1 integer <ApplicableNights excluded="N"> 表示應排除前 N 晚。
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay 0..1 LengthOfStay 定義可套用這項稅金的住宿天數限制。 如果住宿天數超出最低和最高限制,系統不會套用稅金。
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @min 0..1 integer 適用稅金的最短入住天數。 如未指定,則沒有下限。
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @max 0..1 integer 可套用稅金的住宿晚數上限。 如未指定,則沒有上限。
TaxFeeInfo / Property / Taxes / Tax / Brackets 0..1 Brackets 一或多個 <Bracket> 元素的容器。定義一組連續且不重疊的稅率級距。例如:印度商品及服務稅率。

只有在 <Period> 設為 night 且未指定 <Amount> 時,這個元素才有效。

TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount 0..1 float 稅金百分比或金額,適用於低於第一個稅率級距 starts_at 值的每晚房價。
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket 1..n Bracket 根據每晚房價定義稅級。
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at 1 float

定義稅級的下限。上限是在後續括號的 starts_at 欄位中指定。最後一個括號沒有上限。

如果每晚房價大於或等於稅級的 starts_at 值,且嚴格小於後續稅級的 starts_at 值,該稅級就會生效。

這個值必須嚴格大於 0。

TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @amount 1 float 套用至這個稅級的稅率或稅額值。
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets 0..1 AgeBrackets 可根據入住者的年齡指定一組稅金。

只有在未指定 <Brackets><Amount><Basis> 設為 person,以及 <Type> 設為 amount 時,這個元素才有效。

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge 0..1 AdultCharge 用於指定成人稅金的容器。
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge / @amount 1 float 適用於成人的固定稅額。
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets 容器,用來保存一或多個 <ChildAgeBracket> 元素。
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..n ChildAgeBracket 定義兒童的年齡範圍和對應的稅額。
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer

定義孩子的年齡上限。下限是在前一個括號的 max_age 欄位中指定 + 1。上下限都包含在內。第一個括號的下限為 0。

max_age 必須介於 0 到 17 之間 (含首尾)。

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 1 float 適用於這個年齡範圍兒童的固定稅額。
TaxFeeInfo / Property / Taxes / Tax / UserCountries 0..1 UserCountries 這個容器會列出含稅或未稅的使用者國家/地區。如果存在,系統只會為指定國家/地區的使用者納入或排除稅金。
TaxFeeInfo / Property / Taxes / Tax / UserCountries / @type 0..1 enum UserCountries 規格的類型。

有效值為 includeexclude

如果 UserCountries type 設為 include,稅金只會向所列國家/地區的使用者收取。

如果 UserCountries typeexclude,則只有所列國家/地區以外的使用者需要繳稅。

如果未設定 UserCountries type,系統會將其視為 include,稅金只會向所列國家/地區的使用者收取。

TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country 1..n Country 定義 UserCountries 清單中的一個國家/地區。
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code 1 string CLDR 國家/地區代碼,例如 DEFR。請注意,在某些國家/地區,CLDR 國家/地區代碼與 2 個字母的 ISO 國家/地區代碼不同。此外,系統不支援 CLDR 區域代碼。
TaxFeeInfo / Property / Taxes / Tax / Rank 1 integer

指定稅金或相關費用套用順序的等級。 舉例來說,值為 2 表示稅金是第二個套用的項目。 如果 <Type> 設為 cumulative_percent,就必須指定這個元素。一般來說,這項排序方式會套用至稅金和費用。

<Rank>2</Rank>

稅金和費用可重複使用相同排序值,但這可能會導致系統以任意累加的方式套用稅金和費用,進而產生未定義的行為。

或者,您可以在 <Rank> 中使用 "exclusive" 參數,表示相同等級的所有稅金和費用都適用於費率。預設值為 false,且所有相同等級的稅金和費用都會以任意方式套用至房價。"exclusive" 為選用屬性。

如果 exclusive 參數設為 true,系統只會將 <Tax> 中列出的第一個稅金,或 <Fee> 中列出的第一筆費用套用至稅率。

<Rank exclusive="true">1</Rank>

系統會先套用稅金,再套用手續費。因此,如果稅金和手續費的等級相同,且手續費已設為 "exclusive",系統仍會先套用稅金。true最佳做法是按照應用的順序列出稅金和費用。

如要納入相同等級的所有稅金和其他費用,請避免將 exclusive 設為 true

系統會先套用沒有等級的稅金和費用,再套用所有有等級的項目。

<Rank> 必須介於 1 到 99 之間 (含首尾)。

TaxFeeInfo / Property / Fees 0..1 Fees 一或多個 <Fee> 元素的容器。
TaxFeeInfo / Property / Fees / Fee 1..n Fee

適用於房源的個別費用。

<Tax> 的所有子項元素也支援 <Fee>,語法相同。

範例

每個資源最多只能加入 300 項稅金和費用。請參閱「刪除稅金」範例,瞭解如何從房源中移除稅金和相關費用。

基本訊息

基本 TaxFeeInfo 訊息:

<?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>

刪除稅金

刪除指定飯店的所有房源層級稅金和費用:

<?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>

板材稅

印度商品及服務稅率,依每晚房價計算。稅級如下:

  • 如果每晚房價小於或等於 1000,則免稅。
  • 如果每晚房價大於 1000 且小於或等於 7500,則稅率為 12%。
  • 如果每晚房價超過 7500 盧布,則稅率為 18%。
<?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>

以存在時間為準的稅金

系統會根據入住者的年齡收取稅金:

  • 成人入住者需支付 $20 美元的稅金。
  • 11 到 17 歲兒童的稅金為 $10 美元。
  • 0 到 10 歲兒童的稅金為 $5 美元。
<?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>

住宿日期範圍重疊

如果定義多個重疊的住宿日期範圍,則只要住宿日期符合其中一個範圍即可,不必符合所有範圍。住宿日期範圍必須指定為單一開始和結束範圍。

<?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>

多項稅金和費用 (僅限等級)

以下範例包含多項稅金和費用,且 exclusive="true" 具有不同等級。請考慮下列應套用至費率的稅金和費用:

  • 等級 1 exclusive="true" 的入住稅為 5%。
  • 客房服務稅為 10 美元,等級為 1。
  • 第 2 級別的清潔費為 $50 美元 exclusive="true"
  • 等級 3 的設施費為 2%。

系統會依據<Rank>,按時間順序套用稅金和相關費用:

  1. 系統會先套用 exclusive="true" 且等級為 1 的住宿稅。
  2. 由於先前的住宿稅為專屬稅項,因此系統不會套用等級 1 的客房服務稅。
  3. 接著套用exclusive="true"和排名 2 的清潔費。
  4. 系統會先套用等級 2 的清潔費,再套用等級 3 的設施費。

<?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>

回應

語法

TaxFeeInfoResponse 訊息使用下列語法:

<?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>

元素和屬性

TaxFeeInfoResponse 訊息包含下列元素和屬性:

元素 / @Attribute 發生次數 類型 說明
TaxFeeInfoResponse 1 Complex element 指出收到的 TaxFeeInfo 要求訊息是否成功或有問題的根元素。
TaxFeeInfoResponse / @timestamp 1 DateTime 這則訊息的建立日期和時間。
TaxFeeInfoResponse / @id 1 string 相關聯 TaxFeeInfo 訊息的專屬 ID。
TaxFeeInfoResponse / @partner 1 string 這則訊息的合作夥伴帳戶。
TaxFeeInfoResponse / Success 0..1 Success 表示系統已順利處理 TaxFeeInfo 訊息,且未出現警告、錯誤或失敗。

每則訊息都會提供 <Success><Issues>

TaxFeeInfoResponse / Issues 0..1 Issues 容器,用於處理 TaxFeeInfo 訊息時發生的一或多個問題。

每則訊息都會提供 <Success><Issues>

TaxFeeInfoResponse / Issues / Issue 1..n Issue 處理 TaxFeeInfo 訊息時發生的警告、錯誤或失敗說明。如要進一步瞭解這些問題,請參閱「動態饋給狀態錯誤訊息」。
TaxFeeInfoResponse / Issues / Issue / @code 1 integer 問題的 ID。
TaxFeeInfoResponse / Issues / Issue / @status 1 enum

遇到的問題類型。

有效值為 warningerrorfailure

範例

成功

以下是成功處理 TaxFeeInfo 訊息的回應。

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

問題

以下是因發生錯誤而未處理 TaxFeeInfo 訊息的回應。

<?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>