Listings 4.2.1

Index Reference
Listings integration captures all of the content needed to display rental units on your channel. The current version of the Listings integration is 4.2.1.

Index files - Provide metadata and URLs so that you can retrieve the corresponding content files.
  • Advertisers index
  • Listing index
  • Lodging Configuration index (also includes default policies and rules for all listings)
  • Lodging Rate index
  • Unit Availability index
Content files - Provides all settings and content for rental unit listings.
  • Listing content - Listing information including the headline, description, photo, and amenities.
  • Lodging Configuration content - Policies and rules that are applied to a listing/unit combination, which override default settings in the Lodging Configuration index.
  • Lodging Rate content - Nightly rates, fees, discounts, and taxes used to calculate the rental amount charged to travelers.
  • Unit Availability content - Availability dates for a particular unit type and rules that must be enforced for the stay
Here is an overview of how the files reference each other:

The Advertisers index contains links to the Listing, Lodging Configuration, Lodging Rate, and Unit Availability index for each specified PM.

On each PM's endpoint, each index file provides a link to the corresponding content file, so that you can retrieve the content for the listing.




Advertisers Content Index


The Advertisers Content index (or "Advertisers index") is to represent multiple advertisers; PMs (property managers or self-managing propety owners). It is an index of all PMs that will distribute properties to your channel which are enabled specifically for you.

IMPORTANT: You will only see a PM in your Vertical Partner feed once they have been enabled by an administrator.
This index contains links to the Listing, Lodging Configuration, Lodging Rate, and Unit Availability index for each specified PM.

ELEMENT <advertisersContentIndex>

This is the root element of the index.

<?xml version="1.0" encoding="UTF-8"?>
<advertisersContentIndex>
    <documentVersion>{version}</documentVersion>
    <advertiserIndexEntry>{entry}</advertiserIndexEntry>
    ...
</advertisersContentIndex>

Child Elements

NameDescription
<documentVersion> Required.Listing version. 4.2.1
Type:  string
<advertiserIndexEntry> Required.  Container for the content URLs for this advertiser.
Type: <advertiserIndexEntry>

ELEMENTS <advertiserIndexEntry>

This element contains URLs used to retrieve feed content for the advertiser. Each URL points to the content indexes for each content type (listings, rates, availability, and so on).
<advertiserIndexEntry>
     <advertiserAssignedId>{id}</advertiserAssignedId>
     <advertiserName>{name}</advertiserName>
     <advertiserListingContentIndexUrl>{url}</advertiserListingContentIndexUrl>
     <advertiserLodgingConfigurationContentIndexUrl>{url}</advertiserLodgingConfigurationContentIndexUrl>
     <advertiserLodgingRateContentIndexUrl>{url}</advertiserLodgingRateContentIndexUrl>
     <advertiserUnitAvailabilityContentIndexUrl>{url}</advertiserUnitAvailabilityContentIndexUrl>
</advertiserIndexEntry>

Child Elements

Name
Description
<advertiserAssignedId>
Required.Unique ID of the property manager (PM)
Type: string
<advertiserName>
Name of the individual PM.
Type: string
<advertiserListingContentIndexUrl>
URL to the Listing index.
Type:  string
<advertiserLodgingConfigurationContentIndexUrl>
URL to the Lodging Configuration index. 
Type:  string
<advertiserLodgingRateContentIndexUrl>
URL to the Lodging Rate index.
Type:  string
<advertiserUnitAvailabilityContentIndexUrl>
URL to the Unit Availability index.
Type:  string

Listing Content Index

The Advertiser Listing Content index (or "Listing index") includes metadata and a link to the Listing content for each specified listing.

Retrieve this index once a day from your endpoint. You can also utilize the <lastUpdatedDate>;  in any of the feeds to determine if an update is required at any time.  It is highly recommended to retrieve and refresh these feeds at least once a day, using the <lastUpdatedDate> 

ELEMENT <advertiserListingContentIndex>

This is the root element of the index and contains child elements that point to content URLs.
<?xml version="1.0" encoding="UTF-8"?>
    <advertiserListingContentIndex>
    <documentVersion>4.2.1</documentVersion>
    <advertiser>{advertiser}</advertiser>
</advertiserListingContentIndex>

Child Elements


Name
Description
<documentVersion>Listing XSD version. 
Type: string
<advertiser>Container that provides metadata about the property manager (PM) and a link to the listing content.
Type: <advertiser>

ELEMENT <advertiser>

This element provides metadata about the property manager (PM) and an entry for each of the PM's listings.
<advertiser>
   <assignedId>{id}</assignedId>
   <listingContentIndexEntry>{entry}</listingContentIndexEntry>
   ...
</advertiser>

Child Elements

NameDescription
<assignedId>Unique ID assigned to the PM.
Type: string
<listingContentIndexEntry>Information about the PM's Listing index.
Type: <listingContentIndexEntry>


ELEMENT <listingContentIndexEntry>

This element contains metadata about a listing and a link to the relevant content to be imported. The index entry refers to the static (listing) content for a property. This element is provided for each of the PM's listings.

<listingContentIndexEntry>
   <listingExternalId>{id}</listingExternalId>
   <active>{boolean}</active>
   <lastUpdatedDate>{dateTime}</lastUpdatedDate>
   <listingUrl>{url}</listingUrl>
</listingContentIndexEntry>

Child Elements


NameDescription
<listingExternalId> Unique ID of this listing in the integration partner's system. 
Type: string
<active> Whether the listing should be active and displayed on your sites.  Each unit in your feed will show as "true". Units are enabled into these feeds via GuestSmiles Admin for your the Vertical Partner channel.
Type: boolean
<lastUpdatedDate> Date and time when the referenced content was last updated. If the specified date is within the last three days, content is retrieved and processed (if the listing is active). Format is yyyy-MM-ddTHH:mm:ssZ.
Type: date Time
<listingUrl>URL to the Listing content for this listing.
Type: string

Listing Content Index

This file provides most of the content needed to create the listing for a rental unit. Content in this file is static and includes the headline, description, photo, amenities ("feature values"), and safety features for each rental unit. The Listing index contains a link to this file for each listing.

When creating this XML file, keep the following in mind, each listing and unit are identified by <listingExternalId>  and  <unitExternalId> , respectively. External IDs (unit id's) are assigned globally across all PM's and should never change.

ELEMENT<listing>

This is the root element of the index.
<?xml version="1.0" encoding="UTF-8"?>
<listing>
    <externalId>{id}</externalId>
    <active>{boolean}</active>
    <adContent>{content}</adContent> 
    <featureValues>{amenities}</featureValues>
    <location>{location}</location>
    <images>{images}</images>
    <units>{units}</units>
 </listing>

Child Elements

NameDescription
<externalId>Unique ID of the listing. This value should correspond with the <externalId> value used in the index.  Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: integer
<active>Whether the listing is active.
Type: boolean
<adContent> Descriptive fields of the listing.
Type: <adContent>
<featureValues>Standardized property features (amenities) that distinguish the listing.
Type: <featureValues>
<location>Information about the location of the rental unit.
Type: <location>
<images>A collection of images for the listing.
Type: <images>
<units> Details about the rental unit. Only one unit is supported per listing (do not specify more than one <unit> child element).
Type: <units>


ELEMENT <adcontent>

The adcontent for each listing, including the listing's headline and description, includes important details that attract travelers.
<adContent>
	<description>
		<texts>
		<text locale="{code}">
		<textValue>{description}</textValue>
		</text>
		...
		</texts>
	</description>
	<headline>
		<texts>
		<text locale="{code}">
		<textValue>{headline}</textValue>
		</text>
		...
		</texts>
	</headline>
	<propertyName>
		<texts>
		<text locale="{code}">
		<textValue>{name}</textValue>
		</text>
		...
		</texts>
	</propertyName>
 </adContent>

Child Elements

NameDescription
<description> Description of the property. At least 400 characters are required, though you can specify up to 10,000 characters. The description should include as much information as possible. Type:  string
<headline> Headline for the advertisement. At least 20 characters are required for the listing. Though the integration allows for up to 400 characters.  Type:  string
<propertyName> Name of the property. PM can specify up to 400 characters.  Type:  string

ELEMENT <featurevalues>

This element provides standardized property features (amenities) that distinguish the listing. Travelers use site filters to locate properties based on amenities.  We use <featuresValues>  to describe all amenities and accommodations that the traveler can find on the property.
<featureValues>
	<featureValue>
		<count>{integer}</count>
		<description>{description}</description>
		<listingFeatureName>{name}</listingFeatureName>
	</featureValue>
	...
</featureValues>

Child Elements

The <featureValues> element contains child elements that describe each amenity. For each <featureValue> in the <featureValues> element, these fields are available:

NameDescription
<count> Quantity of the feature represented.
Type:
 integer
<description>Description of the feature. PM can specify up to 1,000 characters.
Type:
 string
<listingFeatureName>Pre-defined value for each listing feature.
 Type: string

ELEMENT <location>

This is the location of the listing. When specifying values for the <location> fields, be aware of the following:
  • <geoCode>(longitude and latitude coordinates) must match <addressLine1> if the rental unit is located in one of these "Tier 1" countries: AD, AT, AU, BE, BG, BR, CA, CH, CZ, DE, DK, DO, ES, FR, GB, GR, HR, HU, ID, IN, IT, NL, NZ, PL, PR, SE, SI, TC, TR, US, and VI.
  • For properties located in other countries, <geoCode>must match <postalCode> or <city>.
<location>
    <address>{address}</address>
    <description>
	    <texts>
	    <text locale="{code}">
	    <textValue>{description}</textValue>
	    </text>
	    ...
	    </texts>
    </description>
    <geoCode>
	    <latLng>
	        <latitude>{latitude}</latitude>
	        <longitude>{longitude}</longitude>
	    </latLng>
    </geoCode>
    <nearestPlaces>{places}</nearestPlaces>
    <showExactLocation>{boolean}</showExactLocation>
</location>

ELEMENT <address>

This is the address for the listing
<address>
<addressLine1>{addrLine}</additionalAddressLine1>
<addressLine2>{street}</addressLine2>
<city>{city}</city>
<stateOrProvince>{state}</stateOrProvince>
<country>{country}</country>
<postalCode>{code}</postalCode>
</address>

Child Elements


NameDescription
<addressLine1>Line one of the physical street address. Pm can specify up to 225 characters.
Type: string
<addressLine2>Line two of the physical street address. Pm can specify up to 225 characters.
Type: string
<city>City where the property is located. PM can specify up to 80 characters.
Type: string
<stateOrProvince>State or province of the property. PM can specify up to 80 characters.
Type: string
<country>Two-character country code. See Country ISO Code values.
Type: string
<postalCode>Postal code of the address. PM can specify up to 50 characters.
Type: string

ELEMENT <nearestPlaces>

This element provides nearby places of interest.

<nearestPlaces>
	<nearestPlace placeType="{type}">
	<distance>{decimal}</distance>
	<distanceUnit>{unit}</distanceUnit>
	<name>
		<texts>
		<text locale="{code}">
		<textValue>{name}</textValue>
		</text>
		...
		</texts>
	</name>
	</nearestPlace>
...
</nearestPlaces>

Child Elements

The <nearestPlaces> element contains child elements that describe each place near the property. For each <nearestPlace> in the <nearestPlaces> element, these fields are available.
The placeType attribute is required in the  <nearestPlace>  element and must specify one of the Place Type values, we do not use a Place Type value more than once for a listing.
NameDescription
<distance>Distance to place of interest, expressed in the given <distanceUnit> element.
Type: decimal
<distanceUnit>Unit of measure in which the distance to the place of interest is expressed, such as KILOMETERS. See Distance Unit values. 
Type: string
<name>Localized name(s) of place of interest. For each localized name, we specify the <text> child element in the <texts> element. We always specify the locale attribute for each <text> element.  For the name, a PM can specify up to 200 characters.
Type: string

ELEMENT <images>

Each listing can contain a collection of named images to associate with the property. Images allow the traveler to envision what their vacation might be like if they rent your property. Images are treated as immutable based on the <externalId> provided.  Image titles are updated every time the image collection is updated. If an <externalId> and image URL are removed from the XML, the image should be removed from the listing. 
Also, be aware of the following:
  • Supported image types: JPG, GIF, and PNG.
  • The first image in the collection is used as the thumbnail image for the listing. This is the first image in the list on the gallery tab of the unit. Ordered sequentially from the top down.
  • We recommend at least six images be uploaded per unit. Up to 50 images will pass in the feed per unit.
<images>
	<image>
		<externalId>{id}</externalId>
		<title>
		<texts>
			<text locale="{code}">
			    <textValue>{title}</textValue>
		    </text>
		    ...
		</texts>
		</title>
		<uri>{uri}</uri>
	</image>
...
</images>

Child Elements

The <images> element contains a child element for each image. For each <image>  in the <images> element, these fields are available:
NameDescription
<externalId>Unique external ID of the image. PM can specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<title>Localized descriptive title(s) for the image. For each localized name, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). For the title, a PM can specify up to 400 characters.
Type: object
<uri>Valid URI for the image.
Type: string

