Reservation

 

The booking channel uses OTA_HotelResNotifRQ message to send reservations to SiteConnect.

SiteConnect responds with OTA_HotelResNotifRS as a receipt of success or failure to process the request.


OTA_HotelResNotifRQ

  • SiteConnect only allows ONE (1) hotel code per reservation. If a partner allows multiple hotels per reservation, ONE (1) reservation per hotel MUST be sent.

  • SiteConnect only allows ONE (1) reservation per request sent.

  • SiteConnect only allows the maximum reservations booking days span - less than seven-hundred and fifty (750) days.

XML Samples

Reservation XML Samples

OTA_HotelResNotifRQ Specification

  • Elements and attributes marked with Number 1 or more will always be sent (Mandatory).

  • Number 0 means that the element or attribute is optional

  • While a second numeric value or 'n' indicates the element or attribute can repeat (where n = no limit)

OTA_HotelResNotifRQ

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

OTA_HotelResNotifRQ

 

1

 

Root element.

 

@EchoToken

1

String

Globally unique identifier for the request, this will be reflected as an EchoToken in the response. See EchoTokens.

 

@ResStatus

1

String

Allowed values are:

Commit
Modify
Cancel

 

@Version

1

Decimal

Always "1.0"

 

@TimeStamp

1

DateTime

Time of the transaction in xml schema dateTime format. See TimeStamp.
Format like yyyy-MM-dd'T'HH:mm:ssZZ (i.e '2022-08-01T09:30:47+02:00')

OTA_HotelResNotifRQ / POS / Source

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

OTA_HotelResNotifRQ / POS

 

1

 

Contain Source details.

OTA_HotelResNotifRQ / POS /
Source

 

1..2

 

Contain BookingChannel details.

OTA_HotelResNotifRQ / POS /
Source / RequestorID

 

1

 

This identifies the system which is sending the reservation.
This element MUST appear in the first Source element.

 

@Type

1

String

Fixed at 22 (ESRP)

 

@ID

1

String

The ID used will be agreed by the trading partners and remain the same throughout the messages.

OTA_HotelResNotifRQ / POS /
Source / BookingChannel

 

1

 

This element is used to pass the booking source for the reservation. A Secondary BookingChannel can be sent if the reservation came to your system from another source. To send secondary booking channel information, an additional Source element needs to be sent.

 

@Primary

0..1

boolean

Primary attribute MUST be set to “true” if only one booking channel is transferred.
Only ONE source should be marked “true” if multiple sources are sent.

BookingChannel / CompanyName

 

1

 

The name of the booking channel.

 

@Code

0..1

String

The code of the booking channel.

OTA_HotelResNotifRQ / HotelReservations / HotelReservation

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

OTA_HotelResNotifRQ /
HotelReservations / HotelReservation

 

1

 

Contain the reservation details.

 

@CreateDateTime

0..1

DateTime

This is the date and time when the reservation was first made.
Mandatory if ResStatus is Commit.
Format like yyyy-MM-dd'T'HH:mm:ssZZ (i.e '2022-08-01T09:30:47+02:00')

 

@LastModifyDateTime

0..1

DateTime

This indicates the last date and time when the reservation was last modified.
Mandatory if ResStatus is Modify or Cancel.
Format like yyyy-MM-dd'T'HH:mm:ssZZ (i.e '2022-08-01T09:30:47+02:00')

HotelReservation / UniqueID

 

1

 

The unique identifier of the reservation in the system which sent the message.

Note: Reservation IDs (UniqueID ID) MUST be unique among all properties connected at all time. If a reservation is received with an ID already used, it will be ignored regardless if it arrives for a different hotel.

 

@Type

1

Integer

Always 14 - Reservation.

 

@ID

1

String

ID is the actual confirmation number.

HotelReservation / RoomStays / RoomStay

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

HotelReservation / RoomStays / RoomStay

 

1..n

 

One instance of RoomStay per Room type booked.

 

@PromotionCode

0..1

String

If configured, this is the promotion code indicating, for instance, a specific marketing campaign – not the rate code.

RoomTypes

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / RoomTypes / RoomType

 

0..1

 

Can be sent to give more information of the room type for this room stay.

 

@RoomTypeCode

1

String

The code of the room booked.

RoomType / RoomDescription

 

1

String

Description of the room.

 

@Name

1

String

Room name.

RatePlans

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / RatePlans

 

0..1

 

Can be sent to give more information of the rate plan for this room stay.

RatePlans / RatePlan

 

1

 

 

 

@RatePlanCode

1

String

The code of the rate booked.

RatePlan / RatePlanDescription

 

