Sintaxis
En el mensajeTaxFeeInfo
se utiliza la siguiente sintaxis:
<?xml version="1.0" encoding="UTF-8"?> <TaxFeeInfo timestamp="timestamp" id="message_ID" partner="partner_account_name"> <Property> <ID>HotelID</ID> <Taxes> <Tax> <StayDates> <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/> <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/> </StayDates> <RoomTypes> <RoomType id="RoomID_1"/> <RoomType id="RoomID_2"/> </RoomTypes> <RatePlans> <RatePlan id="PackageID_1"/> <RatePlan id="PackageID_2"/> </RatePlans> <Type>[percent|amount]</Type> <Basis>[room|person]</Basis> <Period>[stay|night]</Period> <Currency>currency_code</Currency> <Amount>tax_amount</Amount> </Tax> </Taxes> <Fees> <Fee> <StayDates> <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/> <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/> </StayDates> <RoomTypes> <RoomType id="RoomID_1"/> <RoomType id="RoomID_2"/> </RoomTypes> <RatePlans> <RatePlan id="PackageID_1"/> <RatePlan id="PackageID_2"/> </RatePlans> <Type>[percent|amount]</Type> <Basis>[room|person]</Basis> <Period>[stay|night]</Period> <Currency>currency_code</Currency> <Amount>fee_amount</Amount> </Fee> </Fees> </Property> </TaxFeeInfo>
Elementos y atributos
El mensaje TaxFeeInfo incluye los siguientes elementos y atributos:Elemento/@Atributo | Repeticiones | Tipo | Descripción |
---|---|---|---|
TaxFeeInfo | 1 | Complex element | Elemento raíz de un mensaje que define los impuestos y las tasas de una propiedad. |
TaxFeeInfo/@timestamp | 1 | DateTime | Fecha y hora de creación de este mensaje. |
TaxFeeInfo/@id | 1 | String | Identificador único de cada mensaje TaxFeeInfo. |
TaxFeeInfo/@partner | 1 | String | Cuenta de partner de este mensaje. El valor de esta cadena es "Clave del partner", que aparece en la página Configuración de la cuenta de Hotel Center.
Nota: Si tienes un backend que proporciona feeds para varias cuentas, este valor debe coincidir con el del atributo |
TaxFeeInfo/Property | 1..n | Property | Contenedor para definir los impuestos y las tasas de una propiedad. |
TaxFeeInfo/Property/ID | 1 | String | Identificador único de la propiedad. Este valor debe coincidir con el ID de hotel especificado en la cadena <id> del elemento <listing> del feed de lista de hoteles. El ID de hotel también aparece en Hotel Center. |
TaxFeeInfo/Property/Taxes | 0..1 | Taxes | Contenedor para uno o más elementos <Tax> . |
TaxFeeInfo/Property/Taxes/Tax | 1..n | Tax | Impuestos concretos que se aplican a la propiedad. |
TaxFeeInfo/Property/Taxes/Tax/StayDates | 0..1 | StayDates | Contenedor para uno o más periodos que determinan si se aplica el impuesto (por ejemplo, para ajustar los impuestos según la temporada):
Nota: No se pueden asignar los valores "night" a |
TaxFeeInfo/Property/Taxes/Tax/StayDates/DateRange | 1..99 | DateRange | Periodo que indica las fechas en las que debe aplicarse el impuesto. |
TaxFeeInfo/Property/Taxes/Tax/StayDates/DateRange/ @start | 0..1 | Date | Fecha de inicio del periodo (en función de la zona horaria de la propiedad). Esta fecha debe ser la misma o anterior a la indicada en end . Si no se especifica start , el periodo es ilimitado en lo que se refiere a la fecha de inicio. |
TaxFeeInfo/Property/Taxes/Tax/StayDates/DateRange/ @end | 0..1 | Date | Fecha de finalización del periodo (en función de la zona horaria de la propiedad). Esta fecha debe ser la misma o posterior a la indicada en start . Si no se especifica end , el periodo es ilimitado en lo que se refiere a la fecha de finalización. |
TaxFeeInfo/Property/Taxes/Tax/StayDates/DateRange/ @days_of_week | 0..1 | String | Días de la semana permitidos en el periodo. Si no se especifica, se permiten todos los días. Cada carácter de la cadena indica un día. Por ejemplo, "MTWHF" especifica que se permiten días laborables en el periodo. Los caracteres válidos son:
Cualquier combinación de caracteres es válida. |
TaxFeeInfo/Property/Taxes/Tax/RoomTypes | 0..1 | RoomTypes | Contenedor para una lista de tipos de habitación a las que se aplica el impuesto.
El impuesto se aplica a cada elemento <RoomType> especificado. Si no se especifica <RoomTypes> , el impuesto se aplica a todas las habitaciones. |
TaxFeeInfo/Property/Taxes/Tax/RoomTypes/RoomType | 1..n | RoomType | Especifica el tipo de habitación, que se define en un elemento <RoomData> de un mensaje Transaction (Property Data) y se identifica mediante su valor RoomID. También se hace referencia al valor de <RoomID> mediante el atributo InvTypeCode de los mensajes OTA_HotelRateAmountNotifRQ. |
TaxFeeInfo/Property/Taxes/Tax/RoomTypes/RoomType/@id | 1 | String | Identificador único del inventario (tipo de habitación). Este valor se asigna a <RoomID> en un mensaje Transaction (Property Data). Admite un máximo de 50 caracteres. |
TaxFeeInfo/Property/Taxes/Tax/RatePlans | 0..1 | RatePlans | Contenedor para una lista de planes de precios a los que se aplica el impuesto.
Si no se especifica <RatePlans> , el impuesto se aplica a todos los planes de precios. |
TaxFeeInfo/Property/Taxes/Tax/RatePlans/RatePlan | 1..n | RatePlan | Especifica un plan de precios. Un plan de precios se define a partir de una combinación de paquetes, precios y disponibilidad, tal como se define en los mensajes Transaction (Property Data), OTA_HotelRateAmountNotifRQ y OTA_HotelAvailNotifRQ, y se identifica por el PackageID. |
TaxFeeInfo/Property/Taxes/Tax/RatePlans/RatePlan @id | 1 | String | Identificador único del plan de precios. Este valor se corresponde con el valor de PackageID de <PackageData> en un mensaje Transaction (Property Data) y en el atributo RatePlanCode de <StatusApplicationControl> en los mensajes <OTA_HotelRateAmountNotifRQ> y <OTA_HotelAvailNotifRQ> .
Admite un máximo de 50 caracteres. |
TaxFeeInfo/Property/Taxes/Tax/Type | 1 | Enum | Estos son los valores válidos:
|
TaxFeeInfo/Property/Taxes/Tax/Basis | 1 | Enum | Estos son los valores válidos:
|
TaxFeeInfo/Property/Taxes/Tax/Period | 1 | Enum | Este valor solo se aplica si se asigna un importe a Estos son los valores válidos:
|
TaxFeeInfo/Property/Taxes/Tax/Currency | 0..1 | String | Código de tres letras de la moneda asignada al impuesto (por ejemplo, USD). |
TaxFeeInfo/Property/Taxes/Tax/Amount | 1 | Float | Valor del porcentaje o del importe del impuesto. |
TaxFeeInfo/Property/Fees | 0..1 | Fees | Contenedor para uno o más elementos <Fee> . |
TaxFeeInfo/Property/Fees/Fee | 1..n | Fee | Tasa concreta que se aplica a la propiedad. |
TaxFeeInfo/Property/Fees/Fee/StayDates | 0..1 | StayDates | Contenedor para uno o más periodos que determinan si se aplica la tasa (por ejemplo, para ajustar las tasas según la temporada):
Nota: No se pueden asignar los valores "night" a |
TaxFeeInfo/Property/Fees/Fee/StayDates/DateRange | 1..20 | DateRange | Periodo que indica las fechas en las que debe aplicarse la tasa. |
TaxFeeInfo/Property/Fees/Fee/StayDates/DateRange @start | 0..1 | Date | Fecha de inicio del periodo (en función de la zona horaria de la propiedad). Esta fecha debe ser la misma o anterior a la indicada en end . Si no se especifica start , el periodo es ilimitado en lo que se refiere a la fecha de inicio. |
TaxFeeInfo/Property/Fees/Fee/StayDates/DateRange @end | 0..1 | Date | Fecha de finalización del periodo (en función de la zona horaria de la propiedad). Esta fecha debe ser la misma o posterior a la indicada en start . Si no se especifica end , el periodo es ilimitado en lo que se refiere a la fecha de finalización. |
TaxFeeInfo/Property/Fees/Fee/StayDates/DateRange @days_of_week | 0..1 | String | Días de la semana permitidos en el periodo. Si no se especifica, se permiten todos los días. Cada carácter de la cadena indica un día. Por ejemplo, "MTWHF" especifica que se permiten días laborables en el periodo. Los caracteres válidos son:
Cualquier combinación de caracteres es válida. |
TaxFeeInfo/Property/Fees/Fee/RoomTypes | 0..1 | RoomTypes | Contenedor para una lista de tipos de habitación a las que se aplica la tasa.
La tasa se aplica a cada elemento <RoomType> especificado. Si no se especifica <RoomTypes> , la tasa se aplica a todas las habitaciones. |
TaxFeeInfo/Property/Fees/Fee/RoomTypes/RoomType | 1..n | RoomType | Especifica el tipo de habitación, que se define en un elemento <RoomData> de un mensaje Transaction (Property Data), y se hace referencia a él mediante el valor <RoomID> . También se hace referencia al valor de <RoomID> mediante el atributo InvTypeCode de los mensajes OTA_HotelRateAmountNotifRQ. |
TaxFeeInfo/Property/Fees/Fee/RoomTypes/RoomType/@id | 1 | String | Identificador único del inventario (tipo de habitación). Este valor se asigna a <RoomID> en un mensaje Transaction (Property Data). Admite un máximo de 50 caracteres. |
TaxFeeInfo/Property/Fees/Fee/RatePlans | 0..1 | RatePlans | Contenedor para una lista de planes de precios a los que se aplica la tasa.
Si no se especifica <RatePlans> , la tasa se aplica a todos los planes de precios. |
TaxFeeInfo/Property/Fees/Fee/RatePlans/RatePlan | 1..n | RatePlan | Especifica un plan de precios. Un plan de precios se define a partir de una combinación de paquetes, precios y disponibilidad, tal como se define en los mensajes Transaction (Property Data), OTA_HotelRateAmountNotifRQ y OTA_HotelAvailNotifRQ, y se identifica por el PackageID. |
TaxFeeInfo/Property/Fees/Fee/RatePlans/RatePlan/ @id | 1 | String | Identificador único del plan de precios. Este valor se corresponde con el valor de PackageID de <PackageData> en un mensaje Transaction (Property Data) y en el atributo RatePlanCode de <StatusApplicationControl> en los mensajes <OTA_HotelRateAmountNotifRQ> y <OTA_HotelAvailNotifRQ> .
Admite un máximo de 50 caracteres. |
TaxFeeInfo/Property/Fees/Fee/Type | 1 | Enum | Estos son los valores válidos:
|
TaxFeeInfo/Property/Fees/Fee/Basis | 1 | Enum | Estos son los valores válidos:
|
TaxFeeInfo/Property/Fees/Fee/Period | 1 | Enum | Este valor solo se aplica si se asigna un importe a Estos son los valores válidos:
|
TaxFeeInfo/Property/Fees/Fee/Currency | 0..1 | String | Código de tres letras de la moneda asignada a la tasa (por ejemplo, USD). |
TaxFeeInfo/Property/Fees/Fee/Fee Amount | 1 | Float | Valor del porcentaje o del importe de la tasa. |
Ejemplos
Ejemplo 1
En el siguiente ejemplo se muestra un mensaje TaxFeeInfo
básico:
<?xml version="1.0" encoding="UTF-8"?> <TaxFeeInfo timestamp="2020-05-18T16:20:00-04:00" id="12345678"> <Property> <ID>Property_1</ID> <Taxes> <Tax> <Type>percent</Type> <Basis>room</Basis> <Period>night</Period> <Currency>USD</Currency> <Amount>10.00</Amount> </Tax> </Taxes> <Fees> <Fee> <Type>amount</Type> <Basis>room</Basis> <Period>stay</Period> <Currency>USD</Currency> <Amount>5.00</Amount> </Fee> </Fees> </Property> </TaxFeeInfo>