==== TEAM AMERICA XML OTA 1.0 ====
Dear valuable partner, Welcome to the Teamamerica Hotels XML Interface Guide.We hope you will have a smooth and successful integration to our system.
If you have any question or need any assistance, please contact:
dhaka@teamamericany.com , webservices@teamamericany.com
Development OTA WSDL [[http://javatest.teamamericany.com:8080/OTAXML2011/ws/TaWsDocLitService?wsdl]]
Production OTA WSDL [[http://otaxml11.teamamericany.com:8080/TaWebService/ws/TaWsDocLitService?wsdl]]
======✔ OTA_HotelAvailRQ======
**Description : **
This section describes the usage profiles of availability messages. The intent of these messages is to provide a mechanism for OTA to check the real time availability of inventory held in another system.
**Availability request:**
The availability request makes use of the OTA_HotelAvailRQ message. The usage is very similar to the one defined in HTNG, with this two additions:
* Support for “on request” has been detailed, as several systems in OTA may use this functionality.
* There are systems in OTA that may transmit information about the number of children.
{{:avail_rq_rs.png|}}
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelAvailRQ |OnRequestInd |boolean |1 |N |When true, the response should include rooms with an availability status of on request. When false, the response should not include rooms with an availability status of on request |
|OTA_HotelAvailRQ |RequestedCurrency |String |0..1 |N |USD;ISO code of the currency |
|OTA_HotelAvailRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelAvailRQ |Version |int |1 |Y |1.0 |
|OTA_HotelAvailRQ |TransactionIdentifier |String |0..1 |N |ID Reservation. Optional |
|OTA_HotelAvailRQ |PrimaryLangID |String |0..1 |N |EN;ISO code of the language |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|AvailRequestSegment |AvailReqType |String |0..1 |N |"Room" |
|HotelRef |HotelCode |int |1..* |Y |ex. 131, 3360, 2649 |
|StayDateRange|Start |String |1 |Y |Arrival date;YYYY-MM-DD |
|StayDateRange|End |String |1 |Y |Departure date;YYYY-MM-DD |
|RatePlanCandidate|RatePlanType |int |0..1 |N |25 - Net; Default value for VECI |
|RatePlanCandidate|RatePlanCode |String |0..1 |N |Product Code, ex. NYCHPCEPR,.. |
|RatePlanCandidate|RatePlanID |String |0..1 |N |Product Code, ex. NYCHPCEPR,.. |
|RatePlanCandidate|PromotionCode |String |0..1 |N |Promotion code is the identifier used by the host to link directly with a specific named advertising campaign |
|RoomStayCandidate |RoomTypeCode |int |0..1 |N |Specific system room type code. |
|RoomStayCandidate |Quantity |int |0..1 |N |1. Defines the number of the item in question |
|GuestCounts |IsPerRoom |boolean |0..1 |N |IsPerRoom means that the guests defined in the GuestCounts object apply to each room in the NumberOfRooms for the RoomStay. |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count|
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |0..1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
**OTA_HotelAvailRS --Availability response**
The availability response makes use of the OTA_HotelAvailRS message. The usage defined in HTNG is extended:
* In case the “on request” indicator was set in the request, it is necessary to identify that RQ rooms.
* Promotional codes must be included in the response.
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelAvailRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelAvailRQ |Version |int |1 |N |1.0 |
|OTA_HotelAvailRQ |TransactionIdentifier |String |1 |N |ID Reservation. Optional |
|OTA_HotelAvailRQ |PrimaryLangID |String |1 |N |EN;ISO code of the language |
|Success |Success | |1 |Y |Indicates that the request successfully processed. Mandatory if no Errors are sent. |
|RoomType |RoomType | |1 |Y | |
|RoomType |RoomTypeCode |int |1 |N |Specific system room type code. |
|RoomType |Quantity |int |1 |Y |Defines the number of rooms available |
|RoomDescription |Name |String |1 |Y |Name associated with this room description. |
|RatePlan |RatePlanCode |String |1 |Y |Product Code, ex. NYCHPCEPR,.. |
|RatePlan |RatePlanType |int |1 |Y |25 - Net; Default value for OTA |
|RatePlan |PriceViewableInd |boolean |0..1 |N |Determines if the price can be shown to the customer or not. Default is “true”. |
|Guarantee|Guarantee | |0..1 |N | |
|CancelPenalties |CancelPolicyIndicator |boolean |1 |N |When “True” indicates a cancellation policy exists. Typically sent if no cancel details are sent. |
|CancelPenalty | | |0..n |N | |
|CancelPenalty |Start |String |1 |Y |Indicates the starting date. |
|CancelPenalty |End |String |1 |Y |Indicates the ending date. |
|Deadline | | |1 |Y |If the rate is non-refundable this element is optional. |
|Deadline |AbsoluteDeadline |String |1 |Y |This is used to indicate the “exact date” or “exact date and time” by which a reservation made for the rate passed needs to be cancelled in order to avoid penalties.|
|Deadline |OffsetTimeUnit |String |1 |Y |The units of time, e.g.: days, hours, etc., that apply to the deadline. |
|AmountPercent |Percent/Amount/Night |int |1 |Y |Either a number of nights, amount or percentage must be specified |
|RatePlanDescription | | |0..1 |N | |
|RatePlanDescription |Name |String |1 |Y |Name associated with this rate description. |
|Commission | | |0..1 |N | |
|Commission |Percent |int |1 |Y |The percent applied to the commissionable amount to determine the commissionable payment amount. |
|RoomRate | | |1 |Y |One instance of RoomRate per room/rate booked. If multiple room types can be booked, then the element “RoomRate” must be repeated for each room type booked in the reservation. If more than one Rate plan can be booked in one reservation the entire RoomRate element must be repeated for each Room / rate combination |
|RoomRate |RoomTypeCode |int |1 |Y |Identifies the system specific room code associated with this room rate. |
|RoomRate |RatePlanCode |String |1 |Y |Product Code, ex. NYCHPCEPR,.. |
|RoomRate |PromotionCode |String |0..1 |N |The identifier used by the host to link directly with a specific named advertising campaign |
|Room |EffectiveDate |String |1 |Y |Indicates the starting date |
|Room |ExpireDate |String |1 |Y |Indicates the ending date |
|Room |ExpireDateExclusiveIndicator |String |1 |Y |When true, indicates that the ExpireDate is the first day after the applicable period (e.g. when expire date is Oct 15, the last date of the period is Oct 14). |
|MealsIncluded |MealPlanCodes |String |1 |Y |OTA code (MPT): 1 -All inclusive, 3 -B&B, ... |
|Base |AmountAfterTax |long |1 |Y |The base amount charged for the accommodation or service per unit of time |
|Base |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the Total. |
|Tax |Percent |long |1 |Y |Must send either Percent or Amount |
|Tax |Amount |long |1 |Y |Must send either Percent or Amount |
|TaxDescription |Name |String |1 |N |Name associated with this tax description. |
|Text |Language |String |1 |Y |Identifies the language of the description. |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count|
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
|Total |AmountAfterTax |long |1 |N | |
|BasicPropertyInfo |HotelCode |int |1 |Y |ex. 131, 3360, 2649 |
|Error | | |0..n |N |Mandatory only if Success element has not been sent. |
|Error |Type |int |1 |Y |Mandatory in OTA. Refers to OpenTravel Alliance EWT list (error warning type). |
|Error |Code |int |0..1 |N |Refers to OpenTravel Alliance list ERR. Should be used wherever possible. |
======✔ OTA_HotelResRQ - Initiate======
**Description : **
This section covers the use cases in which OTA sends a request to an external system which holds the inventory, and the operations may be to book, modify and/or cancel reservations. The message type is the same for all of these operations (OTA_HotelResRQ) but the intention is informed in the @ResStatus attribute. The basic information for Commit/Ignore are POS and HotelReservationID.
{{ :hotelres_rq_rs_initiate_pending_commitbook_committed.png |}}
{{ :hotelres_rq_rs_initiate_pending_ignorebook_ignored.png |}}
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |Indicates the status of the reservation represented by the message. This is an enumeration with possible values of Initiate, Ignore, Modify, Commit |
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservation |ResStatus |String |0..1 |N |"Book", default value |
|HotelReservation |CreateDateTime |String |1 |Y |This is the date when the reservation was first made. |
|HotelReservation |CreatorID |String |1 |Y |The CreatorID is the identifier of the user. |
|HotelReservation |LastModifyDateTime |String |0..1 |N | |
|HotelReservation |LastModifierID |String |0..1 |N | |
|UniqueID |Type |int |1 |Y |Type is assigned codes from the UIT (Unique Id Type) code list. 40–Confirmation number. |
|UniqueID |ID |int |1 |Y |ID is the actual confirmation number |
|RoomRate |RoomTypeCode |int |1 |Y |Specific system room type code. |
|RoomRate |NumberOfUnits |String |0..1 |Y |This is the number of rooms booked for the room type code listed in the RoomTypeCode attribute |
|RoomRate |RatePlanCode |String |1 |Y |Product Code; ex. NYCHPCEPR,.. |
|Rate | | |1..n |Y |At least one instance of Rate per Rate plan. Multiple instances of the Rate element must be sent if rate changes apply to the booking. |
|Rate |RateTimeUnit |String |0..1 |N |Rate Time unit is an Enumeration of time units upon which the rate amount is based (e.g., daily, weekly, single rate for full stay). |
|Rate |UnitMultiplier |int |0..1 |N |UnitMultiplier is the number of RateTimeUnits that the rate amount is based upon (e.g., rate for one day in case of nightly rates). |
|Rate |EffectiveDate |String |1 |Y |The Effective date attribute indicates the starting date of when a specific rate value is applied. |
|Rate |ExpireDate |String |1 |Y |The Expire date indicates the day when the specific value of the rate is changed to another value. |
|Base |AmountAfterTax |long |1 |Y |The base amount charged for the accommodation or service per unit of time |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count |
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
|TimeSpan |Start |String |1 |Y |Check in date |
|TimeSpan |End |String |1 |Y |Check out date |
|Guarantee |GuaranteeType |String |0..1 |N | This is the attribute that indicates what guarantee is provided with the reservation. The enumerated values can be: GuaranteeRequired, None, CC / DC / Voucher, Profile, Deposit, PrePay |
|BasicPropertyInfo |HotelCode |int |1 |Y |ex. 131, 3360, 2649. |
|ResGuestRPH |RPH |int |1 |Y |This is used to link the various profiles to the reservation. ex. 1,2,... |
|Comment |Text |String |0..1 |N | Comments |
|Membership |ProgramCode |int |0..1 |N |The loyalty programme to which the account ID belongs to |
|Membership |AccountID |String |0..1 |N |The account that needs to be credited with points for the stay booked |
|ResGuest |ResGuestRPH |int |1 |Y |For simple reservations: If profiles for guest, travel agency and company are available, they would all be linked to a sigle ResGuestRPH. A comment has been entered with OpenTravel Alliance for phase 2 to accomodate more complex scenarios. Values can be 1,2,... |
|Profile |ProfileType |int |1 |Y |This is used to pass the profile info for the guest, the Company and the Travel agency. For the individual guest the code used in ProfileType is the OpenTravel Alliance PRT code 1-[Customer], For a company it is PRT Code –3 [Corporation]. For a travel agency it is PRT code 4 –[Travel agent] |
|NamePrefix |value |String |0..1 |N | |
|GivenName |value |String |0..1 |N |Optional. This field would be used to pass the guest’s name First name |
|MiddleName |value |String |0..1 |N |Optional. his field would be used to pass the guest’s name Middle name |
|Surname |value |String |1 |Y |Mendatory, This field would be used to pass the guest’s name Surname |
|Telephone |PhoneLocationType |int |0..1 |N |The PhoneLocationType attribute refers to the OpenTravel Alliance PLT code list and indicates where the phone number is based –the values to be used by HTNG are: 6 –Home, 7 –Office, 8 –Other (e.g. cell phone). |
|Telephone |PhoneTechType |int |0..1 |N |The PhoneTechType attribute refers to the OpenTravel Alliance PTT code list and indicates which type of number is transmitted (phone vs fax). The codes to be used by HTNG are code 1 –Voice, code 3 –Fax, code 5 -Mobile |
|Telephone |PhoneNumber |String |1 |Y |PhoneNumber contains the actual number as a string of max 32 characters and it is MANDATORY |
|Email |value |String |0..5 |N |This field would be used to pass the guest’s email address |
|AddressLine |value |String |0..5 |N |This field would be used to pass the guest’s mail address |
|CityName |value |String |0..1 |N |This field would be used to pass the guest’s city |
|PostalCode |value |String |0..1 |N |This field would be used to pass the guest’s Postal / ZIP code |
|CountryName |value |String |0..1 |N |This field would be used to pass the guest’s Country |
** Request XML**
EXAMPLEADULTEXAMPLECHILD
**OTA_HotelResRS - Pending State --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Initiate.Pending;Commit.Committed;Ignore.Ignored |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservation |CreateDateTime |String |1 |Y |This is the date when the reservation was first made. |
|HotelReservation |CreatorID |String |1 |Y |The CreatorID is the identifier of the user. |
|UniqueID |Type |int |1 |Y |Type is assigned codes from the UIT (Unique Id Type) code list. 40–Confirmation number. |
|UniqueID |ID |int |1 |Y |ID is the actual confirmation number |
|RatePlan |RatePlanCode |String |1 |Y |Product Code, ex. NYCHPCEPR,.. |
|CancelPenalties |CancelPolicyIndicator |boolean |1 |N |When “True” indicates a cancellation policy exists. Typically sent if no cancel details are sent. |
|CancelPenalty | | |0..n |N | |
|CancelPenalty |Start |String |1 |Y |Indicates the starting date. |
|CancelPenalty |End |String |1 |Y |Indicates the ending date. |
|Deadline | | |1 |Y |If the rate is non-refundable this element is optional. |
|Deadline |AbsoluteDeadline |String |1 |Y |This is used to indicate the “exact date” or “exact date and time” by which a reservation made for the rate passed needs to be cancelled in order to avoid penalties.|
|Deadline |OffsetTimeUnit |String |1 |Y |The units of time, e.g.: days, hours, etc., that apply to the deadline. |
|AmountPercent |Percent/Amount/Night |int |1 |Y |Either a number of nights, amount or percentage must be specified |
|RatePlanDescription | | |0..1 |N | |
|RatePlanDescription |Name |String |1 |Y |Name associated with this rate description. |
|Commission | | |0..1 |N | |
|Commission |Percent |int |1 |Y |The percent applied to the commissionable amount to determine the commissionable payment amount. |
|RoomRate | | |1..n |Y | |
|RoomRate |RoomTypeCode |int |1 |Y |This is the room type code booked in the reservation |
|RoomRate |NumberOfUnits |String |1 |Y |This is the number of rooms booked for the room type code listed in the RoomTypeCode attribute |
|RoomRate |RatePlanCode |String |1 |Y |Product Code; ex. NYCHPCEPR,.. |
|Rate | | |1..n |Y |At least one instance of Rate per Rate plan. Multiple instances of the Rate element must be sent if rate changes apply to the booking. |
|Rate |RateTimeUnit |String |0..1 |N |Rate Time unit is an Enumeration of time units upon which the rate amount is based (e.g., daily, weekly, single rate for full stay). |
|Rate |UnitMultiplier |int |0..1 |N |UnitMultiplier is the number of RateTimeUnits that the rate amount is based upon (e.g., rate for one day in case of nightly rates). |
|Rate |EffectiveDate |String |1 |Y |The Effective date attribute indicates the starting date of when a specific rate value is applied. |
|Rate |ExpireDate |String |1 |Y |The Expire date indicates the day when the specific value of the rate is changed to another value. |
|MealsIncluded |MealPlanCodes |String |1 |Y |OTA code (MPT): 1 -All inclusive, 3 -B&B, ... |
|Base |AmountAfterTax |long |1 |Y |The base amount charged for the accommodation or service per unit of time |
|Base |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the Total. |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count|
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
|TimeSpan |Start |String |1 |Y |Check in date |
|TimeSpan |End |String |1 |Y |Check out date |
|Total |AmountAfterTax |long |1 |Y |AmountAfterTax is Mandatory for each @NumberOfGuests. |
|Total |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the total rate |
|Tax |Percent |long |1 |Y |Must send either Percent or Amount |
|Tax |Amount |long |1 |Y |Must send either Percent or Amount |
|TaxDescription |Name |String |1 |N |Name associated with this tax description. |
|Text |Language |String |1 |Y |Identifies the language of the description. |
|BasicPropertyInfo |HotelCode |int |1 |Y |ex. 131, 3360, 2649 |
|ResGuestRPH |RPH |int |1 |Y |This is used to link the various profiles to the reservation. ex. 1,2,… |
|ResGuest |ResGuestRPH |int |1 |Y |For simple reservations: If profiles for guest, travel agency and company are available, they would all be linked to a sigle ResGuestRPH. A comment has been entered with OpenTravel Alliance for phase 2 to accomodate more complex scenarios |
|Profile |ProfileType |int |1 |Y |This is used to pass the profile info for the guest, the Company and the Travel agency. For the individual guest the code used in ProfileType is the OpenTravel Alliance PRT code 1-[Customer], For a company it is PRT Code –3 [Corporation]. For a travel agency it is PRT code 4 –[Travel agent] |
|NamePrefix |value |String |0..1 |N | |
|GivenName |value |String |0..1 |N |Optional. This field would be used to pass the guest’s name First name |
|MiddleName |value |String |0..1 |N |Optional. his field would be used to pass the guest’s name Middle name |
|Surname |value |String |1 |Y |Mendatory, This field would be used to pass the guest’s name Surname |
|Telephone |PhoneLocationType |int |0..1 |N |The PhoneLocationType attribute refers to the OpenTravel Alliance PLT code list and indicates where the phone number is based –the values to be used by HTNG are: 6 –Home, 7 –Office, 8 –Other (e.g. cell phone). |
|Telephone |PhoneTechType |int |0..1 |N |The PhoneTechType attribute refers to the OpenTravel Alliance PTT code list and indicates which type of number is transmitted (phone vs fax). The codes to be used by HTNG are code 1 –Voice, code 3 –Fax, code 5 -Mobile |
|Telephone |PhoneNumber |String |1 |Y |PhoneNumber contains the actual number as a string of max 32 characters and it is MANDATORY |
|Email |value |String |0..5 |N |This field would be used to pass the guest’s email address |
|AddressLine |value |String |0..5 |N |This field would be used to pass the guest’s mail address |
|CityName |value |String |0..1 |N |This field would be used to pass the guest’s city |
|PostalCode |value |String |0..1 |N |This field would be used to pass the guest’s Postal / ZIP code |
|CountryName |value |String |0..1 |N |This field would be used to pass the guest’s Country |
|StateProv |StateCode |String |0..1 |N |This field would be used to pass the guest’s State |
|CustLoyalty |ProgramID |String |0..1 |N |The ProgramID attribute can be used to indicate the programme that is being passed. For instance we could use it to pass: Frequent Guest, Frequent Traveller and Company ID |
|CustLoyalty |MembershipID |String |0..1 |N |The membershipID attribute will indicate the actual nr |
|HotelReservationID |ResID_Type |int |0..1 |N |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |0..1 |N |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResGuesRPH |Missing |0..1 |N |When 1 the confirmation number given to the guest. This number should be searchable by the destination |
EXAMPLEADULTAv Cantabria 41MadridSPAINEXAMPLECHILDAv Cantabria 41MadridSPAIN
======✔ OTA_HotelResRQ - Commit_Book ======
Please put the uniqueID confirmation number in "ResID_Value" with ResID_Type="40".
And put the reservation number in "ResID_Value" with ResID_Type="14".
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"CommitBook".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
** Request XML**
**OTA_HotelResRS - Committed State --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Committed |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_HotelResRQ - Ignore_Book ======
Please put the uniqueID confirmation numberin "ResID_Value" with ResID_Type="40".
And put the reservation number in "ResID_Value" with ResID_Type="14".
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"IgnoreBook".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
** Request XML**
**OTA_HotelResRS - Ignored State --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Ignored |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_HotelResRQ - Modify======
**Description : **
The message is the same used for the reservation. In the request the @ResStatus must be set to “modify” and the rest of fields hold the all booked data.
The basic information for Commit/Ignore are POS and HotelReservationID.
{{ :hotelres_rq_rs_modify_modified_commitmodify_committed.png |}}
{{ :hotelres_rq_rs_modify_modified_ignoremodify_ignored.png |}}
Please follow the OTA_HotelResRQ for required parameters.
Please put the generated confirmation ID of Initiate in the Unique ID block and use "Modify" status.
ResStatus="Modify"
** Request XML**
EXAMPLEADULTModifyEXAMPLECHILD
**OTA_HotelResRS - Modified State --Response XML**
EXAMPLEADULTMODIFYAv Cantabria 41MadridSPAINEXAMPLECHILDAv Cantabria 41MadridSPAIN
======✔ OTA_HotelResRQ - Commit_Modify ======
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"CommitModify".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
Please put the reservation number from the response of Modify in "ResID_Value" with ResID_Type="40".
And put the uniqueID from the response of Modify in "ResID_Value" with ResID_Type="14".
** Request XML**
**OTA_HotelResRS - Committed State --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Committed |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_HotelResRQ - Ignore_Modify ======
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"IgnoreModify".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
Please put the reservation number from the response of Modify in "ResID_Value" with ResID_Type="14".
And put the uniqueID from the response of Modify in "ResID_Value" with ResID_Type="40".
** Request XML**
**OTA_HotelResRS - Ignored State --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Ignored |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_HotelResRQ - Cancel ======
**Description : **
The basic information for Commit/Ignore are POS and HotelReservationID.
{{ :hotelres_rq_rs_cancel_cancelled_commitcancel_committed.png |}}
{{ :hotelres_rq_rs_cancel_cancelled_ignorecancel_ignored.png |}}
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"Cancel".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|UniqueID |Type |int |1 |Y |Type is assigned values from the UIT code list If it is a CRS:Type = 40.Confirmation number. |
|UniqueID |ID |int |1 |Y |This is the confirmation number associated with the @Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
Please put the uniqueID in "ID" with Type="40".
And put the reservation number in "ResID_Value" with ResID_Type="14".
** Request XML**
**OTA_HotelResRS - Cancelled --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Cancelled |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservation |CreateDateTime |String |1 |Y |This is the date when the reservation was first made. |
|HotelReservation |CreatorID |String |1 |Y |The CreatorID is the identifier of the user. |
|UniqueID |Type |int |1 |Y |Type is assigned codes from the UIT (Unique Id Type) code list. 40–Confirmation number. |
|UniqueID |ID |int |1 |Y |ID is the actual confirmation number |
|RatePlan |RatePlanCode |String |1 |Y |Product Code; ex. NYCHPCEPR,.. |
|CancelPenalties |CancelPolicyIndicator |boolean |1 |N |When “True” indicates a cancellation policy exists. Typically sent if no cancel details are sent. |
|CancelPenalty | | |0..n |N | |
|CancelPenalty |Start |String |1 |Y |Indicates the starting date. |
|CancelPenalty |End |String |1 |Y |Indicates the ending date. |
|Deadline | | |1 |Y |If the rate is non-refundable this element is optional. |
|Deadline |AbsoluteDeadline |String |1 |Y |This is used to indicate the “exact date” or “exact date and time” by which a reservation made for the rate passed needs to be cancelled in order to avoid penalties.|
|Deadline |OffsetTimeUnit |String |1 |Y |The units of time, e.g.: days, hours, etc., that apply to the deadline. |
|AmountPercent |Percent/Amount/Night |int |1 |Y |Either a number of nights, amount or percentage must be specified |
|RatePlanDescription | | |0..1 |N | |
|RatePlanDescription |Name |String |1 |Y |Name associated with this rate description. |
|Commission | | |0..1 |N | |
|Commission |Percent |int |1 |Y |The percent applied to the commissionable amount to determine the commissionable payment amount. |
|RoomRate | | |1..n |Y | |
|RoomRate |RoomTypeCode |int |1 |Y |This is the room type code booked in the reservation |
|RoomRate |NumberOfUnits |String |1 |Y |This is the number of rooms booked for the room type code listed in the RoomTypeCode attribute |
|RoomRate |RatePlanCode |String |1 |Y |Product Code; ex. NYCHPCEPR,.. |
|Rate | | |1..n |Y |At least one instance of Rate per Rate plan. Multiple instances of the Rate element must be sent if rate changes apply to the booking. |
|Rate |RateTimeUnit |String |1 |Y |Rate Time unit is an Enumeration of time units upon which the rate amount is based (e.g., daily, weekly, single rate for full stay). |
|Rate |UnitMultiplier |int |1 |Y |UnitMultiplier is the number of RateTimeUnits that the rate amount is based upon (e.g., rate for one day in case of nightly rates). |
|Rate |EffectiveDate |String |1 |Y |The Effective date attribute indicates the starting date of when a specific rate value is applied. |
|Rate |ExpireDate |String |1 |Y |The Expire date indicates the day when the specific value of the rate is changed to another value. |
|MealsIncluded |MealPlanCodes |String |1 |Y |OTA code (MPT): 1 -All inclusive, 3 -B&B, ... |
|Base |AmountAfterTax |long |1 |Y |The base amount charged for the accommodation or service per unit of time |
|Base |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the Total. |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count|
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
|TimeSpan |Start |String |1 |Y |Check in date |
|TimeSpan |End |String |1 |Y |Check out date |
|Total |AmountAfterTax |long |1 |Y |AmountAfterTax is Mandatory for each @NumberOfGuests. |
|Total |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the total rate |
|Tax |Percent |long |1 |Y |Must send either Percent or Amount |
|Tax |Amount |long |1 |Y |Must send either Percent or Amount |
|TaxDescription |Name |String |1 |N |Name associated with this tax description. |
|Text |Language |String |1 |Y |Identifies the language of the description. |
|BasicPropertyInfo |HotelCode |int |1 |Y |ex. 131, 3360, 2649 |
|ResGuestRPH |RPH |int |1 |Y |This is used to link the various profiles to the reservation |
|ResGuest |ResGuestRPH |int |1 |Y |For simple reservations: If profiles for guest, travel agency and company are available, they would all be linked to a sigle ResGuestRPH. A comment has been entered with OpenTravel Alliance for phase 2 to accomodate more complex scenarios |
|Profile |ProfileType |int |1 |Y |This is used to pass the profile info for the guest, the Company and the Travel agency. For the individual guest the code used in ProfileType is the OpenTravel Alliance PRT code 1-[Customer], For a company it is PRT Code –3 [Corporation]. For a travel agency it is PRT code 4 –[Travel agent] |
|NamePrefix |value |String |0..1 |N | |
|GivenName |value |String |0..1 |N |Optional. This field would be used to pass the guest’s name First name |
|MiddleName |value |String |0..1 |N |Optional. his field would be used to pass the guest’s name Middle name |
|Surname |value |String |1 |Y |Mendatory, This field would be used to pass the guest’s name Surname |
|Telephone |PhoneLocationType |int |0..1 |N |The PhoneLocationType attribute refers to the OpenTravel Alliance PLT code list and indicates where the phone number is based –the values to be used by HTNG are: 6 –Home, 7 –Office, 8 –Other (e.g. cell phone). |
|Telephone |PhoneTechType |int |0..1 |N |The PhoneTechType attribute refers to the OpenTravel Alliance PTT code list and indicates which type of number is transmitted (phone vs fax). The codes to be used by HTNG are code 1 –Voice, code 3 –Fax, code 5 -Mobile |
|Telephone |PhoneNumber |String |1 |Y |PhoneNumber contains the actual number as a string of max 32 characters and it is MANDATORY |
|Email |value |String |0..5 |N |This field would be used to pass the guest’s email address |
|AddressLine |value |String |0..5 |N |This field would be used to pass the guest’s mail address |
|CityName |value |String |0..1 |N |This field would be used to pass the guest’s city |
|PostalCode |value |String |0..1 |N |This field would be used to pass the guest’s Postal / ZIP code |
|CountryName |value |String |0..1 |N |This field would be used to pass the guest’s Country |
|StateProv |StateCode |String |0..1 |N |This field would be used to pass the guest’s State |
|CustLoyalty |ProgramID |String |0..1 |N |The ProgramID attribute can be used to indicate the programme that is being passed. For instance we could use it to pass: Frequent Guest, Frequent Traveller and Company ID |
|CustLoyalty |MembershipID |String |0..1 |N |The membershipID attribute will indicate the actual nr |
|HotelReservationID |ResID_Type |int |0..1 |N |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |0..1 |N |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResGuesRPH |Missing |0..1 |N |When 1 the confirmation number given to the guest. This number should be searchable by the destination |
EXAMPLEADULT33 West 46th st 3rd floorNew York10036ITALYEXAMPLECHILD33 West 46th st 3rd floorNew York10036ITALY
======✔ OTA_HotelResRQ - CommitCancel ======
Please put the uniqueID in "ID" with Type="40".
And put the reservation number in "ResID_Value" with ResID_Type="14".
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"CommitCancel".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
** Request XML**
**OTA_HotelResRS - CancelCommitted--Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Committed|
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_HotelResRQ - IgnoreCancel ======
Please put the uniqueID in "ID" with Type="40".
And put the reservation number in "ResID_Value" with ResID_Type="14".
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRQ |ResStatus |String |1 |Y |"IgnoreCancel".|
|OTA_HotelResRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |OTA, agency code. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
** Request XML**
**OTA_HotelResRS - Ignored --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_HotelResRS |ResResponseType |String |1 |Y |Ignored |
|OTA_HotelResRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_HotelResRS |Version |int |1 |Y |1.0 |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 40.Confirmation number. |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ResID_Type |int |1 |Y |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |1 |Y |This is the confirmation number associated with the @ResID_Type. |
======✔ OTA_ReadRQ ======
{{ :readrq_resretrivers.png |}}
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_ReadRQ |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_ReadRQ |Version |int |1 |Y |1.0 |
|RequestorID |Type |int |0..1 |N |5 - Travel agency, the default value. |
|RequestorID |ID |String |1 |Y |Client agent name |
|BookingChannel |Type |int |0..1 |N |6 - Tour operator system (TOS), default value. |
|BookingChannel |Primary |String |0..1 |N |Always set to true |
|CompanyName |Code |String |0..1 |N |VECI, agency code. |
|ReadRequest | | |1..* |Y |Must be sent for the message to have a meaning. For a pull reservation, the HotelReadRequest element will be used since the confirmation number is not known |
|ReadRequest |HotelCode |int |1 |Y |ex. 131, 3360, 2649 |
|UniqueID |Type |int |1 |Y |Type is assigned codes from the UIT (Unique Id Type) code list. 14–Reservation. |
|UniqueID |ID |int |1 |Y |ID is the actual confirmation number |
** Request XML**
**OTA_ResRetriveRS --Response XML**
^Tag^Name^Type^Occurs^Required^Comments^
|OTA_ResRetrieveRS |TimeStamp |String |1 |Y |UTC(YYYY-MM-DDThh:mm:ssZ) |
|OTA_ResRetrieveRS |Version |int |1 |Y |1.0 |
|HotelReservation |ResStatus |String |0..1 |N |Book |
|HotelReservation |CreateDateTime |String |1 |Y |This is the date when the reservation was first made. |
|HotelReservation |CreatorID |String |1 |Y |The CreatorID is the identifier of the user. |
|HotelReservation |LastModifyDateTime |String |0..1 |N | |
|HotelReservation |LastModifierID |String |0..1 |N | |
|UniqueID |Type |int |1 |Y |Type is assigned codes from the UIT (Unique Id Type) code list. 14–Reservation. |
|UniqueID |ID |int |1 |Y |ID is the actual confirmation number |
|RoomRate | | |1..n |Y | |
|RoomRate |RoomTypeCode |int |1 |Y |This is the room type code booked in the reservation |
|RoomRate |NumberOfUnits |String |1 |Y |This is the number of rooms booked for the room type code listed in the RoomTypeCode attribute |
|RoomRate |RatePlanCode |String |1 |Y |Product Code; ex. NYCHPCEPR,.. |
|Rate | | |1..n |Y |At least one instance of Rate per Rate plan. Multiple instances of the Rate element must be sent if rate changes apply to the booking. |
|Rate |RateTimeUnit |String |1 |Y |Rate Time unit is an Enumeration of time units upon which the rate amount is based (e.g., daily, weekly, single rate for full stay). |
|Rate |UnitMultiplier |int |1 |Y |UnitMultiplier is the number of RateTimeUnits that the rate amount is based upon (e.g., rate for one day in case of nightly rates). |
|Rate |EffectiveDate |String |1 |Y |The Effective date attribute indicates the starting date of when a specific rate value is applied. |
|Rate |ExpireDate |String |1 |Y |The Expire date indicates the day when the specific value of the rate is changed to another value. |
|Base |AmountAfterTax |long |1 |Y |The base amount charged for the accommodation or service per unit of time |
|Base |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the Total. |
|GuestCount |GuestCount | |1..n |Y |Create combination as Single, Double, Triple, Quad, SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH using AgeQualifyingCode, Age and Count|
|GuestCount |AgeQualifyingCode |int |1 |Y |10.Adult;8.Child |
|GuestCount |Age |int |1 |N |only for children |
|GuestCount |Count |int |1 |Y |The number of guests in one AgeQualifyingCode or Count.|
|TimeSpan |Start |String |1 |Y |Check in date |
|TimeSpan |End |String |1 |Y |Check out date |
|Total |AmountAfterTax |long |1 |Y |AmountAfterTax is Mandatory for each @NumberOfGuests. |
|Total |CurrencyCode |String |1 |Y |CurrencyCode used ISO 4217 codes to indicate the currency of the total rate |
|BasicPropertyInfo |HotelCode |int |1 |Y |ex. 131, 3360, 2649 |
|ResGuestRPH |RPH |int |1 |Y |This is used to link the various profiles to the reservation |
|ResGuest |ResGuestRPH |int |1 |Y |For simple reservations: If profiles for guest, travel agency and company are available, they would all be linked to a sigle ResGuestRPH. A comment has been entered with OpenTravel Alliance for phase 2 to accomodate more complex scenarios |
|Profile |ProfileType |int |1 |Y |This is used to pass the profile info for the guest, the Company and the Travel agency. For the individual guest the code used in ProfileType is the OpenTravel Alliance PRT code 1-[Customer], For a company it is PRT Code –3 [Corporation]. For a travel agency it is PRT code 4 –[Travel agent] |
|NamePrefix |value |String |0..1 |N | |
|GivenName |value |String |0..1 |N |Optional. This field would be used to pass the guest’s name First name |
|MiddleName |value |String |0..1 |N |Optional. his field would be used to pass the guest’s name Middle name |
|Surname |value |String |1 |Y |Mendatory, This field would be used to pass the guest’s name Surname |
|Telephone |PhoneLocationType |int |0..1 |N |The PhoneLocationType attribute refers to the OpenTravel Alliance PLT code list and indicates where the phone number is based –the values to be used by HTNG are: 6 –Home, 7 –Office, 8 –Other (e.g. cell phone). |
|Telephone |PhoneTechType |int |0..1 |N |The PhoneTechType attribute refers to the OpenTravel Alliance PTT code list and indicates which type of number is transmitted (phone vs fax). The codes to be used by HTNG are code 1 –Voice, code 3 –Fax, code 5 -Mobile |
|Telephone |PhoneNumber |String |1 |Y |PhoneNumber contains the actual number as a string of max 32 characters and it is MANDATORY |
|Email |value |String |0..5 |N |This field would be used to pass the guest’s email address |
|AddressLine |value |String |0..5 |N |This field would be used to pass the guest’s mail address |
|CityName |value |String |0..1 |N |This field would be used to pass the guest’s city |
|PostalCode |value |String |0..1 |N |This field would be used to pass the guest’s Postal / ZIP code |
|CountryName |value |String |0..1 |N |This field would be used to pass the guest’s Country |
|StateProv |StateCode |String |0..1 |N |This field would be used to pass the guest’s State |
|CustLoyalty |ProgramID |String |0..1 |N |The ProgramID attribute can be used to indicate the programme that is being passed. For instance we could use it to pass: Frequent Guest, Frequent Traveller and Company ID |
|CustLoyalty |MembershipID |String |0..1 |N |The membershipID attribute will indicate the actual nr |
|HotelReservationID |ResID_Type |int |0..1 |N |ResID_Type is assigned values from the UIT code list If it is a CRS:ResID_Type = 14.Reservation |
|HotelReservationID |ResID_Value |int |0..1 |N |This is the confirmation number associated with the @ResID_Type. |
|HotelReservationID |ForGuest |Missing |0..1 |N |When 1 the confirmation number given to the guest. This number should be searchable by the destination |
EXAMPLEADULT33 West 46th st 3rd floorNew York10036ITALYEXAMPLECHILD33 West 46th st 3rd floorNew York10036ITALY