ELEMENT <units>

A unit (sometimes referred to as a "unit type") represents a specific configuration on the property that is bookable. Though a property may have multiple unit configurations, each configuration should be represented by a listing. Multiple units per listing are not supported at this time.
<units>
	<unit>
	<externalId>{id}</externalId>
	<active>{boolean}</active>
	<area>{integer}</area>
	<areaUnit>{unit}</areaUnit>
	<bathroomDetails>
		<texts>
		    <text locale="{code}">
		    <textValue>{details}</textValue>
		    </text>
		    ...
		</texts>
	</bathroomDetails>
	<bathrooms>{details}</bathrooms>
	<bedroomDetails>
		<texts>
		    <text locale="{code}">
		    <textValue>{details}</textValue>
		    </text>
		    ...
		</texts>
	</bedroomDetails>
	<bedrooms>{details}</bedrooms>
	<description>
		<texts>
		    <text locale="{code}">
		    <textValue>{description}</textValue>
		    </text>
		    ...
		</texts>
	</description>
	<featureValues>{amenities}</featureValues>
	<safetyFeatureValues>{safety_amenities}</safetyFeatureValues>
	<images>{images}</images>
	<propertyType>{type}</propertyType>
	<unitMonetaryInformation>
	    <currency>{currency}</currency>
	</unitMonetaryInformation>
	<unitName>
		<texts>
		    <text locale="{code}">
		    <textValue>{description}</textValue>
		    </text>
		    ...
		</texts>
	</unitName>
	</unit>
</units>

Child Elements

The <units> element contains a <unit> child element, for which these fields are available:
Name Description
<externalId>The unique external ID of the unit assigned by the property manager.
Type: integer
<active>Whether the unit is active.
Type: boolean
<area>Usable area of the unit.
Type: integer
<areaUnit>Unit of measure in which the unit’s area is expressed. Valid values include METERS_SQUARED or SQUARE_FEET.
Type: string
<bathroomDetails>Localized details about the bathroom(s) in the unit. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). 
Type: object
<bathrooms>Structured Room data about the bathroom(s) in the unit.
Type: <bathrooms>
<bedroomDetails>Localized details about the bedroom(s) in the unit. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). 
Type: object
<bedrooms>Structured Room data about the bedroom(s) in the unit.
Type: <bedrooms>
<description>Used to specify the listing's description in the <adContent> element.
Type: object
<featureValues>Standardized property features distinguishing the unit.
Type: <featureValues>
<safetyFeatureValues>Safety features, including locations and instructions, provided in the unit.
Type: <safetyFeatureValues>
<images>
Unsupported. Specify the listing's images in the <images> element.
Type: <images>
<propertyType>Type of property this unit represents. Additional property types may also be set under Unit Feature Values. See Property Type values.
Type: string
<unitMonetaryInformation>Currency in which monetary values are presented for the unit. Only USD supported.
Type: object
<unitName>Localized name(s) for the unit. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). PM can specify up to 250 characters.
Type: object

ELEMENT <bathrooms>

Individual descriptions and amenities can be established for each bathroom in the unit, as specified by the <bathroom>  child element(s).
Bathroom amenities provide detailed information about how Listing content is displayed.
<bathrooms>
	<bathroom>
		<amenities>
			<amenity>
			<count>{integer}</count>
			<bathroomFeatureName>{name}</bathroomFeatureName>
			</amenity>
			...
		</amenities>
	<name>
		<texts>
		<text locale="{code}">
		<textValue>{name}</textValue>
		</text>
		...
		</texts>
	</name>
	<note>
		<texts>
		<text locale="{code}">
		<textValue>{note}</textValue>
		</text>
		...
		</texts>
	</note>
	<roomSubType>{type}</roomSubType>
	</bathroom>
...
</bathrooms>

Child Elements

The <bathrooms> element contains a child element for each bathroom in the unit. For each <bathroom> in the <bathrooms>element, these fields are available:
NameDescription
<amenities>Amenities associated with the bathroom. For each amenity, specify the <amenity> child element and then provide <count>, which is the number (integer) of this amenity that is present in the bathroom (not required), and <bathroomFeatureName>, which is required and is the standardized feature name that describes the amenity (see Bathroom Feature values).
Type: object
<name>Localized name(s) for the bathroom. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). PM can specify up to 60 characters.
Type: object
<note>Localized note(s) about the bathroom. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). For the note, PM can specify up to 60 characters.
Type: object
<roomSubType>Sub-category for the amenity, such as FULL_BATH. See Bathroom Type values. 
Type: string

ELEMENT <bedrooms>

Individual descriptions and amenities can be established for each bedroom in the unit, as specified by the <bedroom> child element(s).
<bedrooms>
	<bedroom>
	<amenities>
		<amenity>
		<count>{integer}</count>
		<bedroomFeatureName>{name}</bedroomFeatureName>
		</amenity>
	...
	</amenities>
	<name>
		<texts>
		<text locale="{code}">
		<textValue>{name}</textValue>
		</text>
		...
		</texts>
	</name>
	<note>
		<texts>
		<text locale="{code}">
		<textValue>{note}</textValue>
		</text>
		...
		</texts>
	</note>
	<roomSubType>{type}</roomSubType>
	</bedroom>
...
</bedrooms>

Child Elements

The <bedrooms> element contains a child element for each bedroom in the unit. For each <bedroom> in the <bedrooms>element, these fields are available:
NameDescription
<amenities>Amenities associated with the bedroom. For each amenity, we specify the <amenity> child element and then provide <count>, which is the number (integer) of this amenity that is present in the bathroom (not required), and <bedFeatureName>, which is required and is the standardized feature name that describes the amenity (see Bedroom Feature values).
Type: object
<name>Localized name(s) for the bedroom. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). PM can specify up to 60 characters.
Type: object
<note>Localized note(s) about the bedroom. For each localized string, we specify the <text> child element in the <texts> element. We specify the locale attribute for each <text> element (see Locale values). For the note, PM can specify up to 60 characters.
Type: object
<roomSubType>Sub-category for the amenity, such as BEDROOM. See Bedroom Type values. 
Type: string

ELEMENT <featureValues>

This element provides standardized property features (amenities) that distinguish the unit.
<featureValues>
	<featureValue>
		<count>{integer}</count>
		<description>{description}</description>
		<unitFeatureName>{name}</unitFeatureName>
	</featureValue>
	...
</featureValues>

Child Elements

The <featureValues> element contains child elements that describe each unit amenity. For each <featureValue> in the <featureValues> element, these fields are available:
NameDescription
<count>Quantity of the feature represented.
Type: integer
<description>Description of the feature. PM can specify up to 1,000 characters.
Type: string
<unitFeatureName>Pre-defined value for each unit feature. See Unit feature values.
Type: string


Lodging Configuration Content Index

The Advertiser Lodging Configuration Content index (or "Lodging Configuration index") contains metadata, Lodging Configuration defaults, and a link to the Lodging Configuration content for each specified listing. The Lodging Configuration defaults define a set of policies and rules that are applied to every listing for a property manager.
  • Booking policy - Instant Booking. The booking response will have a CONFIRMED reservation status at the time of booking, though the traveler’s credit card does not need to be charged instantly.
  • Pricing policy - Guaranteed.
  • Cancellation policy - Type (enforcement level) of cancellation policy, such as strict or relaxed. For a description of each supported type, see Listings enumerations.
The defaults in this file can be overridden by settings in the Lodging Configuration content. This gives you a way to configure settings at a listing level.

ELEMENT <advertiserLodgingConfigurationContentIndex>

This is the root element of the index.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<advertiserLodgingConfigurationContentIndex>
    <documentVersion>{version}</documentVersion>
    <advertiser>{advertiser}</advertiser>
</advertiserLodgingConfigurationContentIndex>

Child Elements


NameDescription
<documentVersion>Listing XSD version. Value will be
Type: string
<advertiser>Container that provides metadata about the property manager (PM) and a link to the lodging configuration content.
Type: <advertiser>

ELEMENT <advertiser>

This element provides metadata about the PM and a link to the lodging configuration content.

<advertiser>
    <assignedId>{id}</assignedId>
    <lodgingConfigurationDefaults>{defaults}</lodgingConfigurationDefaults>
    <lodgingConfigurationContentIndexEntry>{entry}</lodgingConfigurationContentIndexEntry>
    ...
</advertiser>

Child Elements

NameDescription
<assignedId>Unique ID assigned to the PM.
Type: string
<lodgingConfigurationDefaults>PM-level defaults to be applied across all integrated listings for this PM.
Type: <lodgingConfigurationDefaults>
<lodgingConfigurationContentIndexEntry>URL to the listing-level overrides for lodging configurations.
Type: <lodgingConfigurationContentIndexEntry>

ELEMENT <lodgingConfigurationDefaults>

This element defines the set of policies and rules that will be applied to every listing for a property manager (PM). Defaults can be overwritten on a per-unit basis by using the Lodging Configuration content. The following settings are included. Lodging Configuration defaults:
  • Accepted payment forms
  • Minimum and maximum occupancy
  • Minimum age of the primary traveler
  • Booking policy (Instant Booking )
  • Pets policy
  • Smoking policy
  • Cancellation policy
  • Rental agreements
  • Pricing policy (Guaranteed)
<lodgingConfigurationDefaults>
    <acceptedPaymentForms>{paymentForms}</acceptedPaymentForms>
    <bookingPolicy>
        <policy>{policy}</policy>
    </bookingPolicy>
    <cancellationPolicy>{policy}</cancellationPolicy>
    <checkInTime>{time}</checkInTime>
    <checkOutTime>{time}</checkOutTime>
    <childrenAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </childrenAllowedRule>
    <eventsAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </eventsAllowedRule>
    <lastUpdatedDate>{dateTime}</lastUpdatedDate>
    <locale>{locale}</locale>
    <maximumOccupancyRule>
        <adults>{number}</adults>
        <guests>{number}</guests>
        <note>{note}</note>
    </maximumOccupancyRule>
    <minimumAgeRule>
        <age>{age}</age>
        <note>{note}</note>
    </minimumAgeRule>
    <petsAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </petsAllowedRule>
    <pricingPolicy>
        <policy>{policy}</policy>
    </pricingPolicy>
    <rentalAgreementFile locale="{locale}">
        <rentalAgreementPdfUrl>{url}</rentalAgreementPdfUrl>
    </rentalAgreementFile>
    <smokingAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </smokingAllowedRule>
</lodgingConfigurationDefaults>

Child Elements