1

String

Description of the rate plan.

RatePlan / Commission

 

0..1

 

Commission amount associated with the rate plan.

Commission / CommissionPayableAmount

 

1

 

The amount of commission to be paid.

 

@Amount

1

Decimal

Amount keep 2 decimal places.

 

@CurrencyCode

1

String

ISO currency code.

RatePlan / MealsIncluded

 

0..n

 

Used to identify the types of meals included with a rate plan.

 

@MealPlanCodes 

0..1

String

Used to identify the types of meals included with a rate plan. Refer to OTA Code List Meal Plan Type (MPT).

RoomRates

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / RoomRates / RoomRate

 

1

 

One RoomRate per RoomStay. Multiple rates are listed under the RoomRate.

 

@RoomTypeCode

1

String

The code of the room booked.

 

@NumberOfUnits

1

Integer

Only "1" is allowed.
If there are multiple RoomStays for the same RoomTypeCode and RatePlanCode, multiple RoomStay elements should be sent.

 

@RatePlanCode

0..1

String

This is the rate booked for the room type code listed in the RoomTypeCode attribute.
MUST be included if RoomStay / RatePlans is present.

RoomRate / Rates / Rate

 

0..n



Rate will contain a timespan for which a rate will apply for a room type. Multiple instances of Rate will be sent if rate changes apply for the room type over the span of the booking.

As an example, if the rate is $100 for the first three nights of a reservation you should reflect this by bundling into one instance of Rate and indicating the time span the Base / Total (in this case a Base of $300) applies to. If however, the rate is $156 for the first night, $167 for the second night and $199 for the third night, then you should include each day in a separate instance of Rate.

The dates covered in RoomRate/Rates will cover all the dates in the RoomStay/TimeSpan element.

See Daily Rates XML Samples for more context.

 

@RateTimeUnit

1

String

Only "Day" is allowed.

 

@EffectiveDate

1

Date

The starting date of the rate in the form yyyy-MM-dd. This date is inclusive.

 

@ExpireDate

1

Date

ExpireDate is the first day after the applicable period (e.g. when expire date is 2012-04-03 the last date of the period is 2012-04-02). Format yyyy-MM-dd.

 

@UnitMultiplier

1

Integer

Only "1" is allowed.

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. Only dot (.) is accepted as a decimal delimiter.

 

@AmountBeforeTax

0..1

Decimal

The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

Base / Taxes

 

0..1

 

 

Taxes / Tax

 

0..n

 

 

 

@Type

0..1

 

The Type attribute is an enumeration to indicate whether the tax is “inclusive”, “exclusive”, or “cumulative”.

 

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

 

@Amount

0..1

 

Amount of the specific tax/fee transferred.

 

@CurrencyCode

0..1

 

Currency for the Amount of the specific tax/fee transferred.

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. Only dot (.) is accepted as a decimal delimiter.

 

@AmountBeforeTax

0..1

Decimal

The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

Total / Taxes

 

0..1

 

 

Taxes / Tax

 

0..n

 

 

 

@Type

0..1

 

The Type attribute is an enumeration to indicate whether the tax is “inclusive”, “exclusive”, or “cumulative”.

 

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

 

@Amount

0..1

 

Amount of the specific tax/fee transferred.

 

@CurrencyCode

0..1

 

Currency for the Amount of the specific tax/fee transferred.

RoomRate / ServiceRPHs / ServiceRPH

 

0..n

 

Container for the ServiceRPH.

 

@RPH

1

Integer

This links a Service to the Service information provided at the HotelReservation level (if applicable)

GuestCounts

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / GuestCounts

 

1

 

How many guests will be staying in the room. The count is split over potentially three GuestCount elements under GuestCounts, one for each type of guest: adult, child or infant. 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:

10 = Adult
8 = Child
7 = Infant

 

@Count

1

Integer

The actual count for this type of guest.

 

@Age

0..1

Integer

 

TimeSpan

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / TimeSpan

 

1

 

Contains the timespan which this RoomStay covers.

 

@Start

1

Date

Check in date, Format yyyy-MM-dd

 

@End

1

Date

Check out date, Format yyyy-MM-dd, End date must after the Start date.

SiteConnect doesn’t support day use reservation.

Total

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / Total

 

1

 

The total amount charged for the room including any extra fees and/or charges that applies to the room.

 

@AmountAfterTax

0..1

Decimal

The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

 

@AmountBeforeTax

0..1

Decimal

The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

 

@CurrencyCode

1

String

CurrencyCode uses ISO 4217 codes to indicate the currency of the rate that is being booked.

