요청
구문
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 메시지에는 다음과 같은 요소와 속성이 있습니다.
| 요소 / @속성 | 발생 횟수 | 유형 | 설명 | 
|---|---|---|---|
| TaxFeeInfo | 1 | Complex element | 단일 숙박 시설의 세금 및 수수료를 정의하는 메시지의 루트 요소입니다. | 
| TaxFeeInfo / @timestamp | 1 | DateTime | 이 메시지의 생성 날짜 및 시간입니다. | 
| TaxFeeInfo / @id | 1 | string | 이 요청 메시지의 고유 식별자입니다. 이 값은 응답 메시지로 반환됩니다. 허용되는 문자는 a-z,A-Z,0-9,_(밑줄),-(대시)입니다. | 
| TaxFeeInfo / @partner | 1 | string | 이 메시지의 파트너 계정입니다. 이 문자열 값은 Hotel Center의 
        계정 설정 페이지에 표시된 '파트너 키' 값입니다. 참고: 여러 계정의 피드를 제공하는 백엔드가 있는 경우 이 값은 동일한 계정의  | 
| TaxFeeInfo / Property | 1..n | Property | 단일 숙박 시설의 세금 및 수수료를 정의하는 컨테이너입니다. | 
| TaxFeeInfo / Property / @action | 0..1 | string | 업데이트가 적용되는 방식을 지정합니다. overlay만 지원되며 기본값은overlay입니다. 이 업데이트가 적용되기 전에 이 속성의 이전Taxes및Fees가 삭제됩니다. | 
| TaxFeeInfo / Property / ID | 1 | string | 숙박 시설의 고유 식별자입니다. 이 값은 호텔 목록 피드의 <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 | 인벤토리 (객실 유형)의 고유 식별자입니다. 이 값은 거래(숙박 시설 데이터) 메시지의 <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 | 요금제의 고유 식별자입니다. 이 값은 트랜잭션 (숙박 시설 데이터) 메시지의 <PackageData>에 있는 PackageID 값과<OTA_HotelRateAmountNotifRQ>및<OTA_HotelAvailNotifRQ>메시지 모두에서<StatusApplicationControl>속성 아래에 설정된RatePlanCode값에 매핑됩니다.
        허용되는 최대 문자 수는 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'는 날짜 범위에 평일이 허용됨을 지정합니다. 유효한 문자는 다음과 같습니다. 
 모든 문자 조합이 유효합니다. | 
| 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'는 날짜 범위에 평일이 허용됨을 지정합니다. 유효한 문자는 다음과 같습니다. 
 모든 문자 조합이 유효합니다. | 
| 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'는 날짜 범위에 평일이 허용됨을 지정합니다. 유효한 문자는 다음과 같습니다. 
 모든 문자 조합이 유효합니다. | 
| TaxFeeInfo / Property / Taxes / Tax / StayDates | 0..1 | StayDates | 세금이 적용되는지 여부를 결정하는 하나 이상의 기간을 위한 컨테이너입니다(예: 시즌별 할인을 수용하기 위해). | 
| TaxFeeInfo / Property / Taxes / Tax / StayDates / @application | 1 | enum | 세금을 적용하는 방법을 설명합니다. 유효한 값은 다음과 같습니다. 
 이 속성은 항상 지정해야 합니다. | 
| 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'는 날짜 범위에 평일이 허용됨을 지정합니다. 유효한 문자는 다음과 같습니다. 
 모든 문자 조합이 유효합니다. | 
| TaxFeeInfo / Property / Taxes / Tax / Type | 1 | enum | 유효한 값은 다음과 같습니다. 
 
 | 
| TaxFeeInfo / Property / Taxes / Tax / Basis | 1 | enum | 유효한 값은 다음과 같습니다. 
 | 
| TaxFeeInfo / Property / Taxes / Tax / Period | 1 | enum | 유효한 값은 다음과 같습니다. 
 | 
| TaxFeeInfo / Property / Taxes / Tax / Currency | 0..1 | string | 세 글자로 된 세금의 통화 코드입니다 (예: USD). 참고:  | 
| TaxFeeInfo / Property / Taxes / Tax / Amount | 0..1 | float | 세금의 비율 또는 금액 값입니다. | 
| TaxFeeInfo / Property / Taxes / Tax / ApplicableNights | 0..1 | ApplicableNights | 이 값은 <Type>이 amount로 설정되고<Period>이 night로 설정된 경우에만 적용됩니다.세금이 적용될 수 있는 숙박 일수를 제한합니다. 
 | 
| 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>요소를 위한 컨테이너입니다.
        연속되고 중복되지 않는 세율 구간 집합을 정의합니다. 예: 인도 GST 슬래브 세금이 요소는  | 
| TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount | 0..1 | float | 첫 번째 구간의 starts_at값 미만의 숙박 요금에 적용되는 세금의 비율 또는 금액입니다. | 
| TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket | 1..n | Bracket | 1박 요금을 기준으로 세금 구간을 정의합니다. | 
| TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at | 1 | float | 세금 구간의 하한을 정의합니다. 상한은 후속 구간의  세율 구간은 1박 요금이 구간의  이 값은 0보다 커야 합니다. | 
| TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @amount | 1 | float | 이 세율에 적용되는 세금의 비율 또는 금액입니다. | 
| TaxFeeInfo / Property / Taxes / Tax / AgeBrackets | 0..1 | AgeBrackets | 숙박객의 연령을 기준으로 세금 집합을 지정할 수 있습니다. 이 요소는  | 
| 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 | 자녀 연령의 상한을 정의합니다. 하한은 앞의 괄호의  
 | 
| 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 사양의 유형입니다. 유효한 값은  UserCountries  UserCountries  UserCountries  | 
| TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country | 1..n | Country | UserCountries 목록에서 한 국가를 정의합니다. | 
| TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code | 1 | string | DE또는FR과 같은 CLDR 국가 코드입니다. 일부 국가의 경우 CLDR 국가 코드가 2자리 ISO 국가 코드와 다릅니다. 또한 CLDR 지역 코드는 지원되지 않습니다. | 
| TaxFeeInfo / Property / Taxes / Tax / Rank | 1 | integer | 세금 또는 수수료의 적용 순서를 지정하는 순위입니다.
        예를 들어 값이 2이면 세금이 두 번째로 적용됩니다.
         <Rank>2</Rank> 세금과 수수료 간에 중복된 순위 값이 허용되지만, 이로 인해 세금과 수수료가 임의로 누적 적용되는 정의되지 않은 동작이 발생할 수 있습니다. 또는  
 <Rank exclusive="true">1</Rank> 세금은 수수료보다 먼저 적용됩니다. 따라서 세금과 수수료의 순위가 동일하고 수수료의  동일한 순위의 모든 세금 및 수수료를 포함하려면  순위가 없는 세금 및 수수료는 순위가 지정된 모든 항목보다 먼저 적용됩니다. 
 | 
| TaxFeeInfo / Property / Fees | 0..1 | Fees | 하나 이상의 <Fee>요소를 위한 컨테이너입니다. | 
| TaxFeeInfo / Property / Fees / Fee | 1..n | 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>
슬래브 세금
인도 GST 슬래브 세금으로, 숙박 요금을 기준으로 적용됩니다. 세금 구간은 다음과 같습니다.
- 1박 요금이 1,000 이하인 경우 세금이 부과되지 않습니다.
- 1박 요금이 1,000보다 크고 7,500 이하인 경우 12% 세금
- 1박 요금이 7,500을 초과하는 경우 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%
- 순위가 1인 10달러 룸서비스 세금입니다.
- 순위 2 exclusive="true"의 청소 요금 50달러
- 순위가 3인 편의시설 수수료 2%
<Rank>에 따라 세금 및 수수료가 적용되는 시간순서는 다음과 같습니다.
- exclusive="true"및 순위 1이 있는 숙박세가 먼저 적용됩니다.
- 이전 숙박세가 배타적이므로 순위가 1인 룸서비스 세금이 적용되지 않습니다.
- 다음으로 exclusive="true"및 순위 2의 청소 요금이 적용됩니다.
- 순위가 3인 편의시설 요금은 순위가 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>
응답
구문
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 메시지에는 다음 요소와 속성이 있습니다.
| 요소 / @속성 | 발생 횟수 | 유형 | 설명 | 
|---|---|---|---|
| TaxFeeInfoResponse | 1 | Complex element | 수신된 TaxFeeInfo 요청 메시지의 성공 또는 문제를 나타내는 루트 요소입니다. | 
| TaxFeeInfoResponse / @timestamp | 1 | DateTime | 이 메시지의 생성 날짜 및 시간입니다. | 
| TaxFeeInfoResponse / @id | 1 | string | 연결된 TaxFeeInfo 메시지의 고유 식별자입니다. | 
| TaxFeeInfoResponse / @partner | 1 | string | 이 메시지의 파트너 계정입니다. | 
| TaxFeeInfoResponse / Success | 0..1 | Success | 경고, 오류 또는 실패 없이 TaxFeeInfo 메시지가 성공적으로 처리되었음을 나타냅니다. 각 메시지에  | 
| TaxFeeInfoResponse / Issues | 0..1 | Issues | TaxFeeInfo메시지를 처리하는 동안 발생한 하나 이상의 문제 컨테이너입니다.각 메시지에  | 
| TaxFeeInfoResponse / Issues / Issue | 1..n | Issue | TaxFeeInfo 메시지를 처리하는 중에 발생한 경고, 오류 또는 실패에 대한 설명입니다. 이러한 문제에 관한 자세한 내용은 피드 상태 오류 메시지를 참고하세요. | 
| TaxFeeInfoResponse / Issues / Issue / @code | 1 | integer | 문제의 식별자입니다. | 
| TaxFeeInfoResponse / Issues / Issue / @status | 1 | enum | 발생한 문제의 유형입니다. 유효한 값은  | 
예
성공
다음은 성공적으로 처리된 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>