NameDescription
<acceptedPaymentForms>Default payment forms that are permitted for this PM.
Type: <acceptedPaymentForms>
<bookingPolicy>Default booking policy for this PM - Instant Booking or Quote and Hold. With Instant Booking, the reservation is immediately confirmed and no action is required by the PM. With Quote and Hold, the reservation is not confirmed until the PM manually confirms the reservation in their software. You will see QUOTEHOLD or INSTANT
Type: object
<cancellationPolicy>Default cancellation policy for this PM.
Type: <cancellationPolicy>
<checkInTime>Default check-in time for this PM. Time will use the 24-hour, HH:MM format. Example: 14:00.
Type: string
<checkOutTime>Default checkout time for this PM. Time will use the 24-hour, HH:MM format. Example: 14:00.
Type: string
<childrenAllowedRule>Whether children are allowed in reservations for this PM. You must specify the <allowed> child element, which is a boolean that indicates whether children are allowed. Valid values include true or false. You can optionally specify the <note>child element and describes the child policy (up to 50 characters).
Type: object
<eventsAllowedRule>Whether events are allowed in reservations for this PM. You must specify the <allowed> child element, which is a boolean that indicates whether events are allowed. Valid values include true or false. You can optionally specify the <note>child element, which is a string and describes the events policy (up to 50 characters).
Type: object
<lastUpdatedDate>The date and time when the Lodging Configuration defaults were last updated. Format: yyyy-MM-ddTHH:mm:ssZ
Type: dateTime 
<locale>Default locale to use for all listings for this PM, such as en or fr. Format is the standard ISO language codes (two-characters). See Locale values for valid values.
Type: string
<maximumOccupancyRule>Default maximum occupancy allowed for this PM. You must specify the <guests>child element, which is an integer and specifies the maximum number of guests allowed. You can also specify the <adults> child element, which is an integer and specifies the maximum number of adults allowed, and the <note> child element, which is a string that explains the maximum occupancy policy (up to 50 characters).
Type: object
<minimumAgeRule>Default minimum age allowed for the primary renter for this PM's listings. You must specify the <age> child element, which is an integer and specifies the minimum age allowed. You can also specify the <note> child element, which is a string that explains the minimum age policy (up to 50 characters), such as if you want to set the minimum guest age to 25 years old.
Type: object
<petsAllowedRule>Default pet policy for this PM. You must specify the <allowed> child element, which is a boolean and specifies whether pets are allowed (true or false). You can also specify the <note> child element, which is a string that explains the pet policy (up to 50 characters).
Type: object
<pricingPolicy>Default pricing policy for this PM - Guaranteed or Quoted. If Guaranteed is set as the pricing policy, the Fast Availability and Booking services are used by travelers to reserve properties. If Quoted is set, the Quote and Booking services are used. You must specify the <policy> child element to set the pricing policy, and its value must be GUARANTEED or QUOTED.
Type: object
<rentalAgreementFile>Default rental agreement file for this PM. You can specify the locale attribute to indicate the locale for which to use the rental agreement. See Locale values for valid values. You must specify the <rentalAgreementPdfUrl> child element, which is a string that specifies the URL to the PM-hosted PDF of the rental agreement.
Type: object
<smokingAllowedRule>Default smoking policy for this PM. You must specify the <allowed> child element, which is a boolean and specifies whether smoking is allowed (true or false). You can also specify the <note> child element, which is a string that explains the smoking policy (up to 50 characters).
Type: object

ELEMENT <acceptedPaymentForms>

This element specifies the types of payments allowed for online bookings. Either  <paymentCardDescriptor>,or <paymentInvoiceDescriptor>, or both. A combination of credit card and invoice payments (up to 100 combinations) can be specified.

<acceptedPaymentForms>
    <paymentCardDescriptor>
	    <paymentFormType>{type}</paymentFormType>
	    <cardCode>{card}</cardCode>
	    <cardType>{type}</cardType>
    </paymentCardDescriptor>
    ...
    <paymentInvoiceDescriptor>
	    <paymentFormType>{type}</paymentFormType>
	    <paymentNote>{note}</paymentNote>
	    <invoicePaymentType>{type}</invoicePaymentType>
    </paymentInvoiceDescriptor>
    ...
</acceptedPaymentForms
                

Child Elements

Name
Description
<paymentCardDescriptor>
Information about the accepted credit card. These child elements are available:
<paymentFormType> - Specifies the form of payment for this type (CARD). This child element is required.
<cardCode> - Specifies the code associated with the provider of this card, such as VISA or MASTERCARD. This child element is required. See Card Code values.
<cardType> - Specifies the type of the card (CREDIT or DEBIT). This child element is required.
Type: object
<paymentInvoiceDescriptor>
<paymentFormType> - Specifies the form of payment for this type (INVOICE). This child element is required.
<paymentNote> - Specifies any note by PM associated this payment type.
<invoicePaymentType> - Specifies the accepted payment type associated this payment. See Invoice Payment type codes.
Type: object
* At least one <paymentCardDescriptor> or <paymentInvoiceDescriptor> must be specified

ELEMENT <cancellationPolicy>

This element specifies the enforcement level of the cancellation policy for the PM and optional nightly overrides for this policy.

<cancellationPolicy>
    <nightlyOverrides>{overrides}</nightlyOverrides>
    <policy>{policy}</policy>
    <policyPeriods>{cancellationPolicyPeriod}</policyPeriods>
</cancellationPolicy>

Child Elements


NameDescription
<nightlyOverrides>Optional nightly overrides for the cancellation policy.
Type: <nightlyOverrides>
<policy> Enforcement level of the cancellation policy, such as STRICT, RELAXED, or CUSTOM See Cancellation Policy Type values.
Type: string
<policyPeriods> required only when policy type is CUSTOM, defines custom policy rules
Type: <cancellationPolicyPeriod>

ELEMENT <nightlyOverrides>

This element specifies the enforcement level of the cancellation policy override and a date range to which the override applies. Up to four overrides are permitted.


<nightlyOverrides>
    <override>
	    <policy>{policy}</policy>
	    <stayIncludesNights>
	    <range>
	        <max>{date}</max>
	        <min>{date}</min>
	    </range>
	    ...
	    </stayIncludesNights>
    </override>
    ... 
</nightlyOverrides>

Child Elements


Name

Description
<policy>Enforcement level of the cancellation policy, such as STRICT or RELAXED. See Cancellation Policy Type values.
Type: string
<stayIncludesNights>One or more date ranges (up to 100) that specify the maximum and minimum dates for the nightly overrides. For each date range, specify the <range> child element, which contains the <max> and <min> child elements. <max> and <min> are dates in the format of yyyy-MM-dd.
Type: object


Element <cancellationPolicyPeriod>

This element defines the cancellation policy fee and rules when policy is CUSTOM
<policyPeriods>
    <cancellationFee>
        <currency>{currency}</currency>
        <amount>{decimal}</amount>
    </cancellationFee>
    <policyPeriod>
        <nightsBeforeCheckin>{integer}</nightsBeforeCheckin>
        <refundPercent>{integer}</refundPercent>
    </policyPeriod>
    ...
</policyPeriods>

Child Elements


NameDescription
<cancellationFee> Amount and Currency of the cancellation fee
Type: object
<policyPeriod> <nightsBeforeCheckin> Nights before check-in when the policy is applied
<refundPercent> percentage of the booking amount which will be refunded
Type: object

ELEMENT <lodgingConfigurationContentIndexEntry>

This element provides the URL to the file that contains the listing-level overrides for lodging configurations. You can specify as many <lodgingConfigurationContentIndexEntry> elements as needed.

<lodgingConfigurationContentIndexEntry>
    <listingExternalId>{id}</listingExternalId>
    <unitExternalId>{id}</unitExternalId>
    <lastUpdatedDate>{date}</lastUpdatedDate>
    <lodgingConfigurationContentUrl>{url}</lodgingConfigurationContentUrl>
</lodgingConfigurationContentIndexEntry>

Child Elements

NameDescription
<listingExternalId>Unique ID of the PM. 
Type: string
<unitExternalId>Unique ID of the rental unit in the integration partner's system. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<lastUpdatedDate>Date and time when the referenced content was last updated. Required format is yyyy-MM-ddTHH:mm:ssZ.
Type: dateTime 
<lodgingConfigurationContentUrl> URL that points to the Lodging Configuration content for this particular listing/unit type.
Type: string

Lodging Configuration Content

This file defines the set of policies and rules that apply to a specific listing/unit combination. In particular, you can configure listings to use Guaranteed pricing policy and Instant Booking as part of the Lodging Configuration content.
The Lodging Configuration content overrides settings in the Lodging Configuration defaults, which are provided in the Lodging Configuration index along with a link to this content file.

ELEMENT <lodgingConfigurationContent>

This is the root element of the Lodging Configuration content and includes all overrides for the specified listing/unit.
<?xml version="1.0" encoding="UTF-8"?>
<lodgingConfigurationContent>
    <listingExternalId>{id}</listingExternalId>
    <unitExternalId>{id}</unitExternalId>
    <lodgingConfiguration>{config}</lodgingConfiguration>
</lodgingConfigurationContent>

Child Elements

NameDescription
<listingExternalId>Required. Unique ID of the listing in the integration partner's system. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<unitExternalId>Required. Unique ID of the unit in the integration partner's system. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<lodgingConfiguration>Required. Lodging configuration information for this particular listing/unit type.
Type: <lodgingConfiguration>

ELEMENT <lodgingConfiguration>

This element defines the overrides to the defaults for the specified listing or unit.

<lodgingConfiguration>
    <acceptedPaymentForms>{paymentForms}</acceptedPaymentForms>
    <bookingPolicy>
        <policy>{policy}</policy>
    </bookingPolicy>
    <cancellationPolicy>{policy}</cancellationPolicy>
    <checkInTime>{time}</checkInTime>
    <checkOutTime>{time}</checkOutTime>
    <childrenAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </childrenAllowedRule>
    <eventsAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </eventsAllowedRule>
    <locale>{locale}</locale>
    <maximumOccupancyRule>
        <adults>{number}</adults>
        <guests>{number}</guests>
        <note>{note}</note>
    </maximumOccupancyRule>
    <minimumAgeRule>
        <age>{age}</age>
        <note>{note}</note>
    </minimumAgeRule>
    <petsAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </petsAllowedRule>
    <pricingPolicy>
        <policy>{policy}</policy>
    </pricingPolicy>
    <rentalAgreementFile locale="{locale}">
        <rentalAgreementPdfUrl>{url}</rentalAgreementPdfUrl>
    </rentalAgreementFile>
    <smokingAllowedRule>
        <allowed>{boolean}</allowed>
        <note>{note}</note>
    </smokingAllowedRule>
</lodgingConfiguration>

Child Elements

NameDescription
<acceptedPaymentForms>Payment forms that are permitted for this property manager (PM).
Type: <acceptedPaymentForms>
<bookingPolicy>Booking policy for this PM - Instant Booking. With Instant Booking, the reservation is immediately confirmed and no action is required by the PM. We specify the <policy> child element to set the booking policy. By default, this will be "Instant". 
Type: object
<cancellationPolicy>Cancellation policy for this PM.
Type: <cancellationPolicy>
<checkInTime>Check-in time for this PM. Time must use the 24-hour, HH:MM format. Example: 14:00.
Type: string
<checkOutTime>Checkout time for this PM. Time must use the 24-hour, HH:MM format. Example: 14:00.
Type: string
<childrenAllowedRule>Whether children are allowed in reservations for this PM. You must specify the <allowed> child element, which is a boolean that indicates whether children are allowed. Valid values include true or false. You can optionally specify the <note>child element, which is a string and describes the child policy (up to 50 characters).
Type: object
<eventsAllowedRule> Whether events are allowed in reservations for this PM. You must specify the <allowed> child element, which is a boolean that indicates whether events are allowed. Valid values include true or false. You can optionally specify the <note>child element, which is a string and describes the events policy (up to 50 characters).
Type: object
<locale>Locale to use for all listings for this PM, such as en or fr. Format is the standard ISO language codes (two-characters). See Locale values for valid values.
Type: string
<maximumOccupancyRule>Maximum occupancy allowed for this PM. You must specify the <guests> child element, which is an integer and specifies the maximum number of guests allows. You can also specify the <adults> child element, which is an integer and specifies the maximum number of adults allowed, and the <note> child element, which is a string that explains the maximum occupancy policy (up to 50 characters).
Type: object
<minimumAgeRule>Minimum age allowed for the primary renter for this PM's listings. You must specify the <age> child element, which is an integer and specifies the minimum age allowed. You can also specify the <note> child element, which is a string that explains the minimum age policy (up to 50 characters), such as if you want to set the minimum guest age to 25 years old.
Type: object
<petsAllowedRule>Pet policy for this PM. You must specify the <allowed> child element, which is a boolean and specifies whether pets are allowed (true or false). You can also specify the <note> child element, which is a string that explains the pet policy (up to 50 characters).
Type: object
<pricingPolicy>Pricing policy for this PM - Guaranteed.
Type: object 
<rentalAgreementFile>Rental agreement file for this PM if localized policies are not required. You can specify the locale attribute to indicate the locale for which to use the rental agreement. See Locale values for valid values. We specify the <rentalAgreementPdfUrl> child element, which is a string and specifies the URL to the PM-hosted PDF of the rental agreement.
Type: object

<smokingAllowedRule>
Smoking policy for this PM. You must specify the <allowed> child element, which is a boolean and specifies whether smoking is allowed (true or false). You can also specify the <note> child element, which is a string that explains the smoking policy (up to 50 characters).
Type: object

ELEMENT <acceptedPaymentForms>

This element specifies the types of payments allowed for online bookings. You must provide <paymentCardDescriptor><paymentInvoiceDescriptor>, or both. You can specify a combination of credit card and invoice payments (up to 100 combinations).

