Запросы
Синтаксис
 Сообщение 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 | Уникальный идентификатор запроса. Это значение возвращается в ответном сообщении. Допустимые символы: az,AZ,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 | Уникальный идентификатор объекта. Это значение должно соответствовать идентификатору отеля, указанному с помощью <id> в элементе <listing> в ленте списка отелей. Идентификатор отеля также указан в 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>также ссылается атрибутInvTypeCodeв сообщенияхOTA_HotelRateAmountNotifRQ.) | 
| 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 | Уникальный идентификатор тарифного плана. Это значение соответствует значению PackageID в поле <PackageData>сообщения « Транзакция (данные объекта)» и значениюRatePlanCode, заданному в атрибуте<StatusApplicationControl>в сообщениях<OTA_HotelRateAmountNotifRQ>и<OTA_HotelAvailNotifRQ>. Максимальное количество символов — 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>установлен на сумму , а<Period>установлен на ночь .Ограничивает количество ночей, за которые может взиматься налог.  Укажите либо  | 
| 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 | Определяет налоговую категорию на основе ночных ставок. | 
| TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at | 1 | float |  Определяет нижнюю границу налоговой категории. Верхняя граница указывается в поле   Налоговая категория активна, когда ежедневная ставка больше или равна значению  Это значение должно быть строго больше 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.  Допустимые значения:   Если   Тогда как если   Если  | 
| TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country | 1..n | Country | Определяет одну страну в списке UserCountries. | 
| TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code | 1 | string | Код страны CLDR , например, DEилиFR. Обратите внимание, что для некоторых стран код страны CLDR не совпадает с двухбуквенным кодом страны 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) в Индии, применяемый на основе ночных тарифов. Налоговые категории:
- Налог не взимается, если стоимость проживания за ночь меньше или равна 1000.
- Налог 12%, если стоимость проживания за ночь больше 1000 и меньше или равна 7500.
- Налог 18%, если стоимость проживания за ночь превышает 7500.
<?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 долларов.
- Налог в размере 10 долларов для детей в возрасте от 11 до 17 лет.
- Налог в размере 5 долларов США для детей в возрасте от 0 до 10 лет.
<?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" и разными рангами. Рассмотрим следующие налоги и сборы, которые следует применить к ставке:
-  Налог на проживание в размере 5% с рангом 1 exclusive="true".
- Налог на обслуживание номеров в размере 10 долларов США с рангом 1.
-  Плата за уборку в размере 50 долларов США с рангом 2 exclusive="true".
- Плата за удобства в размере 2% при ранге 3.
 Хронологический порядок применения налогов и сборов в зависимости от <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>