Total / Taxes

 

0..1

 

Optional. Can be used for Total Pricing.

Taxes / Tax

 

0..n

 

 

 

@Type

0..1

 

The Type attribute is an enumeration to indicate whether the tax is “inclusive”, “exclusive”, or “cumulative”.

 

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

 

@Amount

0..1

 

Amount of the specific tax/fee transferred.

 

@CurrencyCode

0..1

 

Currency for the Amount of the specific tax/fee transferred.

BasicPropertyInfo

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / BasicPropertyInfo

 

1

 

Holds information about the Hotelier which this reservation is for.

 

@HotelCode

1

String

The code for the Hotel for which the booking was made.

 

@HotelName

0..1

String

The name of the Hotel for which the booking was made.

ServiceRPH

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / ServiceRPHs / ServiceRPH

 

0..n

 

A service can be linked to the RoomStay using the @RPH element/attribute:

 

@RPH

1

Integer

This links a Service to the Service information provided at the HotelReservation level (if applicable).

ResGuestRPH

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / ResGuestRPHs / ResGuestRPH

 

0..n

 

Used to link guests from the ResGuests list to the RoomStay. Should not be used if not all guests can be linked to RoomStays or not all RoomStays can be linked to guests.

 

@RPH

1

Integer

This links to the ResGuest / @ResGuestRPH to link the guest to the RoomStay

Comment

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / Comments / Comment

 

0..1

 

Per RoomStay, there may be one comment.

Comment / Text

 

1

 

The comment (PCI sensitive data is prohibited)

SpecialRequest

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

RoomStay / SpecialRequests / SpecialRequest /

 

0..n

 

 

 

@Name

1

String

Special request type i.e:

bedding configuration
smoking
cot
extra bed

SpecialRequest / Text

 

0..1

String

Special request text.

HotelReservation / Services / Service 

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

HotelReservation / Services / Service

 

0..n

 

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: EXTRA_PERSON, EXTRA_BED, SURCHARGE, MEAL, SERVICE, TOUR, EVENT, EXTRA, OTHER

Service and Extra Charge Reference Table

 

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

 

0..1

 

The amount per unit for this extra charge as provided by the hotel.

 

@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

Date

Start date of service. Format: YYYY-MM-DD

 

@End

0..1

Date

Last date of service. Format: YYYY-MM-DD

HotelReservation / ResGuests / ResGuest

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

HotelReservation / ResGuests

 

1

 

 

HotelReservation / ResGuests / ResGuest

 

1..n

 

Contains the guests for the reservation.
If all guests are linked to a room stays then the ResGuestRPH should be used to link a ResGuest to a RoomStay.

 

@ResGuestRPH

0..1

Integer

This value links the ResGuest to RoomStay(s) where possible. You can find the links in RoomStay/ResGuestRPHs.

 

@PrimaryIndicator

0..1

Boolean

This indicates the primary guest on a reservation.

 

@ArrivalTime

0..1

Time

The arrival time of the guest in the form HH:mm:ss

Profiles

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGuest / Profiles / ProfileInfo

 

1

 

 

ProfileInfo / Profile

 

1

 

Contains the guest profile information.

 

@ProfileType

1

Integer

Always "1" - The OTA code for "Customer"

Profile / Customer

 

1

 

 

Customer / PersonName / NamePrefix

 

0..n

 

The title of the customer

Customer / PersonName / GivenName

 

1

 

The name of the customer

Customer / PersonName / Surname

 

1

 

The last name of the customer

Customer / Telephone

 

0..1

 

Contact telephone number for the customer if available

 

@PhoneNumber

1

 

PhoneNumber contains the actual number as a string of max 32 characters and it is Mandatory.

Customer / Email

 

0..1

 

The email address of the customer if available

Customer / Address

 

0..1

 

Address information for the customer if available

Address / AddressLine

 

0..2

 

One or more address lines for the customer

Address / CityName

 

0..1

 

Customer city of residence if available

Address / PostalCode

 

0..1

 

Post code for customer if available

Address / StateProv

 

0..1

 

State or province name

Address / CountryName

 

0..1

StringLength0to64

Country name. Country Code must be sent as a string.

Customer / CustLoyalty

 

0..n

 

A list of loyalty/rewards programs for the guest

 

@ProgramID 

1

String

The defined membership program name or ID applicable to program. e.g. Qantas

 

@MembershipID 

1

String

The account identification number for this particular member in this particular program

 

@ExpireDate

0..1

Date

The expiry date for this particular membership record in this particular program. Format yyyy-MM-dd

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. (ISO3166 Country Code, e.g AU)

 