<acceptedPaymentForms>
    <paymentCardDescriptor>
	    <paymentFormType>{type}</paymentFormType>
	    <cardCode>{card}</cardCode>
	    <cardType>{type}</cardType>
    </paymentCardDescriptor>
    ...
    <paymentInvoiceDescriptor>
	    <paymentFormType>{type}</paymentFormType>
	    <paymentNote>{note}</paymentNote>
	    <invoicePaymentType>{type}</invoicePaymentType>
    </paymentInvoiceDescriptor>
    ...
</acceptedPaymentForms
                

Child Elements

NameDescription
<paymentCardDescriptor>
Information about the accepted credit card. These child elements are available:
<paymentFormType> - Specifies the form of payment for this type (CARD). This child element is required.
<cardCode> - Specifies the code associated with the provider of this card, such as VISA or MASTERCARD. This child element is required. See Card Code values.
<cardType> - Specifies the type of the card (CREDIT or DEBIT). This child element is required.
Type: object
<paymentInvoiceDescriptor>
<paymentFormType> - Specifies the form of payment for this type (INVOICE). This child element is required.
<paymentNote> - Specifies any note by PM associated this payment type.
<invoicePaymentType> - Specifies the accepted payment type associated this payment. See Invoice Payment type codes.
Type: object
* At least one <paymentCardDescriptor> or <paymentInvoiceDescriptor> must be specified

ELEMENT <cancellationPolicy>

This element specifies the enforcement level of the cancellation policy for the PM and optional nightly overrides for this policy.

<cancellationPolicy>
    <nightlyOverrides>{overrides}</nightlyOverrides>
    <policy>{type}</policy>
    <policyPeriods>{cancellationPolicyPeriod}</policyPeriods>
</cancellationPolicy>

Child Elements

NameDescription
<nightlyOverrides>Optional nightly overrides for the cancellation policy.
Type: <nightlyOverrides>
<policy> Enforcement level of the cancellation policy, such as STRICT, RELAXED, or CUSTOM See Cancellation Policy Type values.
Type: string
<policyPeriods> required only when policy type is CUSTOM, defines custom policy rules
Type: <cancellationPolicyPeriod>

ELEMENT <nightlyOverrides>

This element specifies the enforcement level of the cancellation policy override and a date range to which the override applies. Up to four overrides are permitted.

<nightlyOverrides>
    <override>
	    <policy>{policy}</policy>
	    <stayIncludesNights>
	    <range>
	        <max>{date}</max>
	        <min>{date}</min>
	    </range>
	    ...
	    </stayIncludesNights>
    </override>
    ...
</nightlyOverrides>

Child Elements

NameDescription
<policy>Required. Enforcement level of the cancellation policy, such as STRICT or RELAXED. See Cancellation Policy Type values.
Type: string
<stayIncludesNights>Required.  One or more date ranges (up to 100) that specify the maximum and minimum dates for the nightly overrides. For each date range, specify the <range> child element, which contains the <max> and <min> child elements. <max> and <min> are dates in the format of yyyy-MM-dd.
Type: object

Element <cancellationPolicyPeriod>

This element defines the cancellation policy fee and rules when policy is CUSTOM
<policyPeriods>
    <cancellationFee>
        <currency>{currency}</currency>
        <amount>{decimal}</amount>
    </cancellationFee>
    <policyPeriod>
        <nightsBeforeCheckin>{integer}</nightsBeforeCheckin>
        <refundPercent>{integer}</refundPercent>
    </policyPeriod>
    ...
</policyPeriods>

Child Elements


NameDescription
<cancellationFee> Amount and Currency of the cancellation fee
Type: object
<policyPeriod> <nightsBeforeCheckin> Nights before check-in when the policy is applied
<refundPercent> percentage of the booking amount which will be refunded
Type: object


Lodging Rate Index


The Advertiser Lodging Rate Content index (or "Lodging Rate index") contains a list of the metadata and a link to the Lodging Rate content, which defines rates, taxes, fees, and discounts, for each specified listing.
You should retrieve this index several times per day from your endpoint.

ELEMENT <advertiserLodgingRateContentIndex>

This is the root element of the index.

<?xml version="1.0" encoding="UTF-8"?>
<advertiserLodgingRateContentIndex>
    <documentVersion>{version}</documentVersion>
    <advertiser>{advertiser}</advertiser>
</advertiserLodgingRateContentIndex>

Child Elements

NameDescription
<documentVersion>Required. Listing version. 4.2.1
Type: string
<advertiser>Required. Container that provides metadata about the property manager (PM) and a link to the listing content.
Type: <advertiser>

ELEMENT <advertiser>

This element provides metadata about the PM and a link to the Lodging Rate content.
<advertiser>
    <assignedId>{id}</assignedId>
    <lodgingRateContentIndexEntry>{entry}</lodgingRateContentIndexEntry>
    ...
</advertiser>

Child Elements

NameDescription
<assignedId>Required. Unique ID assigned to the PM.
Type:
 string
<lodgingRateContentIndexEntry>Required. Lodging Rate index entry for a particular PM.
Type:
 <lodgingRateContentIndexEntry>

ELEMENT <lodgingRateContentIndexEntry>

This element contains metadata about the rate data for a single unit type and includes a link to the relevant content to be imported. The index entry refers only to Lodging Rate content.

<lodgingRateContentIndexEntry>
	<listingExternalId>{id}</listingExternalId>
	<unitExternalId>{id}</unitExternalId>
	<lastUpdatedDate>{dateTime}</lastUpdatedDate>
	<lodgingRateContentUrl>{url}</lodgingRateContentUrl>
	<lodgingRateContentUrlv1>{url}</lodgingRateContentUrlv1>
</lodgingRateContentIndexEntry>

Child Elements

NameDescription
<listingExternalId>Required. Unique ID of this listing. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type:
 string
<unitExternalId>Required. Unique ID of this unit. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type:
 string
<lastUpdatedDate> Required. Date and time when the referenced content was last updated. If the specified date is within the last three days, content is retrieved and processed (if the listing is active). Format is yyyy-MM-ddTHH:mm:ssZ.
Type: dateTime
<lodgingRatesContentUrl> One of lodgingRatesContentUrl OR lodgingRateContentUrlv1 is required URL to the Lodging Rate content for this unit.
Type:
 string
<lodgingRateContentUrlv1> One of lodgingRatesContentUrl OR lodgingRateContentUrlv1 is required URL to the  V1 Rates  for this unit(Only available for some partners for props when VRBO rates are not supported).
Type:
 string


Lodging Rate Content

This file specifies base rates, fees, discounts, and taxes that are used to calculate the rental amount charged to travelers. You can also specify a payment schedule and any fees that are collected during the rental period ("stay-collected fees"). And you can set rate overrides to account for special rates, and so on.When reviewing this XML file, be aware of the following implementation details:

  • Separation of rates, fees, and taxes: Fees and taxes are NOT built into rates. PMs are responsible for compliance with all tax laws and for ensuring that their software provides relevant booking information.
  • Currency for rates and fees: Only one currency can be specified for all quotes and bookings.
    • Rates and fees must use the same currency, which must match the currency defined for the PM.

ELEMENT <lodgingRateContent>

This is the root element of the Lodging Rate content.

<?xml version="1.0" encoding="UTF-8"?>
<lodgingRateContent>
	<listingExternalId>{id}</listingExternalId>
	<unitExternalId>{id}</unitExternalId>
	<lodgingRate>{rates}</lodgingRate>
	<lodgingRateLos>{rates}</lodgingRateLos>
</lodgingRateContent>

Child Elements

Name Description
<listingExternalId>Required. Unique external ID of the listing, which is determined by the PM. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<unitExternalId>Required. Unique external ID of the unit. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<lodgingRate>Required*. Nightly rate pricing for the listing, including fees, taxes, discounts, and payment schedule information.
* Either <lodgingRate> or <lodgingRateLos> is required, but only one is allowed for a listing.
Type: <lodgingRate>
<lodgingRateLos>Required*. LOS rate pricing for the listing, including fees, taxes, discounts, and payment schedule information.
* Either <lodgingRate> or <lodgingRateLos> is required, but only one is allowed for a listing.
Type: <lodgingRatelos>

ELEMENT <lodgingRate>

This element specifies the nightly rate, fee, tax, discount, and payment schedule information for the listing. We recommend that you set a standard rate that can be discounted (rather than increased), and you should provide three years of rate data if possible.

<lodgingRate>
	<currency>{code}</currency>
	<discounts>{discounts}</discounts>
	<externalId>{id}</externalId>
	<externalUpdateDate>{dateTime}</externalUpdateDate>
	<fees>{fees}</fees>
	<language>{code}</language>
	<nightlyRates>{rates}</nightlyRates>
	<paymentSchedule>{schedule}</paymentSchedule>
	<taxRules>{rules}</taxRules>
</lodgingRate>

Child Elements

Name
Description
<currency>
Required. Currency used to quote, book, and charge the traveler in USD. To support the Online Booking (OLB) integration, all listings' rates and fees must use the same currency, GuestSmiles currently only supports USD.
Type: string
<discounts>
Discounts offered for this listing.
Type: <discounts>
<externalId>
Unique ID of the rate. Specify up to 64 characters; spaces are not allowed. This ID is provided for information purposes only.
Type: string
<externalUpdateDate>
Date and time when this rate was updated in the integration partner’s system. Format is yyyy-MM-ddTHH:mm:ss.s.
Type: dateTime 
<fees>
Additional fees associated with the listing.
Type: <fees>
<language>
Required. Two-character ISO language code of the locale that is used by the listing's host site. See Locale values for a list of supported codes.
Type: string
<nightlyRates>
Required. Nightly rental amounts for this listing.
Type: <nightlyRates>
<paymentSchedule>
Required. Payment schedule required for this listing.
Type: <paymentSchedule>
<taxRules>
Taxes collected for the listing.
Type: <taxRules>

ELEMENT <lodgingRateLos>

This element specifies the LOS (length of stay) rate, fee, tax, discount, and payment schedule information for the listing.
<lodgingRateLos>
	<currency>{code}</currency>
	<externalId>{id}</externalId>
	<lengthOfStayBaseRent>{lengthOfStayBaseRent}</lengthOfStayBaseRent>
	<fees>{fees}</fees>
	<language>{code}</language>
	<paymentSchedule>{schedule}</paymentSchedule>
	<taxRules>{taxRules}</taxRules>
</lodgingRateLos>

Child Elements

Name
Description
<currency>
Required. Currency used to quote, book, and charge the traveler in USD. To support the Online Booking (OLB) integration, all listings' rates and fees must use the same currency, GuestSmiles currently only supports USD.
Type: string
<externalId>
Unique ID of the rate. Specify up to 64 characters; spaces are not allowed. This ID is provided for information purposes only.
Type: string
<fees>
Additional fees associated with the listing.
Type: <fees>
<language>
Required. Two-character ISO language code of the locale that is used by the listing's host site. See Locale values for a list of supported codes.
Type: string
<lengthOfStayBaseRent>
Required. LOS (length of stay) CSV format rates for this listing.
Type: <lengthOfStayBaseRent>
<paymentSchedule>
Required. Payment schedule required for this listing.
Type: <paymentSchedule>
<taxRules>
Taxes collected for the listing.
Type: <taxRules>

ELEMENT <discounts>

Discounts apply to the nightly rental rate for a specific currency, and discounts can be applied as flat amounts or as a percentage. Discounts are evaluated and applied independently; they are not cumulative. This means that each discount that matches the criteria is applied, and each discounts that is based on the percent of rent is applied to the full rental amount. For example, a rental amount of $1000 with two discounts (10% and 20%) result in $100 off and $200 off.

<discounts>
	<flatAmountDiscounts>{discounts}</flatAmountDiscounts>
	<percentOfRentDiscounts>{discounts}</percentOfRentDiscounts>
</discounts>

Child Elements

Name Description
<flatAmountDiscounts>Discounts that are applied as a flat amount to the rental fee.
Type: <flatAmountDiscounts>
<percentOfRentDiscounts>Discounts that are applied as a percentage of the rental fee.
Type: <percentOfRentDiscounts>

ELEMENT <flatAmountDiscounts>

A PM can specify up to 15 flat discounts per <lodgingRate> element.

