OTA Connectivity
OTA/RMS
Get Bookings to YCS
This API allows you to push bookings to YCS. In this mechanism, YCS will provide an endpoint to OTA/RMS where they can send bookings.
This mechanism is basically used to maintain sync by pushing us latest timely updates thereby keeping our system up-to date.
The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by YCS
Response
Name | Type | Description | Example |
HotelCode | INT(11) | Unique Hotel code | xxxx |
BookingID | VARCHAR(255) | Unique Booking id | 10125, 86436, B4525 etc |
Status | VARCHAR(255) | Booking Status i.e. New, Modify, Cancel | New |
Source | VARCHAR(1000) | Booking generated source | For example Booking.com, Expedia etc. |
BookingTran.* | – | Here * denotes Credit | *Card Informations like “Code CCNo CCType” “CCExpiryDate” |
BookingTran.RateTypeID | INT(20) | Unique RateType ID | 123400000000000001 |
BookingTran.RateType | VARCHAR(1000) | RateType Name | Grand Sea View Junior Suite |
BookingTran.RoomTypeCode | INT(20) | Unique RoomType Code | 123400000000000001 |
BookingTran.RoomTypeName | VARCHAR(1000) | RoomType Name | Garden View Studio Room |
BookingTran.Start | DATETIME | Check-in date | 2021-03-05 [format : yyyy-mm-dd] |
BookingTran.End | DATETIME | Check-out date | 2021-03-05 [format : yyyy-mm-dd] |
BookingTran.TotalRate | DECIMAL(19,4) | Rate on room in amount | 1500.43 |
BookingTran.TotalDiscount | DECIMAL(19,4) | Discount on room in | |
BookingTran.TotalExtraCharge | DECIMAL(19,4) | Extra charges in amount | |
BookingTran.TotalTax | DECIMAL(19,4) | Total Tax amount | |
BookingTran.TotalPayment | DECIMAL(19,4) | Payment for room in | 2500.54 |
BookingTran.Vehicle | VARCHAR(255) | Detail of vehicle | |
BookingTran.PickupDate | DATETIME | Pickup date | 2021-03-05 etc |
BookingTran.PickupTime | DATETIME | Pickup time | |
BookingTran.Comment | VARCHAR(1000) | Additional Information or comment | |
BookingTran.RentalInfo.EffectiveDate | DATETIME | Date for which the given details in the same block are effective | 2021-03-05 etc effectiveDate particular effective date |
BookingTran.RentalInfo.Adult | INT(11) | No. of Adults | |
BookingTran.RentalInfo.Child | INT(11) | No. of Childs | |
BookingTran.RentalInfo.Rent | DECIMAL(19,4) | Room rental amount | |
BookingTran.ExtraCharge | DECIMAL(19,4) | Extra charges in amount | |
BookingTran.RentalInfo.Tax | DECIMAL(19,4) | Tax on Room rental amount | |
BookingTran.RentalInfo.Discount | DECIMAL(19,4) | Discount on rental room in |
Sample Booking XML for Single Room Booking
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Reservations> <Reservation> <HotelCode>xxxx</HotelCode> <BookingID>7002016070604</BookingID> <Status>New</Status> <Source>Test</Source> <Code></Code> <CCNo></CCNo> <CCType></CCType> <CCExpiryDate></CCExpiryDate> <CardHoldersName></CardHoldersName> <BookingTran> <SubBookingId>1</SubBookingId> <RateTypeID>1234000000000008</RateTypeID> <RateType>Deluxe single</RateType> <RoomTypeCode>1234000000000001</RoomTypeCode> <RoomTypeName>Deluxe</RoomTypeName> <Start>2021-03-05</Start> <End>2021-03-07</End> <TotalRate>1000.00</TotalRate> <TotalDiscount>0.00</TotalDiscount> <TotalExtraCharge>0.00</TotalExtraCharge> <TotalTax>0.00</TotalTax> <TotalPayment>0.00</TotalPayment> <Salutation>Ms</Salutation> <FirstName>test</FirstName> <LastName>name</LastName> <Gender>Male</Gender> <Address></Address> <City>Goa</City> <State></State> <Country></Country> <Zipcode>403604</Zipcode> <Phone>123456</Phone> <Mobile>+91 1234567890</Mobile> <Fax></Fax> <Email>ezee@test.com</Email> <TransportationMode></TransportationMode> <Vehicle></Vehicle> <PickupDate></PickupDate> <PickupTime></PickupTime> <Comment>Reservation : test</Comment> <RentalInfo> <EffectiveDate>2021-03-05</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>1000.00</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> </BookingTran> </Reservation> </Reservations> </RES_Response>
Sample Booking XML for Multiple Rooms in a Single Booking [Group of rooms in the same booking]
If you want to send multiple rooms with a single booking then you have to send a separate for each room in the booking XML with different SubBookingId id.
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Reservations> <Reservation> <HotelCode>xxxx</HotelCode> <BookingID>7002016070604</BookingID> <Status>New</Status> <Source>Test</Source> <Code></Code> <CCNo></CCNo> <CCType></CCType> <CCExpiryDate></CCExpiryDate> <CardHoldersName></CardHoldersName> <BookingTran> <SubBookingId>1</SubBookingId> <RateTypeID>1234000000000008</RateTypeID> <RateType>Deluxe single</RateType> <RoomTypeCode>1234000000000001</RoomTypeCode> <RoomTypeName>Deluxe</RoomTypeName> <Start>2021-03-05</Start> <End>2021-03-07</End> <TotalRate>1000.00</TotalRate> <TotalDiscount>0.00</TotalDiscount> <TotalExtraCharge>0.00</TotalExtraCharge> <TotalTax>0.00</TotalTax> <TotalPayment>0.00</TotalPayment> <Salutation>Ms</Salutation> <FirstName>test</FirstName> <LastName>name</LastName> <Gender>Male</Gender> <Address></Address> <City>Goa</City> <State></State> <Country></Country> <Zipcode>403604</Zipcode> <Phone>123456</Phone> <Mobile>+91 1234567890</Mobile> <Fax></Fax> <Email>ezee@test.com</Email> <TransportationMode></TransportationMode> <Vehicle></Vehicle> <PickupDate></PickupDate> <PickupTime></PickupTime> <Comment>Reservation : test</Comment> <RentalInfo> <EffectiveDate>2021-03-05</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>1000.00</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> </BookingTran> <BookingTran> <SubBookingId>2</SubBookingId> <RateTypeID>1234000000000008</RateTypeID> <RateType>Deluxe single</RateType> <RoomTypeCode>1234000000000001</RoomTypeCode> <RoomTypeName>Deluxe</RoomTypeName> <Start>2021-03-05</Start> <End>2021-03-07</End> <TotalRate>1000.00</TotalRate> <TotalDiscount>0.00</TotalDiscount> <TotalExtraCharge>0.00</TotalExtraCharge> <TotalTax>0.00</TotalTax> <TotalPayment>0.00</TotalPayment> <Salutation>Ms</Salutation> <FirstName>test</FirstName> <LastName>name</LastName> <Gender>Male</Gender> <Address></Address> <City>Goa</City> <State></State> <Country></Country> <Zipcode>403604</Zipcode> <Phone>123456</Phone> <Mobile>+91 1234567890</Mobile> <Fax></Fax> <Email>ezee@test.com</Email> <TransportationMode></TransportationMode> <Vehicle></Vehicle> <PickupDate></PickupDate> <PickupTime></PickupTime> <Comment>Reservation : test</Comment> <RentalInfo> <EffectiveDate>2021-03-05</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>1000.00</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> </BookingTran> </Reservation> </Reservations> </RES_Response>
Sample Booking XML for multiple reservation in single request [ For Multiple New/Modify/Cancel Booking ]
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Reservations> <Reservation> <HotelCode>xxxx</HotelCode> <BookingID>7002016070604</BookingID> <Status>New</Status> <Source>Test</Source> <Code></Code> <CCNo></CCNo> <CCType></CCType> <CCExpiryDate></CCExpiryDate> <CardHoldersName></CardHoldersName> <BookingTran> <SubBookingId>138</SubBookingId> <RateTypeID>1234000000000008</RateTypeID> <RateType>Deluxe single</RateType> <RoomTypeCode>1234000000000001</RoomTypeCode> <RoomTypeName>Grand Sea View Junior Suite</RoomTypeName> <Start>2021-03-05</Start> <End>2021-03-06</End> <TotalRate>30243.50</TotalRate> <TotalDiscount>0.00</TotalDiscount> <TotalExtraCharge>0.00</TotalExtraCharge> <TotalTax>0.00</TotalTax> <TotalPayment>0.00</TotalPayment> <TACommision>0.00</TACommision> <Salutation /> <FirstName>Test</FirstName> <LastName>Test</LastName> <Gender>Male</Gender> <Address /> <City>London</City> <State /> <Country>United Kingdom</Country> <Zipcode /> <Phone>+447464942724</Phone> <Mobile /> <Fax /> <Email /> <TransportationMode /> <Vehicle /> <PickupDate /> <PickupTime /> <Comment> Reservation : ** THIS RESERVATION HAS BEEN PRE-PAID **Guest has paid: PHP 44100.07 You have a booker that prefers communication by email ,Breakfast is included in the room rate., Non-Smoking </Comment> <RentalInfo> <EffectiveDate>2021-03-01</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>15121.75</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> <RentalInfo> <EffectiveDate>2021-03-02</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>15121.75</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> </BookingTran> </Reservation> <Reservation> <HotelCode>[Hotel Code]</HotelCode> <BookingID>7002016070604</BookingID> <Status>New</Status> <Source>Test</Source> <Code></Code> <CCNo></CCNo> <CCType></CCType> <CCExpiryDate></CCExpiryDate> <CardHoldersName></CardHoldersName> <BookingTran> <SubBookingId>138</SubBookingId> <RateTypeID>1234000000000008</RateTypeID> <RateType>Deluxe single</RateType> <RoomTypeCode>123400000000000006</RoomTypeCode> <RoomTypeName>Grand Sea View Junior Suite</RoomTypeName> <Start>2021-03-05</Start> <End>2021-03-06</End> <TotalRate>30243.50</TotalRate> <TotalDiscount>0.00</TotalDiscount> <TotalExtraCharge>0.00</TotalExtraCharge> <TotalTax>0.00</TotalTax> <TotalPayment>0.00</TotalPayment> <TACommision>0.00</TACommision> <Salutation /> <FirstName>Test</FirstName> <LastName>Test</LastName> <Gender>Male</Gender> <Address /> <City>London</City> <State /> <Country>United Kingdom</Country> <Zipcode /> <Phone>+447464942724</Phone> <Mobile /> <Fax /> <Email /> <TransportationMode /> <Vehicle /> <PickupDate /> <PickupTime /> <Comment> Reservation : ** THIS RESERVATION HAS BEEN PRE-PAID **Guest has paid: PHP 44100.07 You have a booker that prefers communication by email ,Breakfast is included in the room rate., Non-Smoking </Comment> <RentalInfo> <EffectiveDate>2021-03-01</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>15121.75</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> <RentalInfo> <EffectiveDate>2021-03-02</EffectiveDate> <Adult>2</Adult> <Child>0</Child> <Rent>15121.75</Rent> <ExtraCharge>0.00</ExtraCharge> <Tax>1000.00</Tax> <Discount>0.00</Discount> </RentalInfo> </BookingTran> </Reservation> </Reservations> </RES_Response>
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>[Success Message]</SuccessMsg> </Success> <Errors> <ErrorCode>[Success Code]</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Errors> <ErrorCode>[Error Code]</ErrorCode> <ErrorMessage>[Error Message]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
-100 | Unsuccessful inserting reservation : Transaction already exists. |
-400 | Unsuccessful modify reservation : Transaction is inhouse. |
-500 | Unsuccessful cancel reservation : Transaction is inhouse. |
-600 | Unsuccessful modify reservation : Transaction is already void/cancelled/noshowed. |
-700 | Unsuccessful cancel reservation : Transaction is already void/cancelled/noshowed. |
-700 | Unsuccessful cancel reservation : We have received this booking directly in cancel mode, So your channel manager account doesn’t have record of this booking. |
-800 | No Operation : Cannot find binding Room Type or Rate Plan Ids. |
-800 | Unsuccessful inserting reservation : Past Date Reservation. |
-800 | Unsuccessful modify reservation : Room is not added because of past date reservation.. |
-900 | No Operation : We have received this booking directly in modify mode, So your channel manager account doesn’t have record of this booking. |
-900 | Unsuccessful inserting reservation : Some technical issue raised while processing this booking. |
-1000 | Unsuccessful reservation : Some error arised while processing channel booking. |
-1000 | Unsuccessful reservation : No reservation,blank data received. |
-1000 | Unsuccessful reservation : Invalid XML data received. Effective Date/Time is not received. |
-1000 | Unsuccessful reservation : Some error arised while parsing channel booking XML. |
-1000 | Unsuccessful reservation : No inventory exists in the system for specified reservation dates that’s why Booking is not processed further. |
-1000 | Unsuccessful reservation : Inventory is less than the no. of rooms booked that’s why Booking is not processed further. |
-1000 | Unsuccessful reservation : MoreThan1000daysbooking. |
-1000 | Unsuccessful reservation : Booking is Rejected by Hotel. |
-1000 | Unsuccessful reservation : ArrivalDate or DepartureDate is not valid. |
-1002 | No Operation : We have received this booking directly in modify mode. |
Success Codes
Code | Message |
0 | Successfully inserted reservation. |
-300 | Successfully modified reservation. |
-200 | Successfully cancelled reservation. |
OTA/RMS
Push Close on Departure
This API allows you to update close on departure on OTA/RMS. YCS will be pushing Close On Departure updates on their OTA/RMS end points. The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RatePlan-> RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RatePlan-> RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
RatePlan-> FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
RatePlan-> ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RatePlan-> COD* | INT(1) | COD oprvalue [1 or 0] 1: Enable StopSell 0: Disable Stopsell | 1 or 0 |
Request
<RES_Request> <Request_Type>UpdateCOD</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <COD>[oprvalue]</COD> </RatePlan> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | COD Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>COD Updated Successfully.</SuccessMsg> </Success> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | COD Successfully Updated |
OTA/RMS
Push Close On Arrival
This API allows you to update close on arrival on OTA/RMS. YCS will be pushing Close On Arrival updates on their OTA/RMS end points. The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RatePlan-> RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RatePlan-> RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
RatePlan-> FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
RatePlan-> ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RatePlan-> COA* | INT(1) | COA oprvalue [1 or 0] 1: Enable StopSell 0: Disable Stopsell | 1 or 0 |
Request
<RES_Request> <Request_Type>UpdateCOA</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <COA>[oprvalue]</COA> </RatePlan> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | COA Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>COA Updated Successfully.</SuccessMsg> </Success> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | COA Successfully Updated |
OTA/RMS
Push Stop Sell
This API allows you to update stop sell on OTA/RMS. YCS will be pushing stop sell updates on their OTA/RMS end points. The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RatePlan-> RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RatePlan-> RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
RatePlan-> FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
RatePlan-> ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RatePlan-> StopSell* | INT(1) | Stopsell oprvalue [1 or 0] 1: Enable StopSell 0: Disable Stopsell | 1 or 0 |
Request
<RES_Request> <Request_Type>UpdateStopSell</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <StopSell>[oprvalue]</StopSell> </RatePlan> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | StopSell Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>StopSell Updated Successfully.</SuccessMsg> </Success> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | StopSell Successfully Updated |
OTA/RMS
Push Minimum Nights
This API allows you to update minimum nights on OTA/RMS. YCS will be pushing minimum nights updates on their OTA/RMS end points. The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RatePlan-> RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RatePlan-> RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
RatePlan-> FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
RatePlan-> ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RatePlan-> MinNight* | INT(11) | MinNight oprvalue | 2,5,10 etc |
Request
<RES_Request> <Request_Type>UpdateMinNights</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <MinNight>2,5,10 etc</MinNight> </RatePlan> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | Min Nights Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>Min Nights Successfully Updated</SuccessMsg> </Success> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | Min Nights Successfully Updated |
OTA/RMS
Push Non-Linear Rates (Occupancy Base rates)
This API allows you to update rates according to occupancy of room on RMS/OTA, In other words, set different rates according to different no. of pax.
For example, if a room has occupancy of 5 adults, base occupancy 2, base rate 1200, then upto 2 adults the price will be applied as 1200 and after that the price will be varied according to the rate setting for different adults like 1800 for 3 adults, 2200 for 4 adults and 2650 for 5 adults.
The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RoomRate.Adult1 …Adult7* | FLOAT | Adult Rates(According to room occupancy) | 1000, 550.25 etc |
RoomRate.Child1 …Child7 | FLOAT | Child Rates(According to room occupancy) | 1000, 550.25 etc |
Request
<RES_Request> <Request_Type>UpdateRoomRatesNL</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RateType> <RoomTypeID>123400000000000001</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <RoomRate> <Adult1>1000, 550.25 etc</Adult1> <Adult2>1000, 550.25 etc</Adult2> <Adult3>1000, 550.25 etc</Adult3> <Adult4>1000, 550.25 etc</Adult4> <Adult5>1000, 550.25 etc</Adult5> <Adult6>1000, 550.25 etc</Adult6> <Adult7>1000, 550.25 etc</Adult7> <Child1>1000, 550.25 etc</Child1> <Child2>1000, 550.25 etc</Child2> <Child3>1000, 550.25 etc</Child3> <Child4>1000, 550.25 etc</Child4> <Child5>1000, 550.25 etc</Child5> <Child6>1000, 550.25 etc</Child6> <Child7>1000, 550.25 etc</Child7> </RoomRate> </RateType> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | Min Nights Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" standalone="yes"?> <RES_Response> <Success> <SuccessMsg>Room Inventory Successfully Updated</SuccessMsg> </Success> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | Room Rates Updated successfully. |
OTA/RMS
Push Linear Rates (Room Base Rates)
This API allows you to update base rate & extra adult/child rate on RMS/OTA. Fixed price will be added for every addition of extra adults/child.
For example, if a room has occupancy of 5 adults, base occupancy 2, base rate 1200 and extra adult rate is 500, then upto 2 adults the price will be applied as 1200 and after that 500 will be added for every extra adult like 1700 for 3 adults, 2200 for 4 adults and 2700 for 5 adults.
The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
RateTypeID* | INT(20)/VARCHAR(20) | Unique RateType ID | 123400000000000001 |
FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
RoomRate.Base* | FLOAT | Base Rate | 1000, 550.25 etc |
RoomRate.ExtraAdult | FLOAT | Extra Adult Rate (it is optional) | 1000, 550.25 etc |
RoomRate.ExtraChild | FLOAT | Inventory Count | 1000, 550.25 etc |
Request
<RES_Request> <Request_Type>UpdateRoomRates</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RateType> <RoomTypeID>123400000000000001]</RoomTypeID> <RateTypeID>123400000000000001</RateTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <RoomRate> <Base>1000, 550.25 etc</Base> <ExtraAdult>1000, 550.25 etc</ExtraAdult>[Optional] <ExtraChild>1000, 550.25 etc</ExtraChild>[Optional] </RoomRate> </RateType> </RES_Request>
Response
Name | Type | Description | Example |
Success.SuccessMsg | – | Unique Response Message | Min Nights Successfully Updated |
Errors.ErrorCode | – | Response Error Code | 104, 404 etc |
Errors.ErrorMessage | – | Generate Response Message | Rate type is missing etc |
Success
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <Success> <SuccessMsg>Room Rates Updated sucessfully.</SuccessMsg> </Success> <Errors> <ErrorCode>[Code]</ErrorCode> <ErrorMessage>[Message]</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type/ Rate Plan, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | Room Rates Updated successfully. |
OTA/RMS
Push Inventory
This API allows you to update inventory on OTA/RMS. YCS will be pushing inventory updates on their OTA/RMS end points. The request and response will be placed in XML format. The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
RoomTypeID* | INT(20)/VARCHAR(20) | Unique RoomType ID | 123400000000000001 |
FromDate* | DATETIME | Update From date [Format: yyyy-mm-dd] | 2021-03-05 |
ToDate* | DATETIME | Update To date [Format: yyyy-mm-dd] | 2021-03-09 |
Availability* | INT(11) | Inventory Count | 5, 10 , 50 etc |
Request
<RES_Request> <Request_Type>UpdateAvailability</Request_Type> <Authentication> <HotelCode>xxxx</HotelCode> <AuthCode>xxxxxxxxxx</AuthCode> </Authentication> <RoomType> <RoomTypeID>123400000000000001</RoomTypeID> <FromDate>2021-03-05</FromDate> <ToDate>2021-03-09</ToDate> <Availability>5, 10 , 50 etc</Availability> </RoomType> </RES_Request>
Response
Name | Type | Description | Example |
SuccessMsg | – | Unique Response Message | Room Inventory Successfully Updated |
ErrorCode | – | Response Error Code | 104, 404 ,111 etc |
ErrorMessage | – | Generate Response Message | Rate type is missing, Invalid inventory value etc |
Success
<?xml version="1.0" standalone="yes"?> <RES_Response> <Success> <SuccessMsg>Room Inventory Successfully Updated</SuccessMsg> </Success> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error
<?xml version="1.0" standalone="yes"?> <RES_Response> <Errors> <ErrorCode>[ErrorCode]</ErrorCode> <ErrorMessage>[ErrorMessage]</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error. (Invalid rom type, Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |
Success Codes
Code | Message |
0 | Room Inventory Successfully Updated |
OTA/RMS
Request Room Information
With this API, we will be requesting rate plan mappings from the OTA/RMS. We will be calling their end point to have their data in our system. The request and response will be placed in XML format.
This mechanism is basically used to store your room configurations at our end and create the connectivity to the communication platform between YCS and the OTA/RMS.The web service responds to HTTP POST requests.
End Point URL: Provided by OTA/RMS
Parameter
Name | Type | Description | Example |
HotelCode* | INT(11) | Unique Hotel code | xxxx |
AuthCode* | VARCHAR(300) | Unique Authentication code | xxxxxxxxxx |
Request
<RES_Request> <Request_Type>RoomInfo</Request_Type> <Authentication> <HotelCode>XXXX</HotelCode> <AuthCode>XXXXXXXXXXXXX</AuthCode> </Authentication> </RES_Request>
Response
Name | Type | Description | Example |
RoomTypeID | INT(20)/VARCHAR(20) | Unique Room Type ID | 123400000000000001 |
RoomType | VARCHAR(1000) | Room Type Name | Garden View Studio Room |
RateTypeID | INT(20)/VARCHAR(20) | Unique Rate Type ID | 123400000000000001 |
RateType | VARCHAR(1000) | Rate Type Name | European Plan |
Errors.ErrorCode | Response Error Code | 301, 404 etc | |
Errors.ErrorMessage | Generate Response Message | Success, Unauthorized Request Message |
Response
<?xml version="1.0" encoding="UTF-8"?> <RES_Response> <RoomInfo> <RatePlans> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RoomType>Garden View Studio Room</RoomType> <RateTypeID>123400000000000001</RateTypeID> <RateType>European Plan</RateType> </RatePlan> <RatePlan> <RoomTypeID>123400000000000001</RoomTypeID> <RoomType>Garden View Studio Room</RoomType> <RateTypeID>123400000000000002</RateTypeID> <RateType>Non-Refundable</RateType> </RatePlan> </RatePlans> </RoomInfo> <Errors> <ErrorCode>0</ErrorCode> <ErrorMessage>Success</ErrorMessage> </Errors> </RES_Response>
Error Codes
Code | Message |
405 | Request Parsing Error |
401 | Unauthorized request error.(Invalid auth code or Invalid hotelcode) |
400 | Temporary error! Please try again. |