세금 수수료

요청

구문

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의 계정 설정 페이지에 표시된 '파트너 키' 값입니다.

참고: 여러 계정의 피드를 제공하는 백엔드가 있는 경우 이 값은 동일한 계정의 <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 숙박 시설의 고유 식별자입니다. 이 값은 호텔 목록 피드의 <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'는 날짜 범위에 평일이 허용됨을 지정합니다.

유효한 문자는 다음과 같습니다.

  • 월요일의 경우 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: 숙박 기간 범위의 날짜와 겹치는 일정의 숙박 일수에만 세금을 적용합니다.

    참고: overlap<Period>night로 설정된 경우에만 유효합니다.

이 속성은 항상 지정해야 합니다.

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>은 1인당 적용됩니다. 이 값은 <Type>이 금액으로 설정된 경우에만 적용됩니다.
TaxFeeInfo / Property / Taxes / Tax / Period 1 enum

유효한 값은 다음과 같습니다.

  • stay: <Amount>이 숙박의 총 요금에 추가됩니다.
  • night: <Amount>은 숙박 1박당 추가됩니다.
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 string 세 글자로 된 세금의 통화 코드입니다 (예: USD).

참고: <Currency>가 지정되지 않았지만 <Amount>가 지정된 경우 <Currency> 값은 기본 요금 통화로 기본 설정됩니다.

TaxFeeInfo / Property / Taxes / Tax / Amount 0..1 float 세금의 비율 또는 금액 값입니다.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights 0..1 ApplicableNights 이 값은 <Type>amount로 설정되고 <Period>night로 설정된 경우에만 적용됩니다.

세금이 적용될 수 있는 숙박 일수를 제한합니다.

max 또는 excluded 중 하나를 지정할 수 있지만 둘 다 지정할 수는 없습니다.

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 슬래브 세금

이 요소는 <Period>night로 설정되고 <Amount>가 지정되지 않은 경우에만 유효합니다.

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

세금 구간의 하한을 정의합니다. 상한은 후속 구간의 starts_at 필드에 지정됩니다. 마지막 구간에는 상한이 없습니다.

세율 구간은 1박 요금이 구간의 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 typeinclude로 설정된 경우 세금은 나열된 국가의 사용자에게만 적용됩니다.

UserCountries typeexclude인 경우 세금은 나열된 국가 외부의 사용자에게만 적용됩니다.

UserCountries type가 설정되지 않은 경우 include로 처리되며 세금은 나열된 국가의 사용자에게만 적용됩니다.

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이면 세금이 두 번째로 적용됩니다. <Type>cumulative_percent로 설정된 경우 이 요소는 항상 지정해야 합니다. 일반적으로 이 순서는 세금과 수수료 모두에 적용됩니다.

<Rank>2</Rank>

세금과 수수료 간에 중복된 순위 값이 허용되지만, 이로 인해 세금과 수수료가 임의로 누적 적용되는 정의되지 않은 동작이 발생할 수 있습니다.

또는 <Rank> 내에서 "exclusive" 매개변수를 사용하여 동일한 순위의 모든 세금과 수수료가 요금에 적용됨을 나타냅니다. 기본값은 false이며 동일한 순위의 모든 세금과 수수료는 임의의 방식으로 요율에 적용됩니다. "exclusive"은 선택사항입니다.

exclusive 매개변수가 true로 설정된 경우 <Tax> 내에 나열된 첫 번째 세금 또는 <Fee> 내에 나열된 첫 번째 수수료만 요율에 적용됩니다.

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

세금은 수수료보다 먼저 적용됩니다. 따라서 세금과 수수료의 순위가 동일하고 수수료의 "exclusive"true로 설정된 경우에도 세금이 먼저 적용됩니다. 세금과 수수료는 적용되어야 하는 순서대로 나열하는 것이 가장 좋습니다.

동일한 순위의 모든 세금 및 수수료를 포함하려면 exclusivetrue로 설정하지 마세요.

순위가 없는 세금 및 수수료는 순위가 지정된 모든 항목보다 먼저 적용됩니다.

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

슬래브 세금

인도 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>에 따라 세금 및 수수료가 적용되는 시간순서는 다음과 같습니다.

  1. exclusive="true" 및 순위 1이 있는 숙박세가 먼저 적용됩니다.
  2. 이전 숙박세가 배타적이므로 순위가 1인 룸서비스 세금이 적용되지 않습니다.
  3. 다음으로 exclusive="true" 및 순위 2의 청소 요금이 적용됩니다.
  4. 순위가 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 메시지가 성공적으로 처리되었음을 나타냅니다.

각 메시지에 <Success> 또는 <Issues>가 있습니다.

TaxFeeInfoResponse / Issues 0..1 Issues TaxFeeInfo 메시지를 처리하는 동안 발생한 하나 이상의 문제 컨테이너입니다.

각 메시지에 <Success> 또는 <Issues>가 있습니다.

TaxFeeInfoResponse / Issues / Issue 1..n Issue TaxFeeInfo 메시지를 처리하는 중에 발생한 경고, 오류 또는 실패에 대한 설명입니다. 이러한 문제에 관한 자세한 내용은 피드 상태 오류 메시지를 참고하세요.
TaxFeeInfoResponse / Issues / Issue / @code 1 integer 문제의 식별자입니다.
TaxFeeInfoResponse / Issues / Issue / @status 1 enum

발생한 문제의 유형입니다.

유효한 값은 warning, error, failure입니다 .

성공

다음은 성공적으로 처리된 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>