<flatAmountDiscounts>
	<discount>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<amount>{amount}</amount>
		<appliesPerGuestPerNight>{discounts}</appliesPerGuestPerNight>
		<appliesPerGuestPerStay>{discounts}</appliesPerGuestPerStay>
		<appliesPerNight>{discounts}</appliesPerNight>
		<appliesPerPetPerNight>{discounts}</appliesPerPetPerNight>
		<appliesPerPetPerStay>{discounts}</appliesPerPetPerStay>
		<appliesPerStay>{discounts}</appliesPerStay>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<productCode>{code}</productCode>
	</discount>
...
</flatAmountDiscounts>

Child Elements

Name Description
<externalId>Unique ID of the flat amount discount. This ID is persisted in the booking request and can help you distinguish the discount from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name of the flat amount discount. Specify up to 64 characters. This is for your information only.
Type: string
<amount>Required. Amount offered for this discount.
Type: decimal
<appliesPerGuestPerNight>Required.* Discount that is applied per guest per night.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerGuestPerNight>
<appliesPerGuestPerStay>Required.* Discount that is applied per guest per stay.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerGuestPerStay>
<appliesPerNight>Required.* Discount that is applied per night.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerNight>
<appliesPerPetPerNight>Required.* Discount that is applied per night if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerPetPerNight>
<appliesPerPetPerStay>Required.* Discount that is applied per stay if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerPetPerStay>
<appliesPerStay>Required.* Discount that is applied per stay.
* One and only one <appliesPer> child element is required and allowed per discount.
Type: <appliesPerStay>
<nightlyOverrides>Rules that are applied on a nightly basis and that override the amount associated with the discount for specific dates.
Type: <nightlyOverrides>
<productCode>Code that associates the discount with a product code for merchandising purposes, such as WATER or PET. This code is persisted (as <productId>) in the booking request. Do not specify these codes in this element: TAX, CLEANING, PET, GUEST, and DEPOSIT_DAMAGE. See Product Code Type values for valid values.
Type: string

ELEMENT <percentOfRentDiscounts>

These discounts are applied to the nightly rate. You can specify up to 15 percent-of-rent discounts per <lodgingRate>; element. Each discount (as specified by the <discount> child element) can be applied per night for nightly rates , with nightly overrides per discount amount.

<percentOfRentDiscounts>
	<discount>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<appliesPerNight>{discounts}</appliesPerNight>
		<appliesPerStay>{discounts}</appliesPerStay>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<percent>{amount}</percent>
	</discount>
...
</percentOfRentDiscounts>

Child Elements

Name Description
<externalId>Unique ID of the discount. This ID is persisted in the booking request and can help you distinguish the discount from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name of the discount. Specify up to 64 characters. This is for your information only.
Type: string
<appliesPerNight>Required*. Discount applied per night for nightly rates.
* This child element is required for nightly rates only (in the <lodgingRate> element). It is not supported for LoS rates.
Type: <appliesPerNight>
<appliesPerStay>Required*. Discount applied per stay for LoS rates.
* This child element is required for LoS rates only (in the <lodgingRateLos> element). It is not supported for nightly rates.
Type: <appliesPerStay>
<nightlyOverrides>Rules that are applied on a nightly basis and that override the amount associated with the discount for specific dates.
Type: <nightlyOverrides>
<percent>Required. Percent of the rental rate that will be discounted.
Type: decimal

ELEMENT <fees>

Fees are used to collect mandatory charges that are assessed based on different stay configurations. Each distinct fee has an individual breakdown of applications for that fee.

Note the following when implementing fees:
  • If a property allows pets, the <petsAllowedRule> element must be configured in the Lodging Configurations index. Then, to collect a pet fee, configure the <petFees> element in the Lodging Rate content.
  • To prevent a guest fee from being charged multiple times, specify <forGuestNumber> values in a range.
<fees>
	<cleaningFees>{fees}</cleaningFees>
	<flatRefundableDamageDepositFees>{deposits}</flatRefundableDamageDepositFees>
	<guestFees>{fees}</guestFees>
	<otherFees>{fees}</otherFees>
	<percentOfRentFees>{fees}</percentOfRentFees>
	<petFees>{fees}</petFees>
	<serviceFee>{serviceFee}</serviceFee>
</fees>

Child Elements

Name Description
<cleaningFees>Mandatory cleaning fees for the stay.
Type: <cleaningFees>
<flatRefundableDamageDepositFees>Deposits that will be refunded to the traveler if no damage is sustained to the property during the stay.
Type: <flatRefundableDamageDepositFees>
<guestFees>Fees that are assessed based on guest characteristics, such as the number of guests.
Type: <guestFees>
<otherFees>Fees that are not captured by cleaning, guest, percent of rent, and pet fees.
Type: <otherFees>
<percentOfRentFees>Fees that are charged as a percentage of rent.
Type: <percentOfRentFees>
<petFees>Fees that are charged if a pet is included in the stay.
Type: <petFees>
<serviceFee>Optional.Fees that are charged for as a service fee (if any, not applicable to all partners).
Type: <serviceFee>

ELEMENT <cleaningFees>

This element defines mandatory cleaning fees that are collected before the stay (up to 15).

<cleaningFees>
	<fee>
		<externalId>{id}</externalId>
		<amount>{amount}</amount>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<appliesPerGuestPerNight>{fees}</appliesPerGuestPerNight>
		<appliesPerGuestPerStay>{fees}</appliesPerGuestPerStay>
		<appliesPerNight>{fees}</appliesPerNight>
		<appliesPerPetPerNight>{fees}</appliesPerPetPerNight>
		<appliesPerPetPerStay>{fees}</appliesPerPetPerStay>
		<appliesPerStay>{fees}</appliesPerStay>
	</fee>
	...
</cleaningFees>

Child Elements

The <fee> child element defines each cleaning fee you want to apply to the stay. Here are the child elements available in the <fee> element. One and only one <appliesPer> child element is required and allowed per fee.|

Name Description
<externalId>Unique ID of this cleaning fee. Specify up to 64 characters; spaces are not allowed.
Type: string
<amount>Required. Cleaning fee amount.
Type: decimal
<nightlyOverrides>Rules that are applied on a nightly basis and that override the amount associated with the cleaning fee for specific dates.
Type: <nightlyOverrides>
<appliesPerGuestPerNight>Required.* Fee that is applied per guest per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerNight>
<appliesPerGuestPerStay>Required.* Fee that is applied per guest per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerStay>
<appliesPerNight>Required.* Fee that is applied per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerNight>
<appliesPerPetPerNight>Required.* Fee that is applied per night if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerNight>
<appliesPerPetPerStay>Required.* Fee that is applied per stay if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerStay>
<appliesPerStay>Required.* Fee that is applied per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerStay>

ELEMENT <flatRefundableDamageDepositFees>


These deposits should be refunded to the traveler if no damage is sustained to the property during the stay. Refundable damage deposits are optional fees applied per stay, with optional nightly overrides. Up to 15 flat refundable damage deposit fees may be specified.

<flatRefundableDamageDepositFees>
	<fee>
		<externalId>{id}</externalId>
		<amount>{amount}</amount>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<appliesPerStay>{deposits}</appliesPerStay>
	</fee>
...
</flatRefundableDamageDepositFees>

Child Elements

The <fee> child element defines each deposit you want to apply to the stay. Here are the child elements available in the <fee>element.

Name Description
<externalId>Unique ID of the refundable damage deposit. Specify up to 64 characters; spaces are not allowed.
Type: string
<amount>Required. Refundable damage deposit amount.
Type: decimal
<nightlyOverrides>Rules that are applied on a nightly basis and that override the amount associated with the deposit for specific dates.
Type: <nightlyOverrides>
<appliesPerStay>Required. Deposit that is applied per stay.
Type: <appliesPerStay>

ELEMENT <guestFees>

This element defines mandatory guest fees and how they are applied. You can specify up to 15 fee amounts, which apply per guest either per stay or per night, with further individual breakdown per application.

<guestFees>
	<fee>
		<externalId>{id}</externalId>
		<amount>{amount}</amount>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<appliesPerGuestPerNight>{fees}</appliesPerGuestPerNight>
		<appliesPerGuestPerStay>{fees}</appliesPerGuestPerStay>
	</fee>
...
</guestFees>

Child Elements


The <fee> child element defines each guest fee you want to apply to the stay. Here are the child elements available in the <fee>element. One and only one <appliesPer> child element is required and allowed per guest fee.
Name Description
<externalId>External ID for the guest fee as defined by the PM. Specify up to 64 characters; spaces are not allowed.
Type: string
<amount>Required. Guest fee amount.
Type: decimal
<nightlyOverrides>Rules that are applied on a nightly basis and that override the amount associated with the fee for specific dates.
Type: <nightlyOverrides>
<appliesPerGuestPerNight>Required.* Fee that is applied per guest per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerNight>
<appliesPerGuestPerStay>Required.* Fee that is applied per guest per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerStay>

ELEMENT <otherFees>

Other fees are special fees charged for the rental rate that do not fit into the categories of cleaning fees, guest fees, or pet fees. You can specify up to 15 other fees per rate.

<otherFees>
    <fee>
		<externalId>{id}</externalId>
		<amount>{amount}</amount>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<appliesPerGuestPerNight>{fees}</appliesPerGuestPerNight>
		<appliesPerGuestPerStay>{fees}</appliesPerGuestPerStay>
		<appliesPerNight>{fees}</appliesPerNight>
		<appliesPerPetPerNight>{fees}</appliesPerPetPerNight>
		<appliesPerPetPerStay>{fees}</appliesPerPetPerStay>
		<appliesPerStay>{fees}</appliesPerStay>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<name>{name}</name>
		<productCode>{code}</productCode>
	</fee>
...
</otherFees>

Child Elements


The <fee> child element defines each fee you want to apply to the stay. Here are the child elements available in the <fee>element. One and only one <appliesPer> child element is required and allowed per fee.
Name Description
<externalId>Unique ID of the fee. This ID is persisted in the booking request and can help you distinguish the fee from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<amount>Required. Fee amount.
Type: decimal
<appliesPerGuestPerNight>Required.* Fee that is applied per guest per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerNight>
<appliesPerGuestPerStay>Required.* Fee that is applied per guest per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerStay>
<appliesPerNight>Required.* Fee that is applied per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerNight>
<appliesPerPetPerNight>Required.* Fee that is applied per night if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerNight>
<appliesPerPetPerStay>Required. Fee that is applied per stay if pets are included in the reservation.
Type: <appliesPerPetPerStay>
<appliesPerStay>Required.* Fee that is applied per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerStay>
<nightlyOverrides>Rules that are applied on a nightly basis and that override the fee amount for specific dates.
Type: <nightlyOverrides>
<name>Required. Name of the fee. Specify up to 64 characters. This is for your information only and used primarily for logging and troubleshooting.
Type: string
<productCode>Code that associates the fee with a product code for merchandising purposes, such as WATER or ADMINISTRATIVE. This code is persisted (as <productId>) in the booking request. See Product Code Type values for valid values.
Type: string


ELEMENT <percentOfRentFees>

These fees are charged as a percentage of the rent that is collected. You can specify up to 15 of these fees per rate. They are applied per night with optional nightly overrides.

<percentOfRentFees>
	<fee>
		<externalId>{id}</externalId>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<percent>{percent}</percent>
		<appliesPerNight>{fees}</appliesPerNight>
		<appliesPerStay>{fees}</appliesPerStay>
		<name>{name}</name>
		<productCode>{code}</productCode>
	</fee>
...
</percentOfRentFees>

Child Elements


The <fee> child element defines each fee you want to apply to the stay. Here are the child elements available in the <fee>element.
Name Description
<externalId>Unique ID of this fee. This ID is persisted in the booking request and can help you distinguish the fee from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<nightlyOverrides>Rules that are applied on a nightly basis and that override the fee amount for specific dates.
Type: <nightlyOverrides>
<percent>Required. Percentage of the rent to be charged for this fee.
Type: decimal
<appliesPerNight>Required*. Fee that is applied per night for nightly rates.
* This child element is required for nightly rates only (in the <lodgingRate> element). It is not supported for LoS rates.
Type: <appliesPerNight>
<appliesPerStay>Required*. Fee that is applied per stay for LoS rates.
* This child element is required for LoS rates only (in the <lodgingRateLos> element). It is not supported for nightly rates.
Type: <appliesPerStay>
<name>Required. Name of this fee. Specify up to 64 characters. This is for your information only.
Type: string
<productCode>Required. Code that characterizes the fee, such as WATER or ADMINISTRATIVE. This code is persisted (as <productId>) in the booking request. See Product Code Type values for valid values.
Type: string

