When you need to update an existing reservation you can use OTA_HotelResModifyRQ call.
Request sample
<OTA_HotelResModifyRQ Version="1" xmlns="http://www.opentravel.org/OTA/2003/05"> <HotelResModifies> <HotelResModify> <UniqueID Type="14" ID="265913" /> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="C_2208" /> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="1201" /> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="C_2208" NumberOfUnits="1" RatePlanCode="1201"> <Rates> <Rate UnitMultiplier="3"> <Total AmountAfterTax="730" CurrencyCode="EUR" /> </Rate> </Rates> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="1" Count="1" /> </GuestCounts> <TimeSpan Start="2017-11-11" End="2017-11-14" /> <Guarantee> <GuaranteesAccepted> <GuaranteeAccepted> <PaymentCard CardType="2" CardNumber="4111111111111111" SeriesCode="555" ExpireDate="05/2020"> <CardHolderName>Guest Name</CardHolderName> </PaymentCard> </GuaranteeAccepted> </GuaranteesAccepted> </Guarantee> <BasicPropertyInfo HotelCode="2181" /> <ResGuestRPHs> <ResGuestRPH RPH="11" /> </ResGuestRPHs> </RoomStay> </RoomStays> <ResGuests> <ResGuest ResGuestRPH="11"> <Profiles> <ProfileInfo> <Profile> <Customer> <PersonName> <GivenName>Guest</GivenName> <Surname>Name</Surname> </PersonName> <Telephone PhoneNumber="+12345678900" /> <Email>guest.email@email.email</Email> <Address> <CityName>Paris</CityName> <CountryName>Fr</CountryName> </Address> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> </ResGuests> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Value="265913" /> </HotelReservationIDs> </ResGlobalInfo> </HotelResModify> </HotelResModifies> </OTA_HotelResModifyRQ>
Required fields:
RoomTypeCode – Room Category Code. Note it starts from C for hotel rooms and from P for apartments and virtual units
RatePlanCode – Rate plan code
AmountAfterTax – Amount
CurrencyCode – Currency code based on ISO 4217
TimeSpan – Period of reservation
Start — Check-In date
End — Check-Out date
CardType — Credit card type. Use 1 for Visa, 2 for Master Card, 3 for Maestro, 4 for American Express and 5 for Dinners Club
CardNumber — Credit Card number
SeriesCode — CVV2
ExpireDate — CC expiration date
CardHolderName — Cardholder’s name
HotelCode — Hotel ID
PrimaryLangID – Use ISO 639-3 language codes
Version – This is strange, but OTA requires it to be a required field
Response sample
<OTA_HotelResModifyRS xmlns="http://www.opentravel.org/OTA/2003/05"> <Success/> <HotelResModifies> <HotelResModify> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Type="14" ResID_Value="S_265913" ResID_Source="colibry_pms"/> </HotelReservationIDs> </ResGlobalInfo> </HotelResModify> </HotelResModifies> </OTA_HotelResModifyRS>
Response fields explained:
HotelReservationID