This article will take you through the elements of a Booking Request and Response.
The Booking request allows you to pass a reservation through to RMS, which will automatically drop through to the properties RMS system.
| Element Name | Element Description | Attributes | Required | |
|---|---|---|---|---|
| RMSBookingRQ | Root element. Containing the request for a booking. | Version - document version of the response schema | Yes | |
| AgentId | RMSBookingRQ | The agent code of the RMS agent enquiring. | Yes | |
| RMSClientId | RMSBookingRQ | The RMS Client Id of the property being searched. | Yes | |
| PaymentId | RMSBookingRQ | Numeric field. If the payment was taken outside of RMS, provide a payment transaction number here. Providing this will create a receipt in RMS that marks the booking as paid. | No | |
| PaymentType | RMSBookingRQ | Description of payment type | No | |
| Token | RMSBookingRQ | DPS Credit Card Token passed into RMS. This will be used as the Clients Credit Card Token | No | |
| CCFees | RMSBookingRQ | Credit Card Fee to be added to the Reservation | No | |
| ReceiptType | RMSBookingRQ | "CreditCard" Can be used to have the Deposit Receipt drop in as a Credit Card Receipt Type. Anything other than CreditCard will drop in as Direct Credit. (PaymentID, Depopsit, CardType, & SettlementDate Elements are also required) | No | |
| ForceBooking | RMSBookingRQ | If this element is present, the booking will be saved regardless of availability. There is no value for this element. | No | |
| NoEmail | RMSBookingRQ | Option to disable RMS from sending booking confirmation emails. | No | |
| Test | RMSBookingRQ | If this element is present, the booking will be saved to the training database of the requesting property for reference. No payment will be taken at RMS end. | No | |
| Bookings | RMSBookingRQ | Contains one or multiple booking requests. Multiple bookings will be saved as a group booking. | Yes | |
| Booking | Bookings | Represents one booking request. | Yes | |
| BookingPrice | Booking | Contains details of the price of the booking. | Yes | |
| OriginalPrice | BookingPrice | The original price before any discounts (if any) | Yes | |
| Price | BookingPrice | The total amount of the booking. | Yes | |
| Discount | BookingPrice | The amount to discount (if any) | Id = Identifier of the discount. The Id must be valid for the discount to be applied. | No |
| DiscountSecond | BookingPrice | The amount to discount (if any) | Id = Identifier of the second discount. The Id must be valid for the discount to be applied. | No |
| Deposit | BookingPrice | The amount paid as a deposit for the booking. | Yes | |
| CurrencyId | BookingPrice | The identifier for currency. | No | |
| Overridden | BookingPrice | Determines if the price was manually overridden. | No | |
| BookingItem | Booking | Contains details of the booking. | Yes | |
| RoomTypeId | BookingItem | The identity of the room type booked. | Yes | |
| AreaId | BookingItem | The identity of the area booked. Optional element use either AreaId OR NumberOfRooms. | No | |
| UseAreaSpareFieldLookup | BookingItem | If supplied, uses specified spare field to search for Area using the value in SpareFieldValue, Ignored if AreaId is supplied | No | |
| AreaSpareFieldValue | BookingItem | Value to search for in spare field. | No | |
| NoOfRooms | BookingItem | Number of rooms booked under this room type. Optional element use either AreaId OR NumberOfRooms. | No | |
| ChargeTypeId | BookingItem | The identity of the charge type used for the booking. Not required if Overridden element is present. | No | |
| BookingSourceId | BookingItem | The identity of the booking source from which the guest found this property. | No | |
| ResTypeId | BookingItem | The identity of the Res type of this booking. | No | |
| SubResTypeId | BookingItem | The identity of the Sub res type of this booking. | No | |
| ArrivalDate | BookingItem | The day which the guest will arrive. | Yes | |
| DepartureDate | BookingItem | The day which the guest will depart. | Yes | |
| ETA | BookingItem | The time the guest wishes to arrive E.g. 14:00 = 2pm | No | |
| Adults | BookingItem | Number of adults for rate calculation. | Yes | |
| Children | BookingItem | Number of children for rate calculation. | Yes | |
| Infants | BookingItem | Number of infants for rate calculation. | Yes | |
| Additionals1 | BookingItem | Number of first additionals for rate calculation. | No | |
| Additionals2 | BookingItem | Number of second additionals for rate calculation. | No | |
| Additionals3 | BookingItem | Number of third additionals for rate calculation. | No | |
| Additionals4 | BookingItem | Number of fourth additionals for rate calculation. | No | |
| Additionals5 | BookingItem | Number of fifth additionals for rate calculation. | No | |
| Spare1 | BookingItem | Spare reservation field. | No | |
| Spare2 | BookingItem | Spare reservation field. | No | |
| Spare3 | BookingItem | Spare reservation field. | No | |
| Spare4 | BookingItem | Spare reservation field. | No | |
| Spare5 | BookingItem | Spare reservation field. | No | |
| Spare6 | BookingItem | Spare reservation field. | No | |
| Spare7 | BookingItem | Spare reservation field. | No | |
| Spare8 | BookingItem | Spare reservation field. | No | |
| Spare9 | BookingItem | Spare reservation field. | No | |
| Spare10 | BookingItem | Spare reservation field. | No | |
| ContactDetail | RMSBookingRQ | Contains the contact details for the guest. | No | |
| Title | ContactDetail | The title of the guest. | No | |
| FirstName | ContactDetail | The first name of the guest. | No | |
| LastName | ContactDetail | The last name of the guest. | No | |
| Mobile | ContactDetail | Mobile phone number of the guest. | No | |
| Phone | ContactDetail | BH phone number of the guest. | No | |
| PhoneAH | ContactDetail | AH phone number of the guest. | No | |
| EmailAddress | ContactDetail | Email address of the guest. | No | |
| MembershipNo | ContactDetail | MembershipNo of the guest | No | |
| CCConsent | ContactDetail | Allows RMS to take continuous payments. | No | |
| RMSClientID | Contact Detail | RMS Unique Client ID | The unique Client ID can be obtained if using the RMS Public Service API. | No |
| AddressDetail | ContactDetail | Contains the address details for the guest. | No | |
| Address | ContactDetail | Street address of the guest. | No | |
| Locality | ContactDetail | Address2 of the guest. | ||
| City | ContactDetail | City/Suburb/Town of the guest. | No | |
| SubRegion | ContactDetail | State/Province/Territory of the guest. | No | |
| PostCode | ContactDetail | Postcode/Zip Code of the guest. | No | |
| Country | ContactDetail | Country of the guest. | No | |
| RVLengthId | ContactDetail | RV Length will be stored against the guest record. | No | |
| RVTypeId | ContactDetail | RV Type will be stored against the guest record. | No | |
| RVSlide | ContactDetail | RV Slide will be stored against the guest record. | No | |
| Remarks | RMSBookingRQ | Contains one or many notes on the booking. | Yes | |
| Remark | Remarks | Any extra notes for the property. | Yes | |
| Requirements | Booking | Contains any additional requirements chosen by the guest. | No | |
| Requirement | Requirements | A specified additional requirement. | No | |
| Id | Requirement | The identifier of the requirement. | No | |
| Name | Requirement | The requirement name. | No | |
| Quantity | Requirement | The quantity of the requirement requested. | No | |
| Amount | Requirement | The amount charged for the requirement(s). | No | |
| ExcludeAmountFromDeposit | Requirement | Should the Requirement Amount be Excluded from the Deposit Calculation | No | |
| Sundry_Id | Requirement | The identifier of the sundry charge assosiated. | No | |
| From | Requirement | The date the requirement begins. If left out it will default to the booking arrival. | No | |
| To | Requirement | The date the requirement ends. If left out it will default to the booking departure. | No | |
| PaymentType | RMSBookingRQ | Specifies the payment type for the booking rq. | No | |
| PaymentDetail | RMSBookingRQ | Contains the payment details of the customer. | No | |
| HolderName | PaymentDetail | The card holders name. | No | |
| CardType | PaymentDetail | The type of card E.g. Visa, Mastercard, etc. | No | |
| Number | PaymentDetail | The Credit Card Number. | No | |
| CCVCode | PaymentDetail | The Credit Card CCV Code. | No | |
| ExpireDate | PaymentDetail | The Credit Card Expiration Date. | No | |
| SettlementDate | PaymentDetail | The Settlement Date Provided by the Payment Gateway after Processing the Receipt. | No | |
| Reference | PaymentDetail | Optional element, add if the card details are only for reference. | No | |
| RelatedSecurityKey | PaymentDetail | SagePay reference for continuous payments. | If this field is being used and a PaymentId is supplied in the call this element must contain information. | No |
| RelatedTxAuthno | PaymentDetail | SagePay reference for continuous payments. | If this field is being used and a PaymentId is supplied in the call this element must contain information. | No |
| RelatedVendorTxCode | PaymentDetail | SagePay reference for continuous payments. | If this field is being used and a PaymentId is supplied in the call this element must contain information. | No |
| RelatedVPSTxId | PaymentDetail | SagePay reference for continuous payments. | If this field is being used and a PaymentId is supplied in the call this element must contain information. | No |
<RMSBookingRQ>
<RMSClientId>3038</RMSClientId>
<AgentId>1</AgentId>
<PaymentId>1</PaymentId>
<ForceBooking/>
<NoEmail/>
<Bookings>
<Booking>
<BookingPrice>
<Price>75.00</Price>
<Discount Id="4">10.00</Discount>
<DiscountSecond Id="5">9.00</DiscountSecond>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<Remarks>
<Remark>Ocean View please</Remark>
</Remarks>
</Booking>
</Bookings>
<ContactDetail>
<CCConsent>0</CCConsent>
<FirstName>Naomi</FirstName>
<LastName>Fuller</LastName>
<Mobile>0433222222</Mobile>
<Phone>0338386985</Phone>
<PhoneAH>0386987545</PhoneAH>
<EmailAddress>[email protected]</EmailAddress>
<RVLengthId>1</RVLengthId>
<RVTypeId>2</RVTypeId>
<RVSlideId>0</RVSlideId>
<AddressDetail>
<Address>116 Harrick Road</Address>
<City>Keilor Park</City>
<Subregion>VIC</Subregion>
<PostCode>3029</PostCode>
<Country>Australia</Country>
<CountryISO></CountryISO>
</AddressDetail>
</ContactDetail>
<Requirements>
<Requirement>
<Id>2</Id>
<Name>Full Breakfast</Name>
<Quantity>1</Quantity>
<Sundry_Id>3</Sundry_Id>
<ExcludeAmountFromDeposit>true</ExcludeAmountFromDeposit>
<Amount>15.00</Amount>
</Requirement>
</Requirements>
<PaymentDetail>
<HolderName>Naomi Fuller</HolderName>
<CardType>Visa</CardType>
<Number>4444444444444444</Number>
<CCVCode>250</CCVCode>
<ExpireDate>12/14</ExpireDate>
<StartDate>12/08</StartDate>
<IssueNo></IssueNo>
</PaymentDetail>
</RMSBookingRQ>
<RMSBookingRQ>
<RMSClientId>3038</RMSClientId>
<AgentId>1</AgentId>
<PaymentId>1</PaymentId>
<ForceBooking/>
<NoEmail/>
<Bookings>
<Booking>
<BookingPrice>
<Price>75.00</Price>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<Remarks>
<Remark>Ocean View please</Remark>
</Remarks>
</Booking>
<Booking>
<BookingPrice>
<Price>75.00</Price>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<Remarks>
<Remark>Ocean View please</Remark>
</Remarks>
</Booking>
</Bookings>
<ContactDetail>
<FirstName>Naomi</FirstName>
<LastName>Fuller</LastName>
<Mobile>0433222222</Mobile>
<Phone>0338386985</Phone>
<PhoneAH>0386987545</PhoneAH>
<EmailAddress>[email protected]</EmailAddress>
<AddressDetail>
<Address>116 Harrick Road</Address>
<City>Keilor Park</City>
<Subregion>VIC</Subregion>
<PostCode>3029</PostCode>
<Country>Australia</Country>
<CountryISO></CountryISO>
</AddressDetail>
</ContactDetail>
<PaymentDetail>
<HolderName>Naomi Fuller</HolderName>
<CardType>Visa</CardType>
<Number>4444444444444444</Number>
<CCVCode>250</CCVCode>
<ExpireDate>12/14</ExpireDate>
<StartDate>12/08</StartDate>
<IssueNo></IssueNo>
</PaymentDetail>
</RMSBookingRQ>
| Element Name | Parent Element | Element Description | Attributes |
|---|---|---|---|
| RMSBookingRS | Root element. Containing the response to a booking quote request. | Version - document version of the response schema. | |
| Bookings | RMSBookingRS | Containse the responses of each booking requested | |
| Booking | Bookings | Specified booking. | |
| BookingReference | Booking | RMS booking reference | |
| BookingItem | Booking | Contains details of the booking. | |
| Agency | BookingItem | True/False | |
| RoomTypeId | BookingItem | The identity of the room type booked. | |
| AreaId | BookingItem | The identity of the area booked. Optional element use either AreaId OR NumberOfRooms. | |
| NumberOfRooms | BookingItem | Number of rooms booked under this room type. Optional element use either AreaId OR NumberOfRooms. | |
| ChargeTypeId | BookingItem | The identity of the charge type used for the booking. | |
| BookingSourceId | BookingItem | The identity of the booking source from which the guest found this property. | |
| ArrivalDate | BookingItem | The day which the guest will arrive. | |
| DepartureDate | BookingItem | The day which the guest will depart. | |
| Adults | BookingItem | Number of adults for rate calculation. | |
| Children | BookingItem | Number of children for rate calculation. | |
| Infants | BookingItem | Number of infants for rate calculation. | |
| Additionals1 | BookingItem | Number of first additionals for rate calculation. | |
| Additionals2 | BookingItem | Number of second additionals for rate calculation. | |
| Additionals3 | BookingItem | Number of third additionals for rate calculation. | |
| Additionals4 | BookingItem | Number of fourth additionals for rate calculation. | |
| Additionals5 | BookingItem | Number of fifth additionals for rate calculation. | |
| ETA | BookingItem | The time the guest will arrive | |
| BookingPrice | Booking | Contains the booking detailed pricing. | |
| Price | BookingPrice | The price for the booking received. | |
| Discount | BookingPrice | The amount to discount (if any) | Id = Identifier of the discount. The Id must be valid for the discount to be applied. |
| DiscountSecond | BookingPrice | The amount to discount (if any) | Id = Identifier of the discount. The Id must be valid for the discount to be applied. |
| Deposit | BookingPrice | The amount to be taken as a deposit. | |
| CurrencyId | BookingPrice | The identifier for currency. | |
| Error | RMSBookingRS | Contains an error that occurred while placing the booking. | |
| Id | Error | The error number for reference. | |
| Message | Error | The error message. | |
| TestBooking | Booking | Indicates that this booking was saved as a test. No payment was processed. | |
| Quote | Booking | If present, means that the property showed no availability for this bookin, however the booking was ordered to be 'forced' in the request and so was saved regardless. | |
| Requirements | Booking | Contains any additional requirements chosen by the guest. | |
| Requirement | Requirements | A specified additional requirement. | |
| Id | Requirement | The identifier of the requirement. | |
| Name | Requirement | The requirement name. | |
| Quantity | Requirement | The quantity of the requirement requested. | |
| Amount | Requirement | The amount charged for the requirement(s). | |
| ExcludeAmountFromDeposit | Requirement | Should the Requirement Amount be Excluded from the Deposit Calculation | |
| Sundry_Id | Requirement | The identifier of the sundry charge assosiated. | |
| From | Requirement | The date the requirement begins. If left out it will default to the booking arrival. | |
| To | Requirement | The date the requirement ends. If left out it will default to the booking departure. |
<RMSBookingRS Version="1">
<Bookings>
<Booking>
<BookingReference>1896769</BookingReference>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<BookingPrice>
<Price>75.00</Price>
<Discount Id="4">10.00</Discount>
<DiscountSecond Id="5">9.00</DiscountSecond>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
<Requirements>
<Requirement>
<Id>2</Id>
<Name>Full Breakfast</Name>
<Quantity>1</Quantity>
<Sundry_Id>3</Sundry_Id>
<ExcludeAmountFromDeposit>true</ExcludeAmountFromDeposit>
<Amount>15.00</Amount>
</Requirement>
</Requirements>
</Booking>
</Bookings>
</RMSBookingRS>
<RMSBookingRS Version="1">
<Bookings>
<Booking>
<BookingReference>1896839</BookingReference>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<BookingPrice>
<Price>75.00</Price>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
</Booking>
<Booking>
<BookingReference>1896839</BookingReference>
<BookingItem>
<Agency>false</Agency>
<RoomTypeId>2</RoomTypeId>
<NoOfRooms>1</NoOfRooms>
<ChargeTypeId>8</ChargeTypeId>
<BookingSourceId>3</BookingSourceId>
<ArrivalDate>2012-12-11T00:00:00</ArrivalDate>
<DepartureDate>2012-12-12T00:00:00</DepartureDate>
<Adults>2</Adults>
<Children>0</Children>
<Infants>0</Infants>
<Additionals1>0</Additionals1>
<Additionals2>0</Additionals2>
<Additionals3>0</Additionals3>
<Additionals4>0</Additionals4>
<Additionals5>0</Additionals5>
<ETA>14:01</ETA>
</BookingItem>
<BookingPrice>
<Price>75.00</Price>
<Deposit>37.50</Deposit>
<CurrencyId>5</CurrencyId>
</BookingPrice>
</Booking>
</Bookings>
</RMSBookingRS>