ELEMENT <percentOfRentRefundableDamageDepositFees>

These deposits should be refunded to the traveler if no damage is sustained to the property during the stay. They are optional fees, applied as a percentage of the rent, and applied per stay. You can specify up to 15 deposit fees.

<percentOfRentRefundableDamageDepositFees>
	<fee>
		<externalId>{id}</externalId>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<percent>{percent}</percent>
		<appliesPerStay>{deposits}</appliesPerStay>
	</fee>
	...
</percentOfRentRefundableDamageDepositFees>

Child Elements

Name Description
<externalId>Unique ID of this fee. Specify up to 64 characters; spaces are not allowed.
Type: string
<nightlyOverrides>Rules that are applied on a nightly basis and that override the fee amount for specific dates.
Type: <nightlyOverrides>
<percent>Required. Percentage of the rent to be charged for this deposit.
Type: decimal
<appliesPerStay>Required. Fee that is applied per stay.
Type: <appliesPerStay>

ELEMENT <petFees>

These fees are charged if a pet is included in the stay. You can specify up to 15 pet fees for each <lodgingRate>. They can apply per pet per night or per pet per stay, with optional nightly overrides.

<petFees>
	<fee>
		<externalId>{id}</externalId>
		<amount>{amount}</amount>
		<nightlyOverrides>{overrides}</nightlyOverrides>
		<appliesPerPetPerNight>{fees}</appliesPerPetPerNight>
		<appliesPerPetPerStay>{fees}</appliesPerPetPerStay>
	</fee>
	...
</petFees>

Child Elements


The <fee> child element defines each fee you want to apply to the stay. Here are the child elements available in the <fee>element. One and only one <appliesPer> child element is required and allowed per fee.
Name Description
<externalId>Unique ID of this pet fee. Specify up to 64 characters; spaces are not allowed.
Type: string
<amount>Required. Amount to be charged for the pet fee.
Type: decimal
<nightlyOverrides>Rules that are applied on a nightly basis and that override the fee amount for specific dates.
Type: <nightlyOverrides>
<appliesPerPetPerNight>Required.* Fee that is applied per night if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerNight>
<appliesPerPetPerStay>Required.* Fee that is applied per stay if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerStay>

ELEMENT <serviceFee>

Fees that are charged for as a service fee (if any, not applicable to all partners).

<serviceFee>
    <percent>{percent}</percent>
    OR
    <amount>{amount}</amount>
    <appliesPerStay/>
    OR
    <appliesOnRentPerStay/>
    OR
    <appliesOnTotalPerStay/>
</serviceFee>
        

Child Elements

Name Description
<percent>percent amount (one of percent or amount is required).
Type: decimal
<amount>flat amount (one of percent or amount is required).
Type: decimal
<appliesPerStay>Fee that is applied per stay (only one of applies* object is required).
<appliesOnRentPerStay>Fee is a percentage of Rent (only one of applies* object is required)
<appliesOnTotalPerStay>Fee is a percentage of Total amount(only one of applies* object is required)

ELEMENT <nightlyRates>

A nightly rate defines the base rental amount that is due on a night-by-night basis, exclusive of discounts, fees, and taxes. Specify a default amount that can be discounted (rather than increased), and set three years of rate data.

<nightlyRates>
	<fri>{amount}</fri>
	<mon>{amount}</mon>
	<nightlyOverrides>{overrides}</nightlyOverrides>
	<sat>{amount}</sat>
	<sun>{amount}</sun>
	<thu>{amount}</thu>
	<tue>{amount}</tue>
	<wed>{amount}</wed>
</nightlyRates>

Child Elements

Name Description
<mon>Required. Standard nightly rate for a Monday. This value must be greater than zero (0).
Type: decimal
<tue>Required. Standard nightly rate for a Tuesday. This value must be greater than zero (0).
Type: decimal
<wed>Required. Standard nightly rate for a Wednesday. This value must be greater than zero (0).
Type: decimal
<thu>Required. Standard nightly rate for a Thursday. This value must be greater than zero (0).
Type: decimal
<fri>Required. Standard nightly rate for a Friday. This value must be greater than zero (0).
Type: decimal
<sat>Required. Standard nightly rate for a Saturday. This value must be greater than zero (0).
Type: decimal
<sun>Required. Standard nightly rate for a Sunday. This value must be greater than zero (0).
Type: decimal
<nightlyOverrides>Rules that override the standard nightly rate for the specified day.
Type: <nightlyOverrides>

ELEMENT <lengthOfStayBaseRent>

The LOS rate defines the rate based on number of stay nights
<lengthOfStayBaseRent>
	<lengthOfStayBaseRentRow>{CSVstring}</lengthOfStayBaseRentRow>
    ...
</lengthOfStayBaseRent>

Child Elements

Name Description
<CSVstring> Required. A string specifiying rates for each length of stay in a format
yyyy-MM-dd,12,0,0,0,6993,6993,7012.98,6993,7992,8991,9990,10989,11988,12987,.......
where on first index is a date for which the rates are specified, on second index is maxOccupancy and the remaining items are rates where index defines the length of stay of the rate
for example 6993 is the stay price for 4 nights of stay and 7992 is the stay price for 8 nights of stay
Type: string

ELEMENT <paymentSchedule>

This element defines one or more payments that are due after a booking.  For payment schedule examples, see the example below.

<paymentSchedule>
	<externalId>{id}</externalId>
	<payments>{payments}</payments>
</paymentSchedule>

Child Elements

Name Description
<externalId>Unique ID of the payment schedule. Specify up to 64 characters; spaces are not allowed.
Type: string
<payments>Required. Payments due during or after booking.
Type: <payments>

ELEMENT <payments>

This element defines the payments that are due during or after booking. You can specify up to five payments in the <payments> element.

<payments>
	<payment>
	<days>{integer}</days>
	<dueType>{dueDate}</dueType>
	<externalId>{id}</externalId>
	<requiresFlatAmountOf>
	<amount>{amount}</amount>
	</requiresFlatAmountOf>
	<requiresPercentOfTotalBooking>
	<percent>{amount}</percent>
	</requiresPercentOfTotalBooking>
	<requiresRemainder/>
	</payment>
...
</payments>

Child Elements

NameDescription
<days>Number of days before or after check-in that payment is due. Used in conjunction with <dueType> when <dueType> is set to BEFORE_CHECKIN, AFTER_CHECKIN, and AFTER_CHECKOUT.
Type: integer
<dueType>Required.
When the payment is due, such as AT_CHECKIN. See Payment Schedule Due Type values.
Note: One <payment> child element must specify <dueType>AT_BOOKING</dueType>.
Type: string
<externalId>Unique ID of the payment. Specify up to 64 characters; spaces are not allowed.
Type: string
<requiresFlatAmountOf> Required.* Flat amount is due for this payment as specified by the <amount> child element.
* Only one <requires> element is required and allowed.
Type: decimal
Example: To require $100 seven days before check-in and the rest at check-in:

<payments>
<payment>
<days>7</days>
<dueType>BEFORE_CHECKIN</dueType>
<requiresFlatAmountOf>
<amount>100</amount>
</requiresFlatAmountOf>
</payment>
<payment>
<dueType>AT_CHECKIN</dueType>
<requiresRemainder/>
</payment>
</payments>
<requiresPercentOfTotalBooking>
Required.* Percentage of the total rental amount due for this payment as specified by the <percent> child element.
* Only one <requires> element is required and allowed.
Type: decimal
Examples: To require 50% of the rental amount at booking and the rest at check-in:
<payments>
<payment>
<dueType>AT_BOOKING</dueType>
<requiresPercentOfTotalBooking>
<percent>50</percent>
</requiresPercentOfTotalBooking>
</payment>
<payment>
<dueType>AT_CHECKIN</dueType>
<requiresRemainder/>
</payment>
</payments>
To require 100% of the payment 14 days before check-in:
<payments>
<payment>
<dueType>AT_BOOKING</dueType>
<requiresPercentOfTotalBooking>
<percent>0</percent>
</requiresPercentOfTotalBooking>
</payment>
<payment>
<days>14</days>
<dueType>BEFORE_CHECKIN</dueType>
<requiresRemainder/>
</payment>
</payments>
<requiresRemainder>Required.* Empty element that signifies that the remainder of the balance must be paid with this payment. This element enables GuestSmiles to ensure that amounts are consistent between the payment schedule and the rates and fees.
* Only one <requires> element is required and allowed.
Type: null

ELEMENT <taxRules>

This element is used to estimate taxes on behalf of the integration partner. It is recommended that you apply taxes per stay instead of per night (for nightly and length-of-stay rates). This provides the ability for PMSs/PMISs to split rental amounts from taxes (including VAT) in booking data sent to GuestSmiles. PMs are responsible for compliance with all tax laws and for ensuring that their software provides relevant booking information to GuestSmiles. Note: Taxes are collected on fees depending on how the fee and tax rule are expressed:
  • A fee that is expressed as <appliesPerStay> is taxed only if the tax rule is expressed as <appliesPerStay>.
  • A fee that is expressed as  <appliesPerNight> is taxed if the tax rule is expressed as either  <appliesPerStay> or  <appliesPerNight>.
<taxRules>
	<flatTaxRules>{rules}</flatTaxRules>
	<percentOfFeesTaxRules>{payments}</percentOfFeesTaxRules>
	<percentOfRentAndFeesTaxRules>{rules}</percentOfRentAndFeesTaxRules>
	<percentOfRentTaxRules>{rules}</percentOfRentTaxRules>
</taxRules>

Child Elements


Name
Description
<flatTaxRules>Flat taxes that are applied to the rental amount.
Type: <flatTaxRules>
<percentOfFeesTaxRules>Taxes that are applied to the rental amount based on a percentage of fees.
Type: <percentOfFeesTaxRules>
<percentOfRentAndFeesTaxRules>Taxes that are applied to the rental amount that are based on a percentage of the rental rates and fees.
Type: <percentOfRentAndFeesTaxRules>
<percentOfRentTaxRules>Taxes that are applied to the rental amount that are based on a percentage of the rental rate.
Type: <percentOfRentTaxRules>


ELEMENT <flatTaxRules>

This element defines tax rules that are applied as flat amounts. You can specify up to 15 flat tax rules.

<flatTaxRules>
	<rule>
		<activeLocalDateRange>
		<max>{date}</max>
		<min>{date}</min>
		</activeLocalDateRange>
		<currency>{code}</currency>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<amount>{amount}</amount>
		<appliesPerGuestPerNight>{taxes}</appliesPerGuestPerNight>
		<appliesPerGuestPerStay>{taxes}</appliesPerGuestPerStay>
		<appliesPerNight>{taxes}</appliesPerNight>
		<appliesPerPetPerNight>{taxes}</appliesPerPetPerNight>
		<appliesPerPetPerStay>{taxes}</appliesPerPetPerStay>
		<appliesPerStay>{taxes}</appliesPerStay>
	</rule>
	...
</flatTaxRules>

Child Elements

Name Description
<activeLocalDateRange>Required. Date range describing when this rule should be considered active. This range contains two child elements (<max> and <min>) of type <date> with format YYYY-MM-DD. Either <max> or <min> or both are required.
Type: object
<currency>Currency in which the flat tax is remitted, being USD. GuestSmiles only supports USD at this time.
Type: string
<externalId>Unique ID of this tax rule. This ID is persisted in the booking request and can help you distinguish the tax from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name assigned to the flat tax rule. Specify up to 64 characters. This is for your information only.
Type: string
<amount>Required. Flat amount required for this tax rule.
Type: decimal
<appliesPerGuestPerNight>Required.* Tax that is applied per guest per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerNight>
<appliesPerGuestPerStay>Required.* Tax that is applied per guest per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerGuestPerStay>
<appliesPerNight>Required.* Tax that is applied per night.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerNight>
<appliesPerPetPerNight>Required.* Tax that is applied per night if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerNight>
<appliesPerPetPerStay>Required.* Tax that is applied per stay if pets are included in the reservation.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerPetPerStay>
<appliesPerStay>Required.* Tax that is applied per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerStay>

ELEMENT <percentOfFeesTaxRules>

This element is used to express tax rules that are defined as a percentage of fees. You can provide up to 15 tax rules in  <percentOfFeesTaxRules>.
   
