The purpose of this document is to provide technical details about the API's. This document outlines the business processes supported by the API and details about specifications of API’s. It assumes that reader has a technical background and is familiar with JSON, API's.
The communication with the system is performed through https connections. The following table enlists the properties of the request that must be employed:
It is recommended that at least all booking and cancellation transactions sent through the Test / Live environment should be logged and maintained by the travel agent for at least 6 months.
In order to start testing, please notify our support team via e-mail at xmloutsupport@raynatours.comPlease note that all transactions through the test system are simply test transactions.
Please be advised few activities are available in Test Environment, Do not compare the products with Live Environment The system functionality between the Test and Live system is exactly the same except for the fact that Bookings processed in the Test environment are not sent to the Suppliers. When you have completed your development, contact your Account Manager for the activation of the access IP address of Test/Live Server is essential for whitelisting
Once you receive your Access token, you can start the development of your application/framework. The whole process of communication consists of simple JSON messages exchange (request /response) between your application/framework and system. Each request needs to be posted (through POST method) using https protocols. For details regarding requests and answers formats please consult the dedicated area of each request. For further assistance in development process do not hesitate to contact our support team.
Every product has a default transfer type and the Below id is passed along with the specific product ids.
A:We provide the REST API, request and response is in the JSON format ( JavaScript Object Notation).
A:API Services having vast pool of UAE / Singapore / Malaysia /Thailand / Hong kong Tours to help you to distribute the product globally which contains attraction / activities.
A:We provide tours time slots & tickets availability in the apis so you can select the timeslot, transfer option & tickets for adult , child , infant.
A:Yes , we provide Sandbox environment with test booking details.
Email:online@raynab2b.com
Tel:+97142087555 Ext 253|+912066838800 Ext 253
Mobile:+919823111231
Email:xmloutsupport@raynatours.com
The following sections describes the Country request and response format
{ "statuscode": Status code, "error": Error description, "url": url, "count": Country Count, "result": [ { "countryId": Country Id, "countryName": Country Name } ] }
The following sections describes the City request and response format
{ "CountryId":CountryId }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": City Count, "result": [ { "cityId": City Id, "cityName": City Name } ] }
The following sections describes the Tour static data request and response format
{ "countryId": Country Id, "cityId": City Id }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Tour Data Count, "result": [ { "tourId": Tour Id, "countryId": Country Id, "countryName": Country Name, "cityId": City Id, "cityName": City Name, "tourName": Tour Name, "reviewCount": Review Count, "rating": Rating, "duration": Duration, "imagePath": Tour Image Path, "imageCaptionName": Tour Image Caption, "cityTourTypeId": Tour Type Id, "cityTourType": Tour Type Name, "tourShortDescription": Tour Short Description, "cancellationPolicyName": Cancellation Policy Name, "isSlot":is Slot, "onlyChild": Only Child, "contractId": Contract Id } ] }
The following sections describes the Tour Static Data by Id request and response format
{ "countryId": Country Id, "cityId": City Id, "tourId": Tour Id, "contractId": Contract Id, "travelDate": Travel Date }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Tour Data Count, "result": [ { "tourId": tourId, "countryId": countryId, "countryName": countryName, "cityId": cityId, "cityName": cityName, "tourName": tourName, "reviewCount": reviewCount, "rating": rating, "duration": duration, "departurePoint": departurePoint, "reportingTime": reportingTime, "tourLanguage": tourLanguage, "imagePath": imagePath, "imageCaptionName": imageCaptionName, "cityTourTypeId": cityTourTypeId, "cityTourType": cityTourType, "tourDescription": tourDescription, "tourInclusion": tourInclusion, "tourShortDescription": tourShortDescription, "raynaToursAdvantage": raynaToursAdvantage, "whatsInThisTour": whatsInThisTour, "importantInformation": importantInformation, "itenararyDescription": itenararyDescription, "usefulInformation": usefulInformation, "faqDetails": faqDetails, "termsAndConditions": termsAndConditions, "cancellationPolicyName": cancellationPolicyName, "cancellationPolicyDescription": cancellationPolicyDescription, "childCancellationPolicyName": childCancellationPolicyName, "childCancellationPolicyDescription": childCancellationPolicyDescription, "childAge": childAge, "infantAge": infantAge, "infantCount": infantCount, "isSlot": isSlot, "onlyChild": onlyChild, "contractId": contractId, "tourImages": [ { "tourId": tourId, "imagePath": imagePath, "imageCaptionName": imageCaptionName, "isFrontImage": isFrontImage, "isBannerImage": isBannerImage, "isBannerRotateImage": isBannerRotateImage } ], "tourReview": [ { "id": id, "tourId": tourId, "reviewId": reviewId, "reviewTitle": reviewTitle, "reviewContent": reviewContent, "visitMonth": visitMonth, "rating": rating, "imagePath": imagePath, "guestName": guestName } ] } ] }
The following sections describes the Option Static Data request and response format
{ "tourId":tourId, "contractId":contractId }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Tour option Data Count, "result": [ "touroption": [ { "tourId": tourId, "tourOptionId": tourOptionId, "optionName": optionName, "childAge": childAge, "infantAge": infantAge, "optionDescription": optionDescription, "cancellationPolicy": cancellationPolicy, "cancellationPolicyDescription": cancellationPolicyDescription, "childPolicyDescription": childPolicyDescription, "xmlcode": xmlcode, "xmloptioncode": xmloptioncode, "countryId": countryId, "cityId": cityId, "minPax": minPax, "maxPax": maxPax, "duration": duration, "timeZone": timeZone } ], "operationdays": [ { "tourId": tourId, "tourOptionId": tourOptionId, "monday": monday, "tuesday": tuesday, "wednesday": wednesday, "thursday": thursday, "friday": friday, "saturday": saturday, "sunday": sunday } ], "specialdates": [], "transfertime": [ { "tourId": tourId, "tourOptionId": tourOptionId, "transferType": transferType, "transferTime": transferTime, "duration": duration } ] ] }
The following sections describes the Tour Price request and response format
{ "countryId": Country Id, "cityId": City Id, "travelDate": Travel Date, }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Tour Data Count, "result": [ { "tourId": tourId, "contractId": contractId, "amount": amount, "discount": discount, "sortOrder": sortOrder } ] }
The following sections describes the Tour Options request and response format
{ "tourId": tourId, "contractId": contractId, "travelDate": TravelDate, "noOfAdult": NoOfAdult, "noOfChild": NoOfChild, "noOfInfant": NoOfInfant }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Tour Option Data Count, "result": [ { "tourId": tourId, "tourOptionId": tourOptionId, "transferId": transferId, "transferName": transferName, "adultPrice": adultPrice, "childPrice": childPrice, "infantPrice": infantPrice, "withoutDiscountAmount": withoutDiscountAmount, "finalAmount": finalAmount, "startTime": startTime, "departureTime": departureTime, "disableChild": disableChild, "disableInfant": disableInfant, "allowTodaysBooking": allowTodaysBooking, "cutOff": cutOff, "isSlot": isSlot, "isDefaultTransfer": isDefaultTransfer, "rateKey": rateKey, "inventoryId": inventoryId } ] }
The following sections describes the Tour Timeslot request and response format
{ "tourId": tourId, "tourOptionId": tourOptionId, "travelDate": travelDate, "transferId":transferId, "contractId": contractId }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Timeslot Count, "result": [ { "tourOptionId": tourOptionId, "timeSlotId": timeSlotId, "timeSlot": timeSlot, "available": available, "adultPrice": adultPrice, "childPrice": childPrice, "isDynamicPrice": isDynamicPrice } ] }
The following sections describes the Tour Availability request and response format
{ "tourId": tourId, "tourOptionId": tourOptionId, "transferId": transferId, "travelDate": travelDate, "adult": adult, "child": child, "infant": infant, "contractId": contractId }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Array Count, "result": [ { "status": status, "message": message, "productType": productType } ] }
{ "tourId": tourId, "travelDate": travelDate, "startTime": startTime, "currentDate": currentDate, "contractId": contractId, "tourOptionId": tourOptionId }
{ "statuscode": Status code, "error": Error description, "currency": currency, "currencysymbol": currencysymbol, "errormessage": errormessage, "count": Arry Count, "result": [ { "tourId": tourId, "optionId": optionId, "fromDate": From date, "toDate": To date, "percentage": Percentage charge (Eg: 100%) } ] }
The following sections describes the Tour Booking request and response format
{ "uniqueNo": uniqueNo, "TourDetails": [ { "serviceUniqueId": serviceUniqueId, "tourId": tourId, "optionId": optionId, "adult": adult, "child": child, "infant": infant, "tourDate": tourDate, "timeSlotId": timeSlotId, "startTime": startTime, "transferId": transferId, "pickup": pickup, "adultRate": adultRate, "childRate": childRate, "serviceTotal": serviceTotal } ], "passengers": [ { "serviceType": serviceType, "prefix": prefix, "firstName":firstName, "lastName": lastName, "email": email, "mobile": mobile, "nationality": nationality, "message": message, "leadPassenger": leadPassenger, "paxType": paxType, "clientReferenceNo": clientReferenceNo } ] }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Array Count, "result": [ { "refernceNo": refernceNo, "status": status, "bookingId": bookingId, "downloadRequired": downloadRequired, "serviceUniqueId": serviceUniqueId, "servicetype": servicetype, "confirmationNo": confirmationNo } ] }
The following sections describes the Ticket request and response format
{ "uniqNO": Uniq NO, "referenceNo": Reference No, "bookedOption": [ { "serviceUniqueId": Service Unique Id", "bookingId": Booking Id } ] }
{ "statuscode": Status Code, "error": Error, "result": { "bookingId": Booking Id, "referenceNo": referenceNo, "BookingStatus": BookingStatus, "ticketURL": Ticket URL, "optionName":Option Name, "validity": Validity, "validityExtraDetails": Validity Extra Details, "printType": Print Type, "slot": Slot, "pnrNumber": pnrNumber, "ticketDetails": [ { "barCode": Bar Code, "type": "Type", "noOfAdult": No Of Adult, "noOfchild": No Of Child } ] } }
The following sections describes the Tour Cancellation request and response format
{ "bookingId": bookingId, "referenceNo": referenceNo, "cancellationReason": cancellationReason }
{ "statuscode": Status code, "error": Error description, "url": Url, "count": Array Count, "result": [ { } ] }
It is recommended that at least all booking and cancellation transactions sent through the Test / Live environment should be logged and maintained by the hotel agent for at least 6 months.
In order to start testing, please notify our support team via e-mail at xmloutsupport@raynatours.com
When you have completed your development, contact your Account Manager for the activation of the access IP address of Test/Live Server is essential for whitelisting
Before you go live you need to share pdf sample voucher after booking.
{ "code": "NOCOUNT_ERROR", "type": "GENERAL", "description": "No availability found for given criteria try search with other criteria" }
{ "code": "INTERNAL_ERROR", "type": "API_ERROR", "description": "the server was unable to process the request due to an internal error" }
The Countries API has been designed to provide All Countries data. The following sections describe the Countries API Request and Response Format.
{ "Token": "Token" }
{ "CountryId": "ID", "Name": "name" }, Example : "CountryId": "25773", "Name": "AFGHANISTAN"
The Hotel List Search API has been designed to provide list of all Hotels with display Minimum price for particular city. The following sections describe the Hotel List Search request and response format
{ "Token": “Token”, "Request": { "CountryId": "ID" } }
{ "CityId":ID, "Name": "NAME" } Example : "CityId":26467, "Name": "KABUL"
AllCitieswithCountry API has been designed to provide list of all cities with country .The following sections describe the AllCitieswithCountry in one API call request and response format.
{ "Token": "", "Request": { "onlyhotel": 0 } }
{ "cityid": ID, "cityname": "", "countryid": ID, "countryname": "" },
AllHotelsByCity API has been designed to provide list of all Hotel details for that particular City. The following sections describe the AllHotelsByCity API request and response format.
{ "Token":"Token" , "Request": { "CityId" : ID } }
{ "HotelId": ID, "HotelName": "", "Latitude": " ", "longitude": " ", "Address": " ", "Rating": " ", "IsRecomondedHotel": false },
The AllHotelsByCityFull API has been designed to provide All hotels basic data with city wise.The following sections describe the AllHotelsByCityFull API Request and Response Format.
{ "Token":"Token" }
{ "Count": " ", "HotelList": [ { "HotelId": " ", "HotelName": " ", "Description": "", "Latitude": " ", "Longitude": " ", "Address": " ", "Rating": " ", "CountryId": " ", "CountryName": " ", "CityId": " ", "CityName": " ", "HotelFrontImage": "", "IsRecomondedHotel": "FALSE", "IsActive": "", "UpdatedDate": "" } ] }
Example :{ "HotelList": [ { "HotelId": 100530, "HotelName": "A la Carte Danang", "Description": "-", "Latitude": "16.0687593", "Longitude": "108.24506140000005", "Address": "200 Vo Nguyen Giap Street, Son Tra District, Da Nang, Vietnam", "Rating": "4", "CountryId": 43240, "CountryName": "Vietnam", "CityId": 43261, "CityName": "Da Nang", "HotelFrontImage": "https://d2lzo8rjhr36c.cloudfront.net//Images/Dubai/100530/1-ThumbNail.jpg", "IsRecomondedHotel": "FALSE", "IsActive": "active" } ], "Count": 1 }
The Availability API has been designed to provide list of all Hotels The following sections describe the hotellistsearch API request and response format. Currency set up done only once account is created and you have to use that Currency for transaction with api.
{ "Token": "", "Request": { "Rooms": [ { "RoomNo": 1, "NoofAdults": 1, "NoOfChild": 1, "ChildAge": [ 1, 0 ] } ], "CityID": 1, "CheckInDate": "", "CheckOutDate": "", "NoofNights": 1, "Nationality": "", "Filters": { "IsRecommendedOnly": 0, "IsShowRooms": 1, "IsOnlyAvailable": 0, "StarRating": { "Min":0, "Max":5 }, "HotelIDs": "" } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "" } }
{ "AvailabilityRS": { "SearchKey": "", "Count": 1, "Currency": "", "HotelResult": [ { "StartPrice": 0, "HotelId": 0, "HotelOption": [ { "HotelOptionId": "", "MinPrice": 0, "IsCombineRoom": true, "HotelRooms": [ [ { "RoomNo": "", "RoomTypeName": "", "MealName": "", "Price": 0, "BookingStatus": "", "RoomToken": "" } ] ] } ] } ] } }
As we have both direct inventories and dynamic rates also so for some cases you will receive combined room in multiple room search ,so for easy to identify these rates we have now added new parameter in availability response IsCombined (true,false) if its true then rooms are combined to one room .for example : if search is forrooms :2room 1 : 1 adultroom 2 : 2 adultthen id IsCombined =true that means both rooms are combined in one (roomNo: "1") ;if False : then you recieve list of rooms(RoomNo:1,RoomNo:2).and when you try to book such combined room you have to pass pax details separately for both the rooms.-For Essential information you need to hit CancellationPolicy/Multi API
The AvailabilityWithCancellation API has been designed to provide list of Hotels with cancellation policy. The following sections describe the hotellistsearch API request and response format. Currency set up done only once account is created and you have to use that Currency for transaction with api.
The CancellationPolicy for Hotel API has been designed to provide Price of cancellation for particular Room. The following section describes API request and response format.
{ "Token": "", "Request": { "SearchKey": "", "HotelOptionId": "", "RoomToken": "" }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "" } }
{ "Error": [], "CancellationRS": { "Currency": "", "EssentialInformation": "", "CancellationPolicy": [ { "FromDate": "", "ToDate": "", "CancellationPrice": 0 }, { "FromDate": "", "ToDate": "", "CancellationPrice": 4 } ] } }
The CancellationPolicyMulti for Hotel API has been designed to provide Price of cancellation for multiple Room in single request. The following section describes API request and response format.
{ "Token": "", "Request": { "SearchKey": "", "HotelOption": { "HotelOptionId": "", "HotelRooms": [ { "RoomNo": "1", "RoomToken": " " }, { "RoomNo": "2", "RoomToken": " " } ] } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "USD" } }
{ "Error": [], "Currency": "MYR", "CancellationRS": [ { "RoomNo": " ", "RoomTypeName": " ", "MealName": " ", "EssentialInformation": " ", "CancellationPolicy": [ { "FromDate": " ", "ToDate": " ", "CancellationPrice": 0 }, { "FromDate": " ", "ToDate": " ", "CancellationPrice": } ] }, { "RoomNo": "2", "RoomTypeName": " ", "MealName": " ", "EssentialInformation": " ", "CancellationPolicy": [ { "FromDate": " ", "ToDate": " ", "CancellationPrice": 0 }, { "FromDate": " ", "ToDate": " ", "CancellationPrice": 0 } ] } ] }
The PreBook API has been designed to check availability status of booking before book. This API must hit once for one booking or you will get duplication error.The following section describes API request and response format. in case of isCombineRoom= true we are going to do one change in previous response we sending price = 0 in other rooms and in roomNo=1 we giving you total price , but in new response we divide price in each room Total price will not change.only price is divided inside room.
{ "Token": "", "Request": { "SearchKey": "", "HotelOption": { "HotelOptionId": "", "HotelRooms": [ { "RoomNo": "1", "RoomToken": "" } ] } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "" } }
{ "PreBookRS": { "HotelOption": { "HotelName": "", "Nationality": "", "BookingToken": "", "Status": "Bookable", "IsPriceChange": 0, "CheckInDate": "", "CheckOutDate": "", "TotalPrice": 0, "HotelRooms": [ { "UniqueId": 0, "RoomNo": "1", "RoomTypeName": "", "MealName": "", "Price": 0, "PriceChange": { "OldPrice": 0, "NewPrice": 0 } } ] } }, "Currency": "" }
{ "Error": [], "PreBookRS": { "HotelOption": { "HotelName": "AVANI Deira Dubai Hotel", "Nationality": "malaysia", "BookingToken": "BookingToken" , "Status": "Bookable", "IsPriceChange": 0, "CheckInDate": "01-21-2020", "CheckOutDate": "01-22-2020", "TotalPrice": 522.38, "HotelRooms": [ { "UniqueId": 158841, "RoomNo": "1", "RoomTypeName": "2 X Single room ", "MealName": "Room Only", "Price": 261.19, "PriceChange": { "OldPrice": 0, "NewPrice": 0 } }, { "UniqueId": 158842, "RoomNo": "2", "RoomTypeName": "2 X Single room ", "MealName": "Room Only", "Price": 261.19, "PriceChange": { "OldPrice": 0, "NewPrice": 0 } } ] }, "Currency": "AED" } }
The Book API has been designed to give booking details .The following section describes API request and response format. After getting response or error in book response. you have to mandatory perform booking detail api to get the actual status of booking using your internal reference or reference number from Bookresponse.
{ "Token": "", "Request": { "SearchKey": "", "BookRQ": { "BookingToken": "", "TotalPrice": 90, "InternalReference": "", "HotelRooms": [ { "UniqueId": 44144, "RoomNo": 1, "IsLead": "1", "PaxType": "Adult", "Prefix": "Mr.", "FirstName": "IOS", "LastName": "Test", "ChildAge": "0" }, { "UniqueId": 44145, "RoomNo": 2, "IsLead": "1", "PaxType": "Adult", "Prefix": "Mrs.", "FirstName": "test", "LastName": "test", "ChildAge": "0" } ] } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "USD" } }
{ "BookRS": { "BookingId": 0, "ReferenceNo": "1577MA011900115", "InternalReference": "animesh" } , "Currency": "" , "Error": [] }
API has been designed to Generate bookingDetails .The following section describes API request and response format. Only one ID can be passed. You can get booking details using either BookigID or your internalReference
{ "Token": "", "Request": { "BookingDetailRQ": { "BookingId": "0", "InternalReference": "", "ReferenceNo": "" } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "" } }
{ "BookingDetailRS": { "HotelOption": { "HotelName": "", "HotelId": "", "Nationality": "", "BookingId": "", "InternalReference": "", "CheckInDate": "", "CheckOutDate": "", "BookingDate": "", "LeadPaxName": "", "TotalPrice": "", "HotelRooms": [ { "RoomNo": "", "RoomTypeName": "", "MealName": "", "Price": "", "BookingStatus": "Confirmed", "CancellationPolicy": [ { "FromDate": "", "ToDate": "", "CancellationPrice": 0 } ], "Passenger": [ { "IsLead": "", "PaxType": "", "Name": "", "ChildAge": "" } ] } ] } } , "Currency": "" , "Error": [] }
{ "Token": "", "Request": { "CheckHotelCancellationChargesRQ": { "BookingId": "0", "InternalReference": "", "ReferenceNo": "1577MA011900115" } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "USD" } }
{ "CheckHotelCancellationChargesRS": { "HotelOption": { "BookingId": "", "TotalPrice": "", "TotalCharge": 0, "TotalRefund": "", "CancelCode": "", "HotelRooms": [ { "BookingDetailId": 0, "RoomTypeName": "", "Price": "", "RefundAmount": "" } ] } } , "Currency": "" , "Error": [] }
API has been designed to cancle booking .The following section describes API request and response format.
{ "Token": "", "Request": { "CancelRQ": { "BookingId": "", "BookingDetailId": "0", "CancelCode": "", "Reason": "" "CancelAll":1 } }, "AdvancedOptions": { "CustomerIpAddress": "11.111.111.111", "Currency": "USD" } }
{ "CancelRS": { "HotelOption": { "BookingId": "", "HotelRooms": [ { "RoomTypeName": "", "Message": "Hotel Cancelled Successfully!!!", "CancelStatus": 1 } ] } } , "Currency": "" , "Error": [] }
API has been designed to Generate bookingDetails .Date range allowed 31 days. The following section describes API request and response format.
{ "Token": "", "Request": { "BookingSearchRQ": { "SearchBy": "bookingdate", {bookingdate or checkindate}, "OnlyAPI":1, "SearchCriteria": { "Dates": { "FromDate": "03-19-2019", "ToDate": "04-19-2019" } } } }, "AdvancedOptions": { "Currency": "MYR" } }
{ "Error": [], "BookingSearchRS": { "BookingList": [ { "HotelName": "J", "HotelId": "1", "BookingId": , "InternalReference": "", "ReferenceNo": "AAA", "CheckInDate": "08-14-2019", "CheckOutDate": "08-15-2019", "BookingDate": "04-01-2019", "TotalPrice": 1, "BookingStatus": "cancelled", "IsAPI":true ,false } ], "Currency": "MYR" } }
Please go through certification process in order to get live access.
To ensure what API methods you are using, flow of method calls for these methods. This will help us to verify the integration.
Here we are providing a list of test cases needs to be executed .Request / response for these cases will be required for verification .
Technical team will verify the test cases using Request / Response and suggest if there is any change required.
After completion of step 3, you have to provide test link of your integration website to verify the integration flow.
On successful completion of all the above steps, we will give sign off and provide Live access details.
Thank you for choosing Rayna Tours & Travels as your travel partner,which hereinafter will be referred to as RTT. At RTT,we have taken all possible efforts to make this website functional, comprehensible,and extremely secure. But, prior to making a definite tour reservation with RTT , we advise you to read carefully and understand clearly the followingterms and conditions that are applicable to both travel agents and travelers whomake direct booking with RTT. Please note that when we refer toRTT, this automatically covers its owners, agents, affiliates,employees, and subsidiary companies.
RTT´s website provides information on different types ofHotels, Tour Packages, Cruises, and Transportation, aside from flight dates, timingand schedules. As a professional DMC (Destination Management Company), we endeavor to offer ourclients with both all-inclusive and individual services in accordance to clients´unique travel needs.It is vital to note that we undertake no responsibility for details provided tous by independent suppliers or third parties, especially, hotels, airlines, andother carriers. Al though, we have taken a rational approach to ensure the exactnessof such information, we cannot guarantee its accuracy and authenticity, and hencerecommend you to verify all details on or related to our website with the respectivethird party service provider or supplier itself.RTT only acts as an agent or mediator for services and packagesthat are not directly provided by us, such as accommodations and air carriers. Infact, when you decide to make a reservation of such services through our website,you will get into a separate agreement with the respective provider of that productor services. To know more about their booking terms and conditions, you can separatelycheck each and every individual booking policy while making a new booking.RTT should not be held liable for payment in such circumstancewhen a particular third party service provider is not able to offer the servicepackage that you have signed up for. Apparently, in no event, should RTT be legallyresponsible for any error, breaches, misrepresentation, omission, negligence, cancellationor delay from the part of independent contractors. If such a situation occurs, theremedy to recover your payment dwells against that third party supplier or contractorand not against RTT.All customers who wish to make reservation with RTT should be noless than 18 years of age. Moreover, in order to confirm the tour reservation, theuser is entailed to furnish accurate and complete details as per RTT´snorms. It is up to the sole discretion of RTT to take any step including the cancellationof a reservation without any prior indication to the customer, particularly if itis revealed to RTT that the inquiry made by he or she was unauthorizedor has provided wrong information or distorted the facts.The information on hotels, tour packages, pricing, flight, and other details listedon the website are subject to alterations or amendments without any prior notice.We, therefore, request our clients and other interested parties to visit our websitefrom time to time and review our terms and conditions´ most up-to-date version.You should not avail of our products and services, if you do not agree to abideby the terms and conditions outlined by the RTT.
Prior to traveling, you must make sure that you´ve obtained all documentsnecessitated by the authorities concerned to gain entry to the destination you planto visit. For a hassle-free trip, you´re further required to carry your passport,as it´s perhaps the only universally approved ID proof.
All text, information, images and content contained in this website are sole proprietary to RTT and protected by copyright laws.raynab2b.com, therefore, holds the complete authority to stop the access to all or any part of the website at any time, without any intimation, to resolve technicalissues or for any other purposes.The users or visitors may view the information provided on the website. Nevertheless, it is strictly prohibited to use the content or other materials displayed on the website for any such act as copying, publishing, altering, re-posting or selling. Moreover, any illegal use of logo, trademark or company name may subject the user to penalties.RTT is not liable for the information or materials of any other web pages linked to raynab2b.com. In fact, clicking the links of other web pagesshould be done at your own risk.
By making a reservation with RTT, the user agrees to indemnifyRTT in opposition to any damage, expense or losses as a resultof:Encroachment of RTT´s terms and conditionsFraudulent act by the user or his representatives or employeesAction, claim or proceeding by a third party in opposition to RTT due to the breaches or misrepresentations from the user´s side
RTT, its contractors, partners or suppliers do not represent that the materials provided on this website is perfect, comprehensive, or up to date.While it is true that we make constant effort to ensure the accurateness of its content, the website may contain certain imprecision and errors. We disclaim all warranties pertaining to the information, software, and service packages listed on this website. This covers every implied and express contract of non-encroachment and merchantability.RTT do not guarantee that the products or service packages made available through this website is free of any mistake or virus and would fulfill your needs. Nevertheless, by employing latest technological innovations, we striveto assure you of a safe and unperturbed booking experience with RTT.To the maximum extent permissible under the applicable law, RTT or any of its employees, agents, or managers will not be liable for any kind of damages or loss as part of the use or availing of any product or services providedthrough this website. This is applicable to damages of all nature, such as express, implied, compensatory, property damage, and third party claims.
Should you´ve any travel related query or have to face any kind of difficultiesduring your vacation, we request you to bring them to the attention of RTT´sstaff or hotel / transport service provider on immediate basis. If the complaint is not resolved to your contentment, you can forward us a formal complaint in writing within 28 days of your return. We assure you to get back to you with a practical yet sensible solution.