SiteConnect Change Log
Please check this page regularly for functionality and feature updates to SiteConnect.
Removed / Modified / Added to the specification.
Updated 6 July 2023
Minimum Length of Stay Through and Maximum Length of Stay Through
Minimum and maximum lengths of stay can be defined as a length of stay through instead of a length of stay on arrival.
OTA_HotelAvailNotifRQ Specification
Element | Number | Type | Description |
---|---|---|---|
OTA_HotelAvailNotifRQ | 1 | Root node | |
AvailStatusMessage / | 0..2 | Optional, used for minimum and maximum length of stay | |
@MinMaxMessageType | 1 | String | Mandatory if LengthsOfStay present. Can be one of the following For any property only either SetMinLOS and SetMaxLOS or SetForwardMinStay and SetForwardMaxStay will be used. |
@Time | 0..1 | Integer | Mandatory if @MinMaxMessageType is ‘SetMinLOS' or 'SetForwardMinStay’: Sets the minimum or maximum number of days required for a stay. If @MinMaxMessageType is ‘SetMaxLOS' or 'SetForwardMaxStay’: Sets the maximum number of days bookable. If no MaxLOS value is set, no @Time will be specified. |
Updated
Occupancy Based Pricing
OTA_HotelAvailRS - able to return a number of Occupants of a RoomType or Rateplan
OTA_HotelAvailRS | 1 | Root element | |
@TimeStamp | 1 | Time of the transaction in xml schema dateTime format. | |
@Version | 1 | Always 1.0 | |
@EchoToken | 1 | Mirror the EchoToken in the OTA_HotelAvailRQ request that your system received | |
OTA_HotelAvailRS / Success | 0..1 | Mandatory when success. Should only be present if it was a successful response. | |
OTA_HotelAvailRS / RoomStays | 0..1 | A collection of RoomStay elements | |
OTA_HotelAvailRS / RoomStays / RoomStay | 1..n | Room stay details. Each RoomStay should only contain one RoomType + RatePlan combination. | |
OTA_HotelAvailRS / RoomStays / RoomStay / RoomTypes / RoomType | 1 | Each RoomStay element should contain 1 RoomType | |
@RoomTypeCode | 1 | The code identifying this room | |
OTA_HotelAvailRS / RoomStays / RoomStay / RoomTypes / RoomType / RoomDescription | 1 | ||
@Name | 1 | The room name. This name should be a unique description of the room. E.g. "Deluxe Double Room 1 King size bed". The hotel will use this value to identify the room. | |
OTA_HotelAvailRS / RoomStays / RoomStay / RoomTypes / RoomType / RoomDescription / Text | 0..1 | Additional text to describe the room | |
OTA_HotelAvailRS / RoomStays / RoomStay / RoomTypes / RoomType / Occupancy |
| 0..1 | (Beta) Mandatory, if your channel is using Occupancy Based Pricing. This information will only be used once when initially enabling Occupancy Based Pricing for an established channel, after which time the customer will set/update this value. The information is used to determine the number of occupants to supply rates for. We request that you continue to include it always, even after the initial enablement. |
| @AgeQualifyingCode | 1 | Mandatory, if your channel is using Occupancy Based Pricing. Always “10” indicating the maximum adult occupancy of the room |
| @MaxOccupancy | 1 | Mandatory, if your channel is using Occupancy Based Pricing. This attribute indicates the max number of occupants for the RoomType or RoomType+RatePlan combination. Value Range: Min 1, Max 50 |
OTA_HotelRateAmountNotifRQ - Examples
OTA_HotelRateAmountNotifRQ | 1 | Root node | ||
@TimeStamp | 1 | DateTime | Time of the transaction | |
@Version | 1 | Decimal | Current version is 1.0 | |
@EchoToken | 1 | String | Globally unique identifier for the request, this should be reflected as an EchoToken in the response | |
OTA_HotelRateAmountNotifRQ / | 1 | Contains rates for a given hotel | ||
| @HotelCode | 1 | String | Hotel code of the property whose rate is being updated |
RateAmountMessages / RateAmountMessage | 1..n | Contain details of a rate update for a time span | ||
RateAmountMessage / StatusApplicationControl | 1 | Contains date and room identification information, | ||
@InvTypeCode | 1 | String | Identifies the room | |
@RatePlanCode | 0..1 | String | Identifies the rate | |
@Start | 1 | Date | The start date for which the rate is being set. This date is inclusive. | |
@End | 1 | Date | The end date for which the rate is being set. This date is inclusive. | |
RateAmountMessage / Rates | 1 | |||
Rates / Rate | 1 | |||
Rate / BaseByGuestAmts | 1 | Base charge for a given number of guests. | ||
BaseByGuestAmts / BaseByGuestAmt | 1..n | Contains information about the rates. | ||
@AmountAfterTax | 1 | Decimal | Rate Amount after tax. Positive decimal value. | |
@NumberOfGuests | 0..1 | Integer | Number of guests in room. Mandatory when Occupancy Based Pricing is enabled. | |
@AgeQualifyingCode | 0..1 | Integer | SiteMinder supports the following values: Mandatory when Occupancy Based Pricing is enabled. | |
@CurrencyCode | 0..1 | String | The currency of the rate. This is an optional attribute can be enabled if requested. | |
Rate / AdditionalGuestAmounts | 0..1 | Additional charges for extra guests for a given age qualifying code. | ||
AdditionalGuestAmounts / | 1..2 | Mandatory if AdditionalGuestAmounts is present | ||
@AgeQualifyingCode | 1 | Integer | SiteMinder supports the following values: Note: If Occupancy Based Pricing is enabled, the AdditionalGuestAmount for AgeQualifyingCode=’10’ is no longer included in the XML (Beta) | |
@Amount | 1 | Decimal | Extra charge amount. | |
@CurrencyCode | 0..1 | String | The currency of the extra guest amount. This is an optional attribute can be enabled if requested. | |
Rate / RateDescription | 0..1 | Description of what the rate includes. | ||
RateDescription / Text | 1 | String | The inclusion text. Max Length is 255 characters. |
OTA_HotelRateAmountNotifRS - Added one error Code
OTA_HotelRateAmountNotifRS / Errors | 0..1 | Contains a list of errors if the request failed to process. | ||
Errors / Error | 1..n | Should be at least one node if there is an Errors Node. | ||
@Type | 1 | String | Any type from the OTA code table for 'Error Warning Type (EWT)' can be used. In particular, the following types are recommended 1: Unknown | |
@Code | 0..1 | String | Any code from the OTA code table for 'Error Codes (ERR)' can be used. In particular, the following codes are important as they will inform SiteConnect of a room or hotel mapping error 402: Invalid room type 397: Invalid number of adults (Beta) |
Updated 8 September 2020
Virtual Credit Cards
Extra information about Virtual Credit Cards can now be included with a Payment Card in a reservation.
OTA_HotelResNotifRQ
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Guarantee / GuaranteesAccepted / GuaranteeAccepted / PaymentCard | 0..1 | Guarantee provided with the reservation. This element is used if there is no deposit payed for the reservation. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are ONLY passed through when a Channel decides to utilise the SiteConnect Reservation Email notification. SeriesCode will not be stored anywhere within SiteConnect for PCI compliance. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing When ThreeDSVersion = 1.x.x the transaction identifier MUST be provided in the @XID attribute | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction When ThreeDSVersion = 2.x.x the transaction identifier MUST be provided in the @DSTransactionID attribute | |
PaymentCard / TPA_Extensions / VirtualCreditCard | 0..1 | Denotes that the payment card is a virtual credit card. | |
@isVCC | 1 | Must always be “true”. | |
@VCCActivationDate | 0..1 | Date | The date from when the card can be charged. Format YYYY-MM-DD. |
@VCCDeactivationDate | 0..1 | Date | The date from when the card will no longer be chargeable. Format YYYY-MM-DD. |
@VCCCurrentBalance | 0..1 | Decimal | The amount which can be charged to the card. If this is not included, it does not mean a 0 balance. |
@VCCCurrencyCode | 0..1 | String | The ISO currency code of the VCCCurrentBalance. Must be included if there is @VCCCurrentBalance. |
ResGlobalInfo / DepositPayments /GuaranteePayment | 0..1 | Deposit provided with the reservation. | |
GuaranteePayment / AcceptedPayments / AcceptedPayment | 0..1 | Deposit payment information. | |
AcceptedPayment / PaymentCard | 1 | Mandatory if AcceptedPayment is sent. The card to which the deposit or prepayment is charged. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are not stored or passed through to the hotel due to PCI-DSS requirements. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing When ThreeDSVersion = 1.x.x the transaction identifier MUST be provided in the @XID attribute | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction When ThreeDSVersion = 2.x.x the transaction identifier MUST be provided in the @DSTransactionID attribute | |
PaymentCard / TPA_Extensions / VirtualCreditCard | 0..1 | Denotes that the payment card is a virtual credit card. | |
@isVCC | 1 | Must always be “true”. | |
@VCCActivationDate | 0..1 | Date | The date from when the card can be charged. Format YYYY-MM-DD. |
@VCCDeactivationDate | 0..1 | Date | The date from when the card will no longer be chargeable. Format YYYY-MM-DD. |
@VCCCurrentBalance | 0..1 | Decimal | The amount which can be charged to the card. If this is not included, it does not mean a 0 balance. |
@VCCCurrencyCode | 0..1 | String | The ISO currency code of the VCCCurrentBalance. Must be included if there is @VCCCurrentBalance. |
Updated 28 August 2020
Guest Count Ages
Ages can now be included with guest counts.
OTA_HotelResNotifRQ
GuestCounts
Element | Number | Type | Description |
---|---|---|---|
RoomStay / GuestCounts | 1 | How many guests will be staying in the room. The count is split over one or more GuestCount elements under GuestCounts, for each type of guest: adult, child or infant. At least one adult count will always be sent. Each combination of AgeQualifyingCode and Age must be unique for a RoomStay. | |
GuestCounts / GuestCount | 1..n | ||
@AgeQualifyingCode | 1 | Integer | Specifies the guest type for this GuestCount - uses OTA Spec for identifiers, will be one of three values |
@Count | 1 | Integer | The actual count for this type of guest |
@Age | 0..1 | Integer |
Updated 06 November 2019
Credit card series codes (CVV numbers) will now be provided in the SiteConnect reservation email only.
Guarantee and Deposit Payments
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Guarantee / GuaranteesAccepted / GuaranteeAccepted PaymentCard | 0..1 | Guarantee provided with the reservation. This element is used if there is no deposit payed for the reservation. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are ONLY passed through when a Channel decides to utilise the SiteConnect Reservation Email notification. SeriesCode will not be stored anywhere within SiteConnect for PCI compliance. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction | |
ResGlobalInfo / DepositPayments /GuaranteePayment | 0..1 | Deposit provided with the reservation. | |
GuaranteePayment / AcceptedPayments / AcceptedPayment | 0..1 | Deposit payment information. | |
AcceptedPayment / PaymentCard | 1 | Mandatory if AcceptedPayment is sent. The card to which the deposit or prepayment is charged. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are ONLY passed through when a Channel decides to utilise the SiteConnect Reservation Email notification. SeriesCode will not be stored anywhere within SiteConnect for PCI compliance. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction | |
GuaranteePayment / AmountPercent | 1 | Mandatory if something is passed in the DepositPayment element. | |
@Amount | 1 | Amount charged as deposit | |
@CurrencyCode | 1 | Currency of the deposit payment |
Updated 13 September 2019
Strong Customer Authentication
3DS data can now be delivered in reservations alongside payment card data.
OTA_HotelResNotifRQ
Guarantee and Deposit Payments
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Guarantee / GuaranteesAccepted / GuaranteeAccepted PaymentCard | 0..1 | Guarantee provided with the reservation. This element is used if there is no deposit payed for the reservation. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are not stored or passed through to the hotel due to PCI-DSS requirements. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction | |
ResGlobalInfo / DepositPayments /GuaranteePayment | 0..1 | Deposit provided with the reservation. | |
GuaranteePayment / AcceptedPayments / AcceptedPayment | 0..1 | Deposit payment information. | |
AcceptedPayment / PaymentCard | 1 | Mandatory if AcceptedPayment is sent. The card to which the deposit or prepayment is charged. | |
@CardType | 0..1 | Always 1 to indicate credit card | |
@CardCode | 1 | The 2 character code of the credit card issuer. Please see the OTA Payment Card Provider Codes table for reference | |
@CardNumber | 0..1 | This is actual number of the credit card used for deposit/prepayment. | |
@SeriesCode | 0..1 | The SeriesCode attribute is used (Optionally) for the security number of the card. NOTE: While this attribute is supported in the reservation XML, the details of this attribute are not stored or passed through to the hotel due to PCI-DSS requirements. | |
@ExpireDate | 0..1 | This is the expiry date of the credit card used for deposit/prepayment. Format MMyy. | |
PaymentCard / CardHolderName | 0..1 | The name of the card holder. | |
PaymentCard / ThreeDomainSecurity / Results | 0..1 | Transaction results. IMPORTANT NOTE: SCA / 3DS details will only be passed through to hoteliers integrated with a 3DS compatible property management system. If the hotelier is not integrated with a property management system or the property management system does not support SCA, information within the 'ThreeDomainSecurity' element will not be visible in The Channel Manager. | |
@ThreeDSVersion | 1 | The 3DS version used for authentication | |
@ECI | 1 | Electronic Commerce Indicator. Please see Electronic Commerce Indicator Codes table for reference. | |
@CAVV | 0..1 | Cardholder Authentication Verification Value (CAVV); Authentication Verification Value (AVV); Universal Cardholder Authentication Field (UCAF) | |
@PAResStatus | 0..1 | Transactions status result identifier. Please see Transactions Status Result Identifier Codes table for reference. | |
@SignatureVerification | 0..1 | Transaction Signature status identifier. Please see Transaction Signature Status Codes table for reference. | |
@XID | 0..1 | Transaction identifier resulting from authentication processing | |
@Enrolled | 0..1 | Status of Authentication eligibility. Please see Status of Authentication Codes table for reference. | |
@DSTransactionID | 0..1 | Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction | |
GuaranteePayment / AmountPercent | 1 | Mandatory if something is passed in the DepositPayment element. | |
@Amount | 1 | Amount charged as deposit | |
@CurrencyCode | 1 | Currency of the deposit payment |
Updated 4 June 2019
Guest ID Document
Guest profiles (ResGuest) can now contain guest ID document details.
Element | Number | Type | Description |
---|---|---|---|
Customer / Document | 0..1 | Detailed document information for the guest (e.g., driver license, passport, visa). | |
@BirthCountry | 0..1 | Specifies the birth country of the document holder. | |
@BirthPlace | 0..1 | Specifies the birth place of the document holder (e.g., city, state, county, province), when designating a country of birth, use BirthCountry. | |
@DocHolderNationality | 0..1 | The country code of the nationality of the document holder. | |
@DocID | 1 | Unique number assigned by authorities to document. | |
@DocIssueAuthority | 0..1 | Indicates the group or association that granted the document. | |
@DocIssueCountry | 0..1 | Country where the document was issued. | |
@DocIssueLocation | 0..1 | Indicates the location where the document was issued. | |
@DocIssueStateProv | 0..1 | State or Province where the document was issued. | |
@DocType | 1 | Indicates the type of document (e.g. Passport, Military ID, Drivers License, national ID, Vaccination Certificate). Refer to the Document Type Code List | |
@BirthDate | 0..1 | Indicates the date of birth as indicated in the document, in ISO 8601 prescribed format (YYYY-MM-DD). | |
@Gender | 0..1 | String | Identifies the gender. Possible values are "Female", "Male", or "Unknown". |
@EffectiveDate | 0..1 | Date | Indicates the starting date, in format YYYY-MM-DD. |
@ExpireDate | 0..1 | Date | Indicates the ending date, in format YYYY-MM-DD. |
Document / DocHolderName | 0..1 | The name of the document holder in unformatted text (Mr. Sam Jones). If no DocHolderName is included, the guest name fields will be assumed to be the name as per passport. |
Updated 26 February 2019
Corporate Profile ID
Corporate profiles in reservations can now contain a UniqueID.
CompanyInfo (Corporate)
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Profiles / ProfileInfo | 0..1 | ||
ProfileInfo / UniqueID | 0..1 | ||
@ID | 1 | String | Corporate identification number e.g. company code |
ProfileInfo / Profile | 1 | ||
@ProfileType | 1 | String | Always 3 – OTA code for a Corporate |
Maximum Length of Stay
Maximum stay can now be sent with restriction updates.
OTA_HotelAvailNotifRQ Specification
Element | Number | Type | Description |
---|---|---|---|
OTA_HotelAvailNotifRQ | 1 | Root node | |
AvailStatusMessage / | 0..2 | Optional, used for minimum and maximum length of stay | |
@MinMaxMessageType | 1 | String | Mandatory if LengthsOfStay present. Can be one of the following |
@Time | 0..1 | Integer | Mandatory if @MinMaxMessageType is 'SetMinLOS': Sets the minimum or maximum number of days required for a stay. If @MinMaxMessageType is 'SetMaxLOS': Sets the maximum number of days bookable. If no MaxLOS value is set, no @Time will be specified. |
Updated 3 September 2018
The Reservation API now has the ability to accept only AmountBeforeTax, instead of requiring AmountAfterTax to be always set.
HotelReservation / RoomStays / RoomStay
RoomRates
Element | Number | Type | Description |
---|---|---|---|
Rate / Base | 1 | The base amount charged for the accommodation | |
@CurrencyCode | 1 | String | CurrencyCode uses ISO 4217 codes to indicate the currency of the rate that is being booked. |
@AmountAfterTax | 0..1 | Decimal | The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
@AmountBeforeTax | 0..1 | Decimal | The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
Rate / Total | 0..1 | The total amount charged for this rate including additional occupant amounts and fees. If left empty and the Base amount is provided then assume the Base amount to be the Total Amount. | |
@CurrencyCode | 1 | String | CurrencyCode uses ISO 4217 codes to indicate the currency of the rate that is being booked. |
@AmountAfterTax | 0..1 | Decimal | The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
@AmountBeforeTax | 0..1 | Decimal | The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
Total
Element | Number | Type | Description |
---|---|---|---|
Total / Taxes | 0..1 | Optional. Can be used for Total Pricing. | |
@Code | 0..1 | The Code attribute refers to OpenTravel Alliance list FTT (fee tax type) and is used to indicate the specific tax or fee that is being transferred. | |
@AmountAfterTax | 0..1 | Decimal | The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
@AmountBeforeTax | 0..1 | Decimal | The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
HotelReservation / ResGlobalInfo
Total
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Total | 1 | The total amount for the Reservation. This is the total amount charged for all RoomStays and any additional fees and/or charges that applies. | |
@CurrencyCode | 1 | CurrencyCode uses ISO 4217 codes to indicate the currency of the rate that is being booked. | |
@AmountAfterTax | 0..1 | The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. | |
@AmountBeforeTax | 0..1 | The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. |
Updated 24 May 2017
We extended the Reservation API with the ability to provide Services information. Please see relevant additions to both Services and RoomStay below.
Services
Element | Number | Description |
---|---|---|
OTA_HotelResNotifRQ / HotelReservations / HotelReservation / Services / Service | A Service object represents a non-room product provided to guests. Service products may have associated inventory and charges | |
@ServiceInventoryCode | 1 | The identifier code for the service as given by the source booking channel will be provided here Options are: event, extra, extra-bed, extra-person, meal, other, service, surcharge, tour |
@ID | 0..1 | The reference id provided for a extra/service by the source booking channel (if provided) |
@ServiceRPH | 0..1 | This links a Service to a RoomStay or RatePlan. The absence of a ServiceRPH indicates that this is a HotelReservation level charge |
@Inclusive | 1 | This should always be TRUE because SiteConnect will report totals as inclusive of charges and extras |
@Quantity | 1 | The number of units included in the charge. This value does not affect the Total amount |
Service / Price / Base | 1 | Container for the Service base price |
@CurrencyCode | 0..1 | The ISO currency code for the unit amount |
@AmountAfterTax | 0..1 | The unit amount after tax |
@AmountBeforeTax | 0..1 | The unit amount before tax |
Service / Price / Base / Taxes / Tax | 0..1 | Container for the tax |
@Code | 1 | The type of tax being applied to the total. Refer to the code table OTA Fee Tax Type (FTT) |
@Percentage | 0..1 | Tax percentage |
@Amount | 0..1 | Tax amount |
Service / Price / Base / Taxes / Tax / TaxDescription / Text | 0..1 | Text description of the tax |
Service / Price / Total | 1 | Container for the Service total |
@CurrencyCode | 0..1 | The ISO currency code for the unit amount |
@AmountAfterTax | 0..1 | The unit amount after tax |
@AmountBeforeTax | 0..1 | The unit amount before tax |
Service / Price /Total / Taxes / Tax | 0..1 | Container for the tax |
@Code | 1 | The type of tax being applied to the total. Refer to the code table OTA Fee Tax Type (FTT) |
@Percentage | 0..1 | Tax percentage |
@Amount | 0..1 | Tax amount |
Service / Price / Total / Taxes / Tax / TaxDescription / Text | 0..1 | Text description of the tax |
Service / Price / RateDescription / Text | 0..1 | A text description of the service/extra |
Service / ServiceDetails / Timespan | 0..1 | Container for the Timespan |
@Start | 0..1 | Start date of service. Format: YYYY-MM-DD |
@End | 0..1 | Last date of service. Format: YYYY-MM-DD |
RoomStay
Element | Number | Description |
---|---|---|
OTA_HotelResNotifRQ / HotelReservations / HotelReservation/ RoomStays / RoomStay | A service can be linked to the RoomStay using the below element/attribute combo | |
ServiceRPHs / ServiceRPH | 0..n | Container for the ServiceRPH |
@RPH | 1 | This links a Service to the Service information provided at the HotelReservation level (if applicable) |
Element | Number | Description |
---|---|---|
OTA_HotelResNotifRQ / HotelReservations / HotelReservation/ RoomStays / RoomStay / RoomRates / RoomRate | A service can be linked to the RatePlan using the below element/attribute combo | |
ServiceRPHs / ServiceRPH | 0..n | Container for the ServiceRPH |
@RPH | 1 | This links a Service to the Service information provided at the HotelReservation level (if applicable) |
Updated
We extended the Reservation API with the ability to provide Company and Travel Agent information. See spec for more details on this functionality.
Company Info
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Profiles / ProfileInfo / Profile | 0..1 | ||
@ProfileType | 1 | String | Always 3 – OTA code for a Corporate |
Profile / CompanyInfo | 1 | ||
CompanyInfo / CompanyName | 1 | The company Name | |
CompanyInfo / TelephoneInfo | 0..1 | ||
@PhoneNumber | 1 | String | PhoneNumber, contains the actual number as a string of max 32 character |
CompanyInfo / Email | 0..1 | Email address | |
CompanyInfo / AddressInfo | 0..1 | Address information | |
AddressInfo / AddressLine | 0..3 | Address lines | |
AddressInfo / CityName | 0..1 | City | |
AddressInfo / PostalCode | 0..1 | Post code | |
AddressInfo / StateProv | 0..1 | State or province name | |
AddressInfo / CountryName | 0..1 | ||
@Code | 1 | String | Country Code (two letter ISO codes) |
Travel Agent Info
Element | Number | Type | Description |
---|---|---|---|
ResGlobalInfo / Profiles / ProfileInfo | 0..1 | ||
ProfileInfo / UniqueID | 0..1 | ||
@ID | 1 | String | Travel Agent identificaiton number e.g. IATA Code |
ProfileInfo / Profile | 1 | ||
@ProfileType | 1 | String | Always 4 – OTA code for a Travel Agent |
Profile / CompanyInfo | 1 | ||
CompanyInfo / CompanyName | 1 | The company Name | |
CompanyInfo / TelephoneInfo | 0..1 | ||
@PhoneNumber | 1 | String | PhoneNumber, contains the actual number as a string of max 32 character |
CompanyInfo / Email | 0..1 | Email address | |
CompanyInfo / AddressInfo | 0..1 | Address information | |
AddressInfo / AddressLine | 0..3 | Address lines | |
AddressInfo / CityName | 0..1 | City | |
AddressInfo / PostalCode | 0..1 | Post code | |
AddressInfo / StateProv | 0..1 | State or province name | |
AddressInfo / CountryName | 0..1 | ||
@Code | 1 | String | Country Code (two letter ISO codes) |
Updated
To better support character limitations to certain attributes in the the OTA Specifications, we've modified our 'Retrieve Rooms' API to include shorter character code within AddtionalDetails / AdditionalDetail / @Code. See spec for more details on this functionality.
Restricting Rates and/or Availability
OTA_HotelAvailRS
Element | Number | Description |
---|---|---|
AdditionalDetails | 0..1 | A collection of AdditionalDetail. Should only be included if there are additionalDetails that are to be included in the rate plan. |
AdditionalDetails / AdditionalDetail | 1..n | Mandatory if AdditionalDetails is used. |
@Code | 1 | One code per AdditionalDetail, the following codes are supported:
|
Creating Reservation Only Room Rates
OTA_HotelAvailRS
Element | Number | Description |
---|---|---|
AdditionalDetails | 0..1 | A collection of AdditionalDetail. Should only be included if there are additionalDetails that are to be included in the rate plan. |
AdditionalDetails / AdditionalDetail | 1..n | Mandatory if AdditionalDetails is used. |
@Code | 1 | One code per AdditionalDetail, the following codes are supported:
|
Updated
OTA_HotelResNotifRQ
These changes are reflected now on the /wiki/spaces/APIDEV/pages/2047747 page.
RoomRate / Rates / Rate / Total is an important value as most PMS will only receive proper room rate values if this value is provided.
HotelReservations / HotelReservation / RoomStays / RoomStay / RoomRates / RoomRate / Rates
Element | Number | Description |
---|---|---|
Rate / Total | 0..1 | The total amount charged for this rate including additional occupant amounts and fees. If left empty and the Base amount is provided then assume the Base amount to be the Total Amount. |
Updated
OTA_HotelResNotifRQ
These changes are reflected now on the /wiki/spaces/APIDEV/pages/2047747 page.
PaymentCard @CardCode is now a mandatory field (if any PaymentCard details are sent) due to an issue found where the reservation will not be accepted by all PMSs if it is not included.
HotelReservations / HotelReservation / ResGlobalInfo / Guarantee / GuaranteesAccepted / GuaranteeAccepted / PaymentCard
Element | Number | Description |
---|---|---|
@CardCode | 1 | The Card code is the 2-letter code indicative of the card. See table below for valid values. |
HotelReservations / HotelReservation / ResGlobalInfo / DepositPayments / GuaranteePayment / AcceptedPayments / AcceptedPayment / PaymentCard
Element | Number | Description |
---|---|---|
@CardCode | 1 | The Card code is the 2-letter code indicative of the card. See table below for valid values. |
Released
OTA_HotelResNotifRQ
These changes are reflected now on the /wiki/spaces/APIDEV/pages/2047747 page.
HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile / Customer
Element | Number | Description |
---|---|---|
Customer / CustLoyalty | 0..n | A list of loyalty/rewards programs for the customer |
@ProgramID | 0..1 | The defined membership program name or ID applicable to program. e.g. Qantas |
@MembershipID | 0..1 | The account identification number for this particular member in this particular program |
@ExpireDate | 0..1 | The expiry date for this particular membership record in this particular program. Format yyyy-MM-dd |
... <Customer> ... <CustLoyalty ProgramID="LoyaltyProgramName" MembershipID="123456789" ExpireDate="2019-12-30"> </Customer> ...
HotelReservations / HotelReservation / ResGuests / ResGuest
Element | Number | Description |
---|---|---|
ResGuest / ArrivalTransport / TransportInfo | 0..n | A list of details regarding transport to destination |
@Type | 0..1 | The type of transport the guest used for travelling to destination as provided by booking channel |
@ID | 0..1 | The transport provider's ID for transportation mode the guest is using. e.g. Flight Number QF123 |
@Time | 0..1 | The transportation arrival time to destination. Format yyyy-MM-ddThh:mm:ss |
ResGuest / DepartureTransport / TransportInfo | 0..n | A list of details regarding transport from destination |
@Type | 0..1 | The type of transport the guest used for travelling from destination as provided by booking channel |
@ID | 0..1 | The transport provider's ID for transportation mode the guest is using. e.g. Flight Number QF123 |
@Time | 0..1 | The transportation departure time from destination. Format yyyy-MM-ddThh:mm:ss |
... <ResGuest> ... <ArrivalTransport> <TransportInfo Time="2014-01-12T14:00:00" Type="Air" ID="BA125"/> </ArrivalTransport> <DepartureTransport> <TransportInfo Time="2014-01-16T17:00:00" Type="Air" ID="BA143"/> </DepartureTransport> </ResGuest> ...
HotelReservations / HotelReservation / RoomStays / RoomStay / RatePlans / RatePlan
Element | Number | Description |
---|---|---|
RatePlan / MealsIncluded | 0..n | Used to identify the types of meals included with a rate plan |
@MealPlanCodes | 0..1 | Meal plan codes outline meal inclusions within rate plan e.g. fullBoard |
... <RatePlan> ... <MealsIncluded MealPlanCodes="Full board"> </RatePlan> ...
Released
OTA_HotelResNotifRQ
These changes are reflected now on the /wiki/spaces/APIDEV/pages/2047747 page.
HotelReservations / HotelReservation / RoomStays / ResGuest / Profiles / ProfileInfo / Profile / Customer
Element | Number | Description |
---|---|---|
Customer / NamePrefix | 0..n | The title of the customer |
... <ResGuests> <ResGuest ResGuestRPH="1" ArrivalTime="14:00:00" PrimaryIndicator="1"> <Profiles> <ProfileInfo> <Profile ProfileType="1"> <Customer> <PersonName> <NamePrefix>Mr</NamePrefix> <GivenName>John</GivenName> <Surname>Smith</Surname> ...
HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile / Customer
Element | Number | Description |
---|---|---|
Customer / NamePrefix | 0..n | The title of the customer |
... <ResGlobalInfo> ... <Profiles> <ProfileInfo> <Profile> <Customer> <PersonName> <NamePrefix>Mr</NamePrefix> <GivenName>John</GivenName> <Surname>Smith</Surname> </PersonName> ...