<percentOfFeesTaxRules>
	<rule>
		<activeLocalDateRange>
		<max>{date}</max>
		<min>{date}</min>
		</activeLocalDateRange>
		<currency>{code}</currency>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<appliesToFeesPerNight>{taxes}</appliesToFeesPerNight>
		<appliesToFeesPerStay>{taxes}</appliesToFeesPerStay>
		<percent>{amount}</percent>
	</rule>
...
</percentOfFeesTaxRules>

Child Elements

Name Description
<activeLocalDateRange>Required. Date range describing when this rule should be considered active. This range contains two child elements (<max> and <min>) of type <date> with format YYYY-MM-DD. Either <max>or <min> or both are required.
Type: object
<currency>Currency in which the tax is remitted, being USD. GuestSmiles only supports USD at this time.
Type: string
<externalId>Unique ID of this tax rule. This ID is persisted in the booking request and can help you distinguish the tax from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name assigned to the tax rule. Specify up to 64 characters. This is for your information only.
Type: string
<appliesToFeesPerNight>Required.* Taxes that are applied to fees per night.
* One and only one <appliesTo> child element is required and allowed.
Type: <appliesToFeesPerNight>
<appliesToFeesPerStay>Required.* Taxes that are applied to fees per stay.
* One and only one <appliesTo> child element is required and allowed.
Type: <appliesToFeesPerStay>
<percent>Required. Percentage of fee amount required for this tax rule.
Type: decimal

ELEMENT <percentOfRentAndFeesTaxRules>

This element is used to express tax rules that are defined as a percentage of the rent and fees. You can specify up to 15 tax rules in  <percentOfRentAndFeesTaxRules>.

<percentOfRentAndFeesTaxRules>
	<rule>
		<activeLocalDateRange>
		<max>{date}</max>
		<min>{date}</min>
		</activeLocalDateRange>
		<currency>{code}</currency>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<appliesToRentAndFeesPerNight>{taxes}</appliesToRentAndFeesPerNight>
		<appliesToRentAndFeesPerStay>{taxes}</appliesToRentAndFeesPerStay>
		<percent>{amount}</percent>
	</rule>
...
</percentOfRentAndFeesTaxRules>

Child Elements

Name Description
<activeLocalDateRange>Required. Date range describing when this rule should be considered active. This range contains two child elements (<max> and <min>) of type <date> with format YYYY-MM-DD. Either <max> or <min> or both are required.
Type: object
<currency>Currency in which the tax is remitted, being USD. GuestSmiles only supports USD at this time.
Type: string
<externalId>Unique ID of this tax rule. This ID is persisted in the booking request and can help you distinguish the tax from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name assigned to the tax rule. Specify up to 64 characters. This is for your information only.
Type: string
<appliesToRentAndFeesPerNight>Required.* Taxes that are applied to rent and fees per night for nightly rates. This is unsupported for LoS rates.
* One and only one <appliesTo> child element is required and allowed.
Type: <appliesToRentAndFeesPerNight>
<appliesToRentAndFeesPerStay>Required.* Taxes that are applied to rent and fees per stay.
* One and only one <appliesTo> child element is required and allowed.
Type: <appliesToRentAndFeesPerStay>
<percent>Required. Percentage of rent and fee amounts required for this tax rule.
Type: decimal


ELEMENT <percentOfRentTaxRules>

This element is used to express tax rules that are defined as a percentage of the rent. You can specify up to 15 tax rules in  <percentOfRentTaxRules>.

<percentOfRentTaxRules>
	<rule>
		<activeLocalDateRange>
		<max>{date}</max>
		<min>{date}</min>
		</activeLocalDateRange>
		<currency>{code}</currency>
		<externalId>{id}</externalId>
		<name>{name}</name>
		<percent>{amount}</percent>
		<appliesPerNight>{taxes}</appliesPerNight>
		<appliesPerStay>{taxes}</appliesPerStay>
	</rule>
...
</percentOfRentTaxRules>

Child Elements

Name Description
<activeLocalDateRange>Required. Date range describing when this rule should be considered active. This range contains two child elements (<max> and <min>) of type <date> with format YYYY-MM-DD. Either <max> or <min> or both are required.
Type: object
<currency>Currency in which the tax is remitted, being USD. GuestSmiles only supports USD at this time.
Type: string
<externalId>Unique ID of this tax rule. This ID is persisted in the booking request and can help you distinguish the tax from others. Specify up to 64 characters; spaces are not allowed.
Type: string
<name>Required. Name assigned to the tax rule. Specify up to 64 characters. This is for your information only.
Type: string
<percent>Required. Percentage of rent amount required for this tax rule.
Type: decimal
<appliesPerNight>Required.* Taxes that are applied to rent per night for nightly rates.
* This is unsupported for LoS rates, and only one <appliesPer> child element is required and allowed.
Type: <appliesPerNight>
<appliesPerStay>Required.* Taxes that are applied to rent per stay.
* One and only one <appliesPer> child element is required and allowed.
Type: <appliesPerStay>

ELEMENT <appliesPerGuestPerNight>

This element defines discounts, fees, and taxes that are applied per guest per night.

<appliesPerGuestPerNight>
<forDaysOfWeek>
<day>{day}</day>
...
</forDaysOfWeek>
<forGuestNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forGuestNumber>
<forGuestsOfAge>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forGuestsOfAge>
<forNightNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightNumber>
<forNightsBookedInAdvance>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightsBookedInAdvance>
<forStaysOfNights>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysOfNights>
<forStaysWithNumberOfGuests>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysWithNumberOfGuests>
<whenBookingDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenBookingDateIn>
<whenCheckinDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenCheckinDateIn>
<whenStayDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenStayDateIn>
</appliesPerGuestPerNight>

Child Elements

Name Description
<forDaysOfWeek>If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forGuestNumber>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged per guest within or beyond the range. For example, you can charge for the third and fourth guests or for each guest beyond the fifth guest. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of guests.
Type: object
<forGuestsOfAge>If the age of any guest is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum age of guests.
Type: object
Note: The GuestSmiles site does not collect guest ages. However, you can use this rule to apply fees, discounts, or taxes to children. If a child is included in the reservation, the assumed age of the child is 7. Therefore, you can define rules based on that age value.
<forNightNumber>If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDateIn>If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object


ELEMENT <appliesPerGuestPerStay>

This element defines discounts, fees, and taxes that are applied (one-time) per guest per stay.

<appliesPerGuestPerStay>
<forGuestNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forGuestNumber>
<forGuestsOfAge>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forGuestsOfAge>
<forNightsBookedInAdvance>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightsBookedInAdvance>
<forStaysOfNights>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysOfNights>
<forStaysWithNumberOfGuests>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysWithNumberOfGuests>
<whenBookingDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenBookingDateIn>
<whenCheckinDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenCheckinDateIn>
<whenStayDatesIntersect>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenStayDatesIntersect>
</appliesPerGuestPerStay>

Child Elements

NameDescription
<forGuestNumber> If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged per guest within or beyond the range. For example, you can charge for the third and fourth guests or for each guest beyond the fifth guest. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of guests.
Type: object
<forGuestsOfAge> If the age of any guest is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum age of guests.
Type: object
Note: The GuestSmiles site does not collect guest ages. However, you can use this rule to apply fees, discounts, or taxes to children. If a child is included in the reservation, the assumed age of the child is 7. Therefore, you can define rules based on that age value.
<forNightsBookedInAdvance> If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights> If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests> If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn> If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn> If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDatesIntersect> If the arrival or departure date intersects or overlaps with any of the specified date ranges, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object


ELEMENT <appliesPerNight>

This element defines discounts, fees, and taxes that are applied per night.

<appliesPerNight>
<forDaysOfWeek>
<day>{day}</day>
...
</forDaysOfWeek>
<forNightNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightNumber>
<forNightsBookedInAdvance>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightsBookedInAdvance>
<forStaysOfNights>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysOfNights>
<forStaysWithNumberOfGuests>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysWithNumberOfGuests>
<whenBookingDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenBookingDateIn>
<whenCheckinDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenCheckinDateIn>
<whenStayDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenStayDateIn>
</appliesPerNight>

Child Elements

NameDescription
<forDaysOfWeek> If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forNightNumber> If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance> If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights> If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests> If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn> If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn> If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDateIn> If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <appliesPerPetPerNight>

This element defines discounts, fees, and taxes that are applied per night.

Note: The discount, fee, or tax is applied if a pet is included in the reservation, not according to the number of pets, because the GuestSmiles site does not collect number of pets.

<appliesPerPetPerNight>
<forDaysOfWeek>
<day>{day}</day>
...
</forDaysOfWeek>
<forNightNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightNumber>
<forNightsBookedInAdvance>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightsBookedInAdvance>
<forPetNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forPetNumber>
<forStaysOfNights>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysOfNights>
<forStaysWithNumberOfGuests>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysWithNumberOfGuests>
<whenBookingDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenBookingDateIn>
<whenCheckinDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenCheckinDateIn>
<whenStayDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenStayDateIn>
</appliesPerPetPerNight>

Child Elements

Name Description
<forDaysOfWeek>If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forNightNumber>If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDateIn>If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <appliesPerPetPerStay>

This element defines discounts, fees, and taxes that are applied per stay.

Note: The discount, fee, or tax is applied if a pet is included in the reservation, not according to the number of pets, because the GuestSmiles site does not collect number of pets.

<appliesPerPetPerStay>
<forNightsBookedInAdvance>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forNightsBookedInAdvance>
<forPetNumber>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forPetNumber>
<forStaysOfNights>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysOfNights>
<forStaysWithNumberOfGuests>
<range>
<max>{integer}</max>
<min>{integer}</min>
</range>
...
</forStaysWithNumberOfGuests>
<whenBookingDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenBookingDateIn>
<whenCheckinDateIn>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenCheckinDateIn>
<whenStayDatesIntersect>
<range>
<max>{date}</max>
<min>{date}</min>
</range>
...
</whenStayDatesIntersect>
</appliesPerPetPerStay>

Child Elements

Name Description
<forDaysOfWeek>If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forNightNumber>If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forPetNumber>If a pet is included in the reservation, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of pets.
Type: object
Note: The discount, fee, or tax is applied if a pet is included in the reservation, not according to the number of pets, because the GuestSmiles site does not collect number of pets.
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDateIn>If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <appliesPerStay>

This element defines discounts, fees, and taxes that are applied (one-time) per stay.

<appliesPerStay>
    <forNightsBookedInAdvance>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightsBookedInAdvance>
    <forStaysOfNights>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysOfNights>
    <forStaysWithNumberOfGuests>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysWithNumberOfGuests>
    <whenBookingDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenBookingDateIn>
    <whenCheckinDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenCheckinDateIn>
    <whenStayDatesIntersect>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenStayDatesIntersect>
</appliesPerStay>

Child Elements

Name Description
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forPetNumber>If the number of pets is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged per pet within or beyond the range. For example, you can charge for the second and third pets or for each pet beyond the second pet. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of pets.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDatesIntersect>If the arrival or departure date intersects or overlaps with any of the specified date ranges, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <appliesToFeesPerNight>

This element defines fees that are applied per night during a stay.

<appliesToFeesPerNight>
    <forDaysOfWeek>
        <day>{day}</day>
        ...
    </forDaysOfWeek>
    <forNightNumber>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightNumber>
    <forNightsBookedInAdvance>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightsBookedInAdvance>
    <forStaysOfNights>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysOfNights>
    <forStaysWithNumberOfGuests>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysWithNumberOfGuests>
    <whenBookingDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenBookingDateIn>
    <whenCheckinDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenCheckinDateIn>
    <whenStayDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenStayDateIn>
    <whenProductCodeIn>
        <code>{code}</code>
        ...
    </whenProductCodeIn>
</appliesToFeesPerNight>

Child Elements

Name Description
<forDaysOfWeek>If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forNightNumber>If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDateIn>If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenProductCodeIn>If the fee's product code is present in the list of codes in this element, the rule (of the parent element) takes effect. You can specify up to 59 <code> child elements, though you cannot specify a code more than once. See Product code type values for the list of valid values.
Type: object

ELEMENT <appliesToFeesPerStay>

This element defines fees that are applied to fees (one-time) during a stay.

<appliesToFeesPerStay>
    <forNightsBookedInAdvance>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightsBookedInAdvance>
    <forStaysOfNights>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysOfNights>
    <forStaysWithNumberOfGuests>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysWithNumberOfGuests>
    <whenBookingDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenBookingDateIn>
    <whenCheckinDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenCheckinDateIn>
    <whenStayDatesIntersect>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenStayDatesIntersect>
    <whenProductCodeIn>
        <code>{code}</code>
        ...
    </whenProductCodeIn>
