> ## Documentation Index
> Fetch the complete documentation index at: https://docs.axisdata.net/llms.txt
> Use this file to discover all available pages before exploring further.

# RatePlanToken Book RQ

The Book functionality for our RatePlanToken product is directly based on our original OTA\_HotelResRQ/RS. The request message is almost identical to the classic model.

## Purpose

* Quote Room Stays retrieved from RatePlanToken Search.
* Commit/Book Room Stays from our RatePlanToken portfolio.
* Receive confirmation of the booking with relevant information of it.

## Details and Structure

All the details regarding this message can be found at [OTA\_HotelResRQ](../hotel/bookRQ).

The Booking for RatePlanToken products has to be done using the RatePlanToken, retrieved from the [Search Response](./direct-searchRS#booking-code).

### RatePlanToken

This code, once retrieved from Search Response and stored, needs to be used in the booking request as follows:

```xml theme={null}
...
<RoomStay RPH="1">
    <RoomTypes>
        <RoomType RoomTypeCode="RMSDIN0000"/>
    </RoomTypes>
    <RatePlans>
        <RatePlan RatePlanToken="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" />
    </RatePlans>
...
```

The system will then check if the code is correct and use it to link the rate to the one retrieved at the search step.

## Differences with classic Hotel Book

The structure of the message is exactly the same as [OTA\_HotelResRQ](../hotel/bookRQ) plus the RatePlanToken, but there are some features that are not available.

### What's not included

* [Optional Extras](../hotel/bookRQ#tpa-extensions) are not available for RatePlanToken Hotels.

All other elements and their rules are equivalent to the traditional booking flow.

## Complete Examples

<CodeGroup>
  ```xml Basic expandable theme={null}
  <OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" ResStatus="Quote" Version="2008.1" PrimaryLangID="EN">
  	<POS>
  		<Source>
  			<RequestorID ID_Context="AxisData" Type="22" ID="TEST" Instance="PriceBreakdown"/>
  		</Source>
  		<Source>
  			<RequestorID Type="88" ID="TEST"/>
  		</Source>
  	</POS>
  	<HotelReservations>
  		<HotelReservation>
  			<RoomStays>
  				<RoomStay RPH="1">
  					<RoomTypes>
  						<RoomType RoomTypeCode="RM00CRMV00"/>
  					</RoomTypes>
  					<RatePlans>
  						<RatePlan RatePlanToken="NGDjY1BxMJshml1tjSjP60aQLl1ZM_DXaHsmytDg91gP9V3sV124B2yEudvNXnrvUgY7TQEz5cQ3ElEy3ZVc-56GYgRG4tVk1juq6x8E8ddMdKBv6tvWpth6CoSEjz30SgGDRkscCIhD_JFViqtNLiL7mwI3g2-zMvKnMAz3tA-B4POClx7_-0Sw1Ga8oBKad5C0NXtrHvlsQYW6L8Q_"/>
  					</RatePlans>
  					<TimeSpan Start="2027-07-17" End="2027-07-24"/>
  					<Total AmountAfterTax="900.00" CurrencyCode="EUR"/>
  					<BasicPropertyInfo HotelCode="AESPMI5L46"/>
  					<ResGuestRPHs>
  						<ResGuestRPH RPH="1"/>
  						<ResGuestRPH RPH="2"/>
  					</ResGuestRPHs>
  					<ServiceRPHs>
  						<ServiceRPH RPH="1"/>
  					</ServiceRPHs>
  				</RoomStay>
  			</RoomStays>
  			<Services>
  				<Service ServiceInventoryCode="BB" ServiceRPH="1"/>
  			</Services>
  			<ResGuests>
  				<ResGuest AgeQualifyingCode="10" ResGuestRPH="1">
  					<Profiles>
  						<ProfileInfo>
  							<Profile>
  								<Customer BirthDate="1996-01-01">
  									<PersonName>
  										<NamePrefix>Mr</NamePrefix>
  										<GivenName>Bender</GivenName>
  										<Surname>Bending</Surname>
  									</PersonName>
  								</Customer>
  							</Profile>
  						</ProfileInfo>
  					</Profiles>
  					<GuestCounts>
  						<GuestCount Count="1" Age="30"/>
  					</GuestCounts>
  				</ResGuest>
  				<ResGuest AgeQualifyingCode="10" ResGuestRPH="2">
  					<Profiles>
  						<ProfileInfo>
  							<Profile>
  								<Customer BirthDate="1996-01-01">
  									<PersonName>
  										<NamePrefix>Mrs</NamePrefix>
  										<GivenName>Angelina</GivenName>
  										<Surname>Bending</Surname>
  									</PersonName>
  								</Customer>
  							</Profile>
  						</ProfileInfo>
  					</Profiles>
  					<GuestCounts>
  						<GuestCount Count="1" Age="30"/>
  					</GuestCounts>
  				</ResGuest>
  			</ResGuests>
  			<ResGlobalInfo>
  				<Comments>
  					<Comment Name="Applicant Notice">
  						<Text>late arrival - flight lands at 22:55 local time</Text>
  					</Comment>
  				</Comments>
  				<HotelReservationIDs>
  					<HotelReservationID ResID_SourceContext="Client" ResID_Type="36" ResID_Value="test_xxx"/>
  					<HotelReservationID Item_RPH="1" ResID_SourceContext="Client" ResID_Type="37" ResID_Value="test_xxx_ac1"/>
  				</HotelReservationIDs>
  			</ResGlobalInfo>
  		</HotelReservation>
  	</HotelReservations>
  </OTA_HotelResRQ>
  ```
</CodeGroup>