@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. (ISO3166 Country Code, e.g AU)

 

@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. (ISO3166 Country Code, e.g AU)

 

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

ArrivalTransport

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGuest / ArrivalTransport / TransportInfo

 

0..n

 

A list of details regarding transport to destination

 

@Type

0..1

String

The type of transport the guest used for travelling to destination as provided by booking channel

 

@ID

0..1

String

The transport provider's ID for transportation mode the guest is using. e.g. Flight Number QF123

 

@Time 

0..1

DateTime

The transportation arrival time to destination. Format yyyy-MM-ddThh:mm:ss

DepartureTransport

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGuest / DepartureTransport / TransportInfo

 

0..n

 

A list of details regarding transport from destination 

 

@Type

0..1

String

The type of transport the guest used for travelling from destination as provided by booking channel

 

@ID

0..1

String

The transport provider's ID for transportation mode the guest is using. e.g. Flight Number QF123

 

@Time 

0..1

DateTime

The transportation departure time from destination. Format yyyy-MM-ddThh:mm:ss

HotelReservation / ResGlobalInfo

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

HotelReservation / ResGlobalInfo

 

1

 

Contains general information about the Reservation

ResGlobalInfo / HotelReservationIDs /
HotelReservationID

 

0..1

 

Reference number/string or PNR as supplied by the booking agent will be supplied here.

 

@ResID_Type

1

 

Always 14 – OTA code for Travel Agent PNR.

 

@ResID_Value

1

String 1to64

Reference number/string supplied by the booking agent.

Comments

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGlobalInfo / Comments

 

0..1

 

 

Comments / Comment

 

1..n

 

 

Text

 

1

String

Comment text (PCI sensitive data is prohibited)

Total

Element

Attribute

Number

Type

Description

Element

Attribute

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. e.g. AUD, USD

 

@AmountAfterTax

0..1

 

The total amount after tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

 

@AmountBeforeTax

0..1

 

The total amount before tax. At least one of AmountAfterTax or AmountBeforeTax must be set. Only dot (.) is accepted as a decimal delimiter.

Total / Taxes

 

0..1

 

Optional. Can be used for Total Pricing.

Taxes / Tax

 

0..n

 

 

 

@Type

0..1

 

The Type attribute is an enumeration to indicate whether the tax is “inclusive”, “exclusive”, or “cumulative”.

 

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

 

@Amount

0..1

 

Amount of the specific tax/fee transferred.

 

@CurrencyCode

0..1

 

Currency for the Amount of the specific tax/fee transferred.

 

Guarantee

Element

Attribute

Number

Type

Description

Element

Attribute

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 total amount which can be charged to the card. If the reservation is modified or cancelled then an updated balance should be sent indicating the new total amount that can be charged to the card. If the total amount changes to 0 as a result of cancellation, the cancellation should be sent with “0” balance. If this attribute is not included, it does not mean a 0 balance.
When processing VCC payments users are instructed to charge the total amount to the card in one transaction on the activation date. Do not send a reservation modification when the balance of the VCC changes as a result of funds being deducted from the card.

 

@VCCCurrencyCode

0..1

String

The ISO currency code of the VCCCurrentBalance. Must be included if there is @VCCCurrentBalance.

DepositPayments

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

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 total amount which can be charged to the card. If the reservation is modified or cancelled then an updated balance should be sent indicating the new total amount that can be charged to the card. If the total amount changes to 0 as a result of cancellation, the cancellation should be sent with “0” balance. If this attribute is not included, it does not mean a 0 balance.
When processing VCC payments users are instructed to charge the total amount to the card in one transaction on the activation date. Do not send a reservation modification when the balance of the VCC changes as a result of funds being deducted from the card.

 

@VCCCurrencyCode

0..1

String

The ISO currency code of the VCCCurrentBalance. Must be included if there is @VCCCurrentBalance. e.g. AUD,USD

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

 

ResGlobalInfo / Profiles

Customer

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGlobalInfo / Profiles

 

1

 

 

ResGlobalInfo / Profiles / ProfileInfo

 

1

 

 

ResGlobalInfo / Profiles / ProfileInfo / Profile

 

1

 

 

 

@ProfileType

1

String

Always 1 - OTA code for Customer

Profile / Customer

 

1

 

Reservation customer details. Makes it possible to supply customer details if the customer is not a staying guest.

Customer / PersonName / NamePrefix

 

0..n

 

The title of the customer

Customer / PersonName / GivenName

 

1

 

The name of the customer

Customer / PersonName / Surname

 

1

 

The last name of the customer

Customer / Telephone

 

0..1

 

Contact telephone number for the customer if available

 

@PhoneNumber

1

 

PhoneNumber contains the actual number as a string of max 32 characters and it is Mandatory.

Customer / Email

 

0..1

 

The email address of the customer if available

Customer / Address

 

0..1

 

Address information for the customer if available

Address / AddressLine

 

0..n

 

One or more address lines for the customer

Address / CityName

 

0..1

 

Customer city of residence if available

Address / PostalCode

 

0..1

 

Post code for customer if available

Address / StateProv

 

0..1

 

State or province name

Address / CountryName

 

0..1

StringLength0to64

Country name. Country Code must be sent as a string.

CompanyInfo (Corporate)

Element

Attribute

Number

Type

Description

Element

Attribute

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

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

StringLength0to64

Country name. Country Code must be sent as a string.

CompanyInfo (Travel Agent)

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

ResGlobalInfo / Profiles / ProfileInfo

 

0..1

 

 

ProfileInfo / UniqueID

 

0..1

 

 

 

@ID

1

String

Travel Agent identification 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

StringLength0to64

Country name. Country Code must be sent as a string.

SiteConnect Reservation Email Notification

SiteConnect has the ability (optional) to communicate reservation notification emails to SiteMinder hotels (based on some of the key data sent in the OTA_HotelResNotifRQ). If you are not able to send reservation email notifications to hotels please advise the Integration Analyst supporting you through the development to SiteConnect. This feature is not automatically part of the SiteConnect functionality, so you will need to request to have it activated.

SiteConnect Reservation Email Template

OTA_HotelResNotifRS

OTA_HotelResNotifRS will be returned in response to the OTA_HotelResNotifRQ request indicating if the reservation was processed successfully or not.

It's important to note that SiteConnect does not act as an authority on allowing or denying a reservation to take place.

The OTA_HotelResNotifRS SiteConnect responds with 'Success' or 'Error' to simply indicate whether SiteConnect is able to receive the reservation delivery message/notification request or not.

Success Response

<OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0" TimeStamp="2022-04-28T20:46:53+10:00" EchoToken="9a40291f-24fa-410d-b1c2-b64efab47da4"> <Success/> <HotelReservations> <HotelReservation> <UniqueID Type="14" ID="3741"/> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Type="14" ResID_Value="YourResConfirmationCode3741"/> </HotelReservationIDs> </ResGlobalInfo> </HotelReservation> </HotelReservations> </OTA_HotelResNotifRS>

Failure Response

<OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="9a40291f-24fa-410d-b1c2-b64efab47da4" TimeStamp="2022-04-28T20:46:53+10:00" Version="1.0"> <Errors> <Error Type="6">Hotel not found for HotelCode=XXXXXX</Error> </Errors> </OTA_HotelResNotifRS>

OTA_HotelResNotifRS Specification

Element

Attribute

Number

Type

Description

Element

Attribute

Number

Type

Description

OTA_HotelResNotifRS

 

1

 

Root element.

 

@EchoToken

1

String

Return the EchoToken from the request message. See EchoTokens.

 

@Version

1

Decimal

Always "1.0"

 

@TimeStamp

1

DateTime

Time of the transaction in xml schema dateTime format. See TimeStamp.
Format like yyyy-MM-dd'T'HH:mm:ssZZ (i.e '2022-08-01T09:30:47+02:00')

OTA_HotelResNotifRS / Success

 

0..1

 

Should only be present if the request processed successfully. The Errors node should not be present if the Success node is present.

OTA_HotelResNotifRS / HotelReservations / HotelReservation / UniqueID

 

0..1

 

The unique identifier of the reservation in the system which sent the message.

 

@Type

1

 

Always 14 - Reservation.

 

@ID

1

 

Reference number/string supplied by the booking agent.

OTA_HotelResNotifRS / HotelReservations / HotelReservation / ResGlobalInfo / HotelReservationIDs HotelReservationID

 

 

 

 

 

@ResID_Type

1

 

Always 14 - OTA code for Travel Agent PNR.

 

@ResID_Value

1

 

The identifier of the reservation created by SiteConnect.

OTA_HotelResNotifRS / 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 Error Warning Types (EWT) table can be used. In particular, the following types are recommended:

1: Unknown
4: Authentication (If username and password are not authenticated)
6: Authorisation (If authenticated username is not authorised to alter hotel data)
12: Processing exception

 

@Code

0..1

String

Any code from the OTA Error Codes (ERR) table can be used.

The following codes are important as they will inform the booking channel of hotel mapping error:

392: Invalid hotel code
448: System Error