</appliesToFeesPerStay>

Child Elements

Name Description
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenStayDatesIntersect>If the arrival or departure date intersects or overlaps with any of the specified date ranges, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenProductCodeIn>If the fee's product code is present in the list of codes in this element, the rule (of the parent element) takes effect. You can specify up to 59 <code> child elements, though you cannot specify a code more than once. See Product code type values for the list of valid values.
Type: object

ELEMENT <appliesToRentAndFeesPerNight>

This element defines fees that are applied to rent and fees per night during a stay.

<appliesToRentAndFeesPerNight>
    <forDaysOfWeek>
        <day>{day}</day>
        ...
    </forDaysOfWeek>
    <forNightNumber>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightNumber>
    <forNightsBookedInAdvance>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightsBookedInAdvance>
    <forStaysOfNights>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysOfNights>
    <forStaysWithNumberOfGuests>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysWithNumberOfGuests>
    <whenBookingDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenBookingDateIn>
    <whenCheckinDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenCheckinDateIn>
    <whenProductCodeIn>
        <code>{code}</code>
        ...
    </whenProductCodeIn>
    <whenStayDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenStayDateIn>
</appliesToRentAndFeesPerNight>

Child Elements

Name Description
<forDaysOfWeek>If the day of week is within the days specified in this element, this rule (of the parent element) takes effect. You can specify up to seven <day> child elements, one for each of these values: MON, TUE, WED, THU, FRI, SAT, or SUN.
Type: object
<forNightNumber>If the the night number is within the specified integer range, this rule (of the parent element) takes effect for those night numbers. You can specify up to five <range>child elements, each of night number in the stay.
Type: object
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenProductCodeIn>If the fee's product code is present in the list of codes in this element, the rule (of the parent element) takes effect. You can specify up to 59 <code> child elements, though you cannot specify a code more than once. See Product code type values for the list of valid values.
Type: object
<whenStayDateIn>If any of the stay dates fall within the specified date range, this rule (of the parent element) takes effect, and it works in conjunction <applies*PerNight> elements. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <appliesToRentAndFeesPerStay>

This element defines fees that are applied to rent and fees (one-time) during a stay.

<appliesToRentAndFeesPerStay>
    <forNightsBookedInAdvance>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forNightsBookedInAdvance>
    <forStaysOfNights>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysOfNights>
    <forStaysWithNumberOfGuests>
        <range>
            <max>{integer}</max>
            <min>{integer}</min>
        </range>
        ...
    </forStaysWithNumberOfGuests>
    <whenBookingDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenBookingDateIn>
    <whenCheckinDateIn>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenCheckinDateIn>
    <whenProductCodeIn>
        <code>{code}</code>
        ...
    </whenProductCodeIn>
    <whenStayDatesIntersect>
        <range>
            <max>{date}</max>
            <min>{date}</min>
        </range>
        ...
    </whenStayDatesIntersect>
</appliesToRentAndFeesPerStay>

Child Elements

Name Description
<forNightsBookedInAdvance>If the number of nights booked in advance is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights in advance of the booking.
Type: object
<forStaysOfNights>If the length of stay is within the specified integer range, this rule (of the parent element) takes effect. You can specify up to five <range> child elements, each of which defines a minimum and maximum number of nights.
Type: object
<forStaysWithNumberOfGuests>If the number of guests is within the specified integer range, this rule (of the parent element) takes effect. The amount is charged once (for the stay) if the number of guests falls within the range or beyond the maximum. You can specify up to five <range>child elements, each of which defines a minimum and maximum number of guests.
Type: object
<whenBookingDateIn>If the booking date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenCheckinDateIn>If the check-in date is within the specified date range, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<whenProductCodeIn>If the fee's product code is present in the list of codes in this element, the rule (of the parent element) takes effect. You can specify up to 59 <code> child elements, though you cannot specify a code more than once. See Product code type values for the list of valid values.
Type: object
<whenStayDatesIntersect>If the arrival or departure date intersects or overlaps with any of the specified date ranges, this rule (of the parent element) takes effect. You can specify up to 50 <range> child elements, each of which defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object

ELEMENT <nightlyOverrides>

 Nightly overrides enable you to override nightly rates, discounts, fees, or price thresholds (guardrails) by specifying an amount or a percentage for a date range. Be aware of the following when defining overrides:

  • Do not use the same date for  <max> and  <min> in different date ranges within an override; ranges cannot overlap.
  • Amount and percent values must be unique, which might necessitate multiple night ranges.
  • The combined total of nightly overrides and date ranges cannot exceed 2000.
<nightlyOverrides>
	<override>
		<amount>{amount}</amount>
		<nights>
		    <range>
		        <max>{date}</max>
		        <min>{date}</min>
		    </range>
		    ...
		</nights>
		<percent>{amount}</percent>
	</override>
	...
</nightlyOverrides>

Child Elements

Name Description
<amount>Required. If the <nightlyOverrides> element is the child of an amount-based element, this child element is required. It specifies a flat amount that will serve as the rate, discount, fee, or price threshold for the nights specified.
Type: decimal
<nights>Required. Date ranges for which the override applies You can specify up to 2,000 <range> child elements, though the combined total of nightly overrides and night ranges cannot exceed 2000. Each range defines a beginning (<min>) and end (<max>) date. Date format is YYYY-MM-DD.
Type: object
<percent>Required. If the <nightlyOverrides> element is the child of a percent-based element, this child element is required. It specifies a percentage for the rate, discount, fee, or price threshold for the nights specified.
Type: decimal

Unit Availability Index


The Advertiser Unit Availability Content index (or "Unit Availability index") contains metadata and a link to the Unit Availability content for each specified listing.

You should retrieve this index several times per day from your endpoint. If the <lastUpdatedDate> in this index is within three days of the current date, you should use the GET method to retrieve Unit Availability content files. If <lastUpdatedDate> is outside the three-day range, the system skips the content.

ELEMENT <advertiserUnitAvailabilityContentIndex>

This is the root element of the index.

<?xml version="1.0" encoding="UTF-8"?>
<advertiserUnitAvailabilityContentIndex>
	<documentVersion>{version}</documentVersion>
	<advertiser>{advertiser}</advertiser>
</advertiserUnitAvailabilityContentIndex>

Child Elements

NameDescription
<documentVersion>Required. Listing version. Value must be 4.2.1
Type: string
<advertiser>Required. Container that provides metadata about the property manager and a link to the unit availability content.
Type: <advertiser>

ELEMENT <advertiser>

This element provides metadata about the advertiser (property manager) and a link to the unit availability content.

<advertiser>
    <assignedId>{id}</assignedId>
    <unitAvailabilityContentIndexEntry>{entry}</lunitAvailabilityContentIndexEntry>
    ...
</advertiser>

Child Elements

NameDescription
<assignedId>Required. Unique ID assigned to the property manager (PM) by PMS.
Type: string
<unitAvailabilityContentIndexEntry>Required. Unit availability index entry for a particular PM.
Type: <unitAvailabilityContentIndexEntry>

ELEMENT <unitAvailabilityContentIndexEntry>

This element contains metadata about unit availability and includes a link to the relevant content to be imported. The index entry refers only to availability information.

<unitAvailabilityContentIndexEntry>
    <listingExternalId>{id}</listingExternalId>
    <unitExternalId>{id}</unitExternalId>
    <lastUpdatedDate>{dateTime}</lastUpdatedDate>
    <unitAvailabilityContentUrl>{url}</unitAvailabilityContentUrl>
</unitAvailabilityContentIndexEntry>

Child Elements

NameDescription
<listingExternalId>Required. Unique ID of this listing in the integration partner's system. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<unitExternalId>Required. Unique ID of this unit in the integration partner's system. Specify up to 255 characters (alphanumeric characters, dashes, and underscores only).
Type: string
<lastUpdatedDate>Required. Date and time when the referenced content was last updated. If the specified date is within the last three days, content is retrieved and processed (if the listing is active). Format is yyyy-MM-ddTHH:mm:ssZ.
Type: dateTime 
<unitAvailabilityContentUrl>Required. URL to the unit availability content for this unit.
Type: string


Unit Availability Content

This file sets the rental unit's calendar in the feed. We specify dates that are available for a particular unit type and the rules that must be enforced for the stay. On a day-by-day basis, you can express these settings and rules:

  • Availability – available or not available
  • Change over – this is a check-in day, checkout day, or both
  • Minimum length of stay – how many days that the traveler must stay
  • Minimum lead time – minimum lead time required before a traveler can book a reservation
For the best traveler booking experience, we recommend the following:

  • Update availability regularly
  • Make sure your booking rules are up-to-date
The Unit Availability index contains a link to this file for each listing.

ELEMENT <unitAvailabilityContent>

This is the root element of the file and provides the listing and unit IDs for which availability is specified.

<?xml version="1.0" encoding="UTF-8"?>
<unitAvailabilityContent>
    <listingExternalId>{id}</listingExternalId>
    <unitExternalId>{id}</unitExternalId>
    <unitAvailability>{availability}</unitAvailability>
</unitAvailabilityContent>

Child Elements

Name

Description


<listingExternalId>

Required. The unique external ID of the listing. Same as <unitExternalId>

Type: string


<unitExternalId>

Required. The unique external ID of the unit.  Same as <listingExternalId>

Type: string


<unitAvailability>

Required. Availability (calendar) and stay information for the listing.

Type: <unitAvailability>


ELEMENT <unitAvailability>

This element models a unit's availability (calendar) for up to three years, including default values for dates not specified in the unit's calendar.
<unitAvailability>
	<availabilityDefault>{default}</availabilityDefault>
	<changeOverDefault>{default}</changeOverDefault>
	<dateRange>
		<beginDate>{arrivalDate}</beginDate>
		<endDate>{departureDate}</endDate>
	</dateRange>
	<unitAvailabilityConfiguration>{configuration}</unitAvailabilityConfiguration>
</unitAvailability>

Child Elements


Name

Description

<availabilityDefault>

The default value for daily availability for days not specified within <dateRange>. Valid values include Y for available and N for not available. If <availabilityDefault> is not provided, a default value of Y is used.

Type: string


<changeOverDefault>

Default value for <changeOver> (check-in day) for days not specified within <dateRange>. Valid values include X for no action possible, C for check-in/out, O for checkout only, and I for check-in only. If <changeOverDefault> is not provided, a default value of C is used.

Type: string

<dateRange>

Date range for the specified availability. Specify the <beginDate> and <endDate>child elements to define the date range, and the format is YYYY-MM-DD. you can include up to three years (1096 days) in the range. Default values take effect for dates beyond the date range until the end of the calendar length (three years/1096 days).

Type: object


<unitAvailabilityConfiguration>

Availability settings for the unit.

Type: <unitAvailabilityConfiguration>


ELEMENT <unitAvailabilityConfiguration>

This element provides up to three years of unit availability information for the unit. If dates are not included in the configuration's date range, default values from <unitAvailability>'s child elements are used.

<unitAvailabilityConfiguration>
	<availability>{availability}</availability>
	<changeOver>{values}</changeOver>
	<maxStay>{stays}</maxStay>
	<minPriorNotify>{values}</minPriorNotify>
	<minStay>{stays}</minStay>
</unitAvailabilityConfiguration>

Child Elements

For all child elements, we specify up to three years of availability, but we do not specify more days than there are days in <dateRange>.
Name

Description


<availability>

Comma-separated list of availability codes for every day in <dateRange>. Supported codes include Y for available and N for not available. Example: YYYNNNYYYNNNYYYNNNYYYNNNYYY

Type: string


<changeOver>

Comma-separated list of change-over data (check-in days) for every day in <dateRange>. Valid codes include X for no action possible, C for check-in/out, O for checkout only, and I for check-in only. Example: CCIIOOXCCIIOOXCCIIOOXCCIIOOXCCIIOOXCCIIOOXCCIIO

Type: string


<minPriorNotify>

Comma-separated list of the minimum numbers of days required to book the stay before the check-in date. Valid values include 0-999, where 0 means no prior notification required. If, for example, you specify "2" and the traveler books on a Wednesday, he can check-in on Friday. Example: 2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2 …

Type: string


<minStay>

Comma-separated list of the minimum number of days allowed in a stay for each day in <dateRange>. Valid values include 0-999, where 0 means no minimum stay. Example: 2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2,3,7,7,7,7,2,2

Type: string