SEARCH NOW

Notification

×

SEARCH NOW

×

Introduction

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.

Connection properties

The communication with the system is performed through https connections. The following table enlists the properties of the request that must be employed:

Request MethodContent-Type
POSTapplication/json
The requested method.The content type.


Go-Test/Live Process

In order to start testing, please notify our support team via e-mail at [email protected].

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.

Client Requirements

  • Client requests must be issued from a public, static IP address registered with System.
  • Client requests must be made via an HTTPS POST request.
  • SSL.
  • All data sent and received via the interface will be encoded in UTF-8.

Development Phase

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.

Implementation Approach

  1. Client review of the API specifications
    1. Review of API specifications
  2. Test Environment Integration
    1. API Integration
    2. Test Execution by your Tech Team
  3. Integration Testing
    1. Determining the necessary test cases based on the API's by Our Tech Team
    2. Test Execution.
    3. Certification by Our Tech Team
  4. Production Environment
    1. API Integration
    2. Schedule Go Live Date
    3. Transaction Monitoring and Issue Resolution

Documentation and Downloads

Status & Error Code

NoStatus CodeDescription
1200OK
2400Bad Request
3401Unauthorized
4403Forbidden
5404Not Found
6500Internal Server Error
7503Service Unavailable


Image Path

Date Format

  • Date format send to Payload MM/DD/YYY

Getcitieswithhotel

The getcitieswithhotel API has been designed to provide Country and City data with available count of hotel in particular city.

The following sections describes the getgiatadatav2 API Request and Response Format


The Request URL:

http://mobileapiwithinearth.technoheaven.com/api/Hotel/GetHotelAPIDetails

JSON Request Format:


Every product has a default transfer type and the Below id is passed along with the specific product ids.

Parent TagTagDescription>Optionality
IsB2BIsB2B--
APINameAPINameAPIName is key factorMandatory
payload---
-prefixString representing prefixMandatory
tokentokenYou have to put unique token which is provided by the system.Mandatory


  • Private Transfer: This non-shared, personalized transfer is reserved exclusively for you and your travel companions.
  • Shared Transfer: When you request for this transfer, you’ll share the ride with other guests who travel on the same route.
  • Without Transfer: Skip the transfer and travel to the selected attraction or destination on your own.

Booking Status

NoBooking Status Description
1VoucheredVouchered If your booking status is vouchered, you can get supplier confirmation number which is guaranteed proof of your reservation.
2RejectedRejected The booking can be rejected due to Following reasons :Price change, allocation not available, stop sale at last minute, inventory sold out and session timed out. On rejection the amount will be credited to your wallet instantly, you can use the amount for making new booking.
3CancelledCancelled The booking can be cancelled due to Following reasons : If it is not confirmed at supplier side. It is cancelled by the user.
4CompletedCompleted It is completed at their travel date.
5InQueueInQueue For Tours like Burj Khalifa, Supplier allows confirmation 30 days prior to travel date. If Booking Status is In Queue, the booking will be Confirmed or Vouchered after 30 days.

Access Information

API NAMEAccess Type
MandatoryOptional
Static Data API
Price Request/Get Tour Price API
Tour Option API
Get Tour Time Slot API
Tour Availability Request API
Booking Request API
Booking Cancellation Request API

Ticketing tours

tree




NonTicketing tours

tree

Static Data Request

*Applicable to clients that will pull tour information as well (inclusions, description, policies, T&C)

Some data changes frequently and therefore it can be stored locally by the api client. The following types of static data will be needed to make other types of json request to fetch the json file you need to authenticate it by adding user name, password, IP to get static data for city wise tours.

Please read below for more details.

tree

Country & City Static Data

JSON code Request URL:
If you hit this URL you will get all Country & city ID with respective of its name.

Once the request is applied you will get the list of country & city. For static data as mentioned above you need to generate it country and city wise.


Static Data Response

After you have initiated the request of static data our system will process it and send you results.


Static Data Response

Request URL:

If you want Abu Dhabi data then hit the same URL with Abu Dhabi city ID(13236)

So your request URL will be
statictourdata_13668.json : Here the mentioned ID 13668 is Dubai City ID

Here you can get response of all Static data


JSON Response Format:


Parent TagTag DescriptionOptionality
TourDetailsCityTourID String representing unique CityTourIDMandatory
TourName String representing unique TourNameMandatory
ChildFromAge String representing unique ChildFromAgeMandatory
ChildToAge String representing unique ChildToAgeMandatory
InfantFromAge String representing unique InfantFromAgeMandatory
InfantToAge String representing unique InfantToAgeMandatory
CityTourTypeId String representing unique CityTourTypeIdMandatory
IsTimeSlot String representing unique IsTimeSlotMandatory
SpecialNoteWF String representing unique SpecialNoteWFOptional
CancellationPolicyID String representing unique CancellationPolicyIDMandatory
UsefulInformationID String representing unique UsefulInformationIDOptional
TermsAndConditionID String representing unique TermsAndConditionIDMandatory
FAQCategoryID String representing unique FAQCategoryIDOptional
TourImageCityTourID String representing unique CityTourIDMandatory
ImageCaptionName String representing ImageCaptionNameOptional
ImagePath String representing image Url.Mandatory
IsFrontImage String representing IsFrontImage. Boolean field: TRUE or FALSE.Optional
ImagePathThumbNail String representing ImagePathThumbNailOptional
TourDescriptionCityTourID String representing unique CityTourIDMandatory
TourDescriptionString representing TourDescription Mandatory
TourTimeCityTourID String representing unique CityTourIDMandatory
TourTimeId String representing unique TourTimeIdMandatory
DeparturePoint String representing DeparturePointMandatory
DepartureTime String representing DepartureTimeMandatory
ReportingTime String representing ReportingTimeMandatory
Duration String representing DurationOptional
TourLanguage String representing TourLanguageOptional
Meals String representing MealsOptional
TourTimeOption TourTimeOptionIdString representing unique TourTimeOptionIdMandatory
TourTimeId String representing unique TourTimeIdMandatory
OptionName String representing OptionNameMandatory
Description String representing DescriptionOptional
DepartureTime String representing DepartureTimeOptional
ByOrder String representing unique ByOrderOptional
StartTime String representing StartTimeMandatory
TourTransferCityTourID String representing unique CityTourIDMandatory
TransferId String representing TransferIdMandatory
MinimumPax String representing MinimumPaxMandatory
IsDefault String representing IsDefaultMandatory
TourCancellationPolicy CancellationPolicyId String representing unique CancellationPolicyIdMandatory
Description String representing DescriptionMandatory
IsRefundable String representing IsRefundable Boolean field: TRUE or FALSE.Mandatory
RefundPolicy String representing RefundPolicyMandatory
TourUsefulInformationUsefulInformationDetail String representing UsefulInformationDetailOptional
FAQCategory String representing FAQCategoryOptional
UsefulInformationID String representing unique UsefulInformationIDMandatory
TermsAndConditionDetailTermsAndConditionDetail String representing TermsAndConditionDetailMandatory
TermsAndCondition TermsAndCondition String representing TermsAndConditionMandatory
TermsAndConditionID String representing unique TermsAndConditionIDMandatory
TourFAQCategoryFAQCategoryDetail String representing FAQCategoryDetailOptional
FAQCategory String representing FAQCategoryOptional
FAQCategoryID String representing unique FAQCategoryIDOptional
TicketingTourTermsAndCondition CityTourId String representing unique CityTourIdMandatory
TermsAndConditions String representing TermsAndConditionsMandatory

Price Request / Get tour price

The Gettourprice API has been designed to provide list of all tour with display Minimum price for particular city. The following sections describes the Get tour price request and response format

Request URL
This URL is for fetching dynamic data


JSON Request Format:


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
Payload
CityIdPayloadString representing Unique CityId Mandatory
travelDatePayloadIt is travel date. Date should be in the format: MM/DD/YYYY Example: 07-28-2018Mandatory
TokenYou have to put unique token which is provided by the systemMandatory

JSON Response Format:


TagParent Tag Description
TourPrice
CityTourIdTourPriceString representing unique CityTourId
CityTourTypeIdTourPriceString representing unique CityTourTypeId
DurationTourPriceYou will get approximate time period
TransferIdTourPriceString representing unique ID for transfer type. IDs are as mention in Documents and Downloads section.
TransferNameTourPriceString representing unique name provided for every transfer option. Transfer names are as mention in Documents and Downloads section.
IsDiscountTourPriceDoes Tour option provides discount. For particular tour. Boolean field: 0 or 1. 0 – Not Available 1 – Available
RecommendedTourPriceIs this tour Recommended (suggested). Boolean field: 0 or 1. 0 – Not Available 1 – Available
TourTimeOptionIdTourPriceString representing unique TourTimeOptionId
FromPaxTourPriceWhich give you start range of pax
ToPaxTourPriceWhich give you end range of pax
FinalAdultAmountTourPriceIt is display price for adult
FinalAdultAmountWithoutDiscountTourPriceIt is display price for adult without discount
FinalChildAmountTourPriceIt is display price for child
FinalChildAmountWithoutDiscountTourPriceIt is display price for child without discount

Tours Option

The Tour Option API provides a list of available Tour Options with their Transfer option and final adult and child amount.

Request URL
This URL is for fetching dynamic data


JSON Request Format:


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
Payload
travelDatePayloadIt is travel date. Date should be in the format: MM/DD/YYYY Example: 07-28-2018Mandatory
TourIdPayloadString representing unique TourIdMandatory
TourTypeIdpayloadString representing unique identification for Tour category. Example: 1.City Tours 2.Desert SafariOptional
AdultPayloadYou need to pass the count Of adultsMandatory
ChildPayloadYou need to pass the count Of childMandatory
optionIdPayloadString representing unique optionId.Optional
tourtimelotidPayloadString representing unique Id for particular slot of time. EventId&TourTimeSlotId are same.Optional
TokenPayloadYou have to put unique token which is provided by the systemMandatory


JSON Response Format:


TagParent TagDescription
TourOptionPriceJsonArray contain the Default Transfer type option of tours with Price .
TourIdTourOptionPriceString representing unique TourID.
TransferIdTourOptionPriceString representing unique ID for transfer type. IDs are as mention in Documents and Downloads section
TransferMinPaxTourOptionPriceTransferMinPax Which shows you the min. pax occupancy of tour.
TourTimeOptionIdTourOptionPriceString representing unique TourTimeOptionID.
AdultAmountTourOptionPriceIt is the calculated price of particular tour option with transfer type and number of adults. (You need to pass this amount in the Booking request API)
ChildAmountTourOptionPriceIt is the calculated price of particular tour option with transfer type and number of child. (You need to pass this amount in the Booking request payload)
StartTimeTourOptionPriceStartTime is the tours Operating Time which mean that tours is started from that time.
CutOffTourOptionPrice- When the tours give you some cutoff time like 3 hr and my tours starttime is : 17:00:00 that means you can book this tours earlier of the starttime of the tour
InfantAgeTourOptionPriceAge of infant is described.
ChildAgeTourOptionPriceAge of Child is described.
TimeZoneTourOptionPriceTimeZone (UTC +04 : 00) destination time zone.
FromPax TourOptionPriceDescribes start range of pax
ToPaxTourOptionPriceDescribes end range of pax
TourOptionPriceDetailsTourOptionPriceJsonArray contains Optional Transfer tour options Price.

Get Tour Time Slot

For the static data of the city where its specified true and false (Istimeslot), where ever its True, then you need to hit the API to get the multiple time slot.



JSON Request Format:


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
Payload
TourIDPayloadString representing Unique CityIdMandatory
TourTimeOptionIdPayloadString representing TourTimeOptionId.Mandatory
travelDatePayloadIt is travel date. Date should be in following format: MM/DD/YYYY Example: 07-28-2018Mandatory
TokenYou have to put unique token which is provided by the systemMandatory

In response of gettourtimeslot API you get time slot id/Event id for particular tour option for the selected time and its availability for that particular time


JSON Response Format:


TagParent TagDescription
TimeSlotTimeSlotJsonArray contain the Tours options timeslot.
EventIDTimeSlotString representing unique ID for particular slot/Event of time.
StartDateTimeTimeSlotStartDateTime Format YYYY-MM-DDThh:mm:ss Example: 2018-07-28T00:05:00
EndDateTimeTimeSlotEndDateTime format YYYY-MM-DDThh:mm:ss Example : 2018-07-28T00:05:00
EventTypeIDTimeSlotIsXmlSupplier system processing parameter
ResourceIDTimeSlotIsXmlSupplier system processing parameter
AvailableTimeSlotCount of Available Ticket.
StatusTimeSlotIf status = 0 tickets available & status = 2 tickets not available.
TourTimeOptionIdTimeSlotString representing unique TourTimeOptionId.
IsXmlSupplierTimeSlotIsXmlSupplier system processing parameter. Boolean field:  TRUE or FALSE.
TourTimeSlotIdTimeSlotString representing unique Id for particular slot of time. EventId &TourTimeSlotId are same.

Tour Availability Request

The Availability API enables to determine if the tour has availability in real time.

Request URL
This URL is for fetching dynamic data


JSON Response Format:


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
Payload
TourIDPayloadString representing unique TourIdMandatory
TourTimeOptionIdPayloadString representing unique TourTimeOptionIdMandatory
NoOfChildpayloadYou need to pass count Of childoptional
NoOfInfantPayloadYou need to pass count Of InfantOptional
TourTimeSlotIdPayloadString representing unique TourTimeSlotIdoptional
NoOfAdultPayloadYou need to pass count Of AdultOptional
transferIdPayloadString representing unique ID for transfer type. IDs are as mention in Documents and Downloads sectionOptional
travelDatePayloadIt is travel date. Date should be in the format: MM/DD/YYYY Example: 07-28-2018Mandatory
TokenYou have to put unique token which is provided by the systemMandatory


Response

Message :

1."success"

2. "You cannot book this tour for Friday".

Booking Request

The save booking method is used to generate a Booking which contains one or more successfully booked tours. Each booked tour will have a unique reference number (Booking Code) which can be individually vouchered & cancelled.

The format of the request and response for this method is explained in the following sections.

Request URL
This URL is for fetching dynamic data


JSON Code (Single Tours):




Multiple Tour :


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
lstPassengerPayload
PaxTypeIsPassengerYou have to put PaxType like Adult, child, infant.Mandatory
Email IsPassengerYou have to put Customer EmaildMandatory
FirstNameIsPassengerYou have to put Customer FirstName.Mandatory
LastNameIsPassenger You have to put Customer LastName. Mandatory
MessageIsPassengerYou have to put Special Request from customer at time of booking.Mandatory
MobileIsPassengerYou have to put Customer Mobile number.Mandatory
PrefixIsPassengerYou have to put Customer Prefix like Mr., Miss, Ms. Mandatory
TourId IsTourDataString representing unique TourId.Mandatory
TransferIdIsTourDataString representing unique ID for transfer type. IDs are as mention in Documents and Downloads sectionMandatory
TourTimeOptionIdIsTourDataString representing unique TourTimeOptionId.Mandatory
NoOfAdultIsTourDataYou need to pass the count Of adults.Mandatory
NoOfChild IsTourDataYou need to pass the count of child.Mandatory
NoOfInfantIsTourDataYou need to pass the count of infant.Mandatory
AdultRate IsTourDataYou have to put AdultRate from response of tour option APIMandatory
ChildRateIsTourDataYou have to put ChildRate from response of tour option APIMandatory
CheckInDateIsTourDataYou have to put travel DateMandatory
ServiceTotalIsTourDataYou have to put ServiceTotal. (i.e. addition of Adult rate and child rate)Optional
StartTime IsTourDataStartTime is the tours Operating Time which means that tours is started from that time. IT should be in the string format as following: hh:mm:ss Example: "18:00:00"Mandatory
EventIDIsTourDataYou have to put tours EventID which you get from timeslot APIMandatory (Valid only for Tours having time slot)
PickDetails IsTourDataYou have to put tours PickDetailsMandatory (When Transfer type is sharing or private)
tokenYou have to put Unique token which provided by system.Mandatory


Booking Response

The voucher generation booking method ofsavebooking is used to generate a unique booking number which contains one or more tours booked. Each tours booked will have a unique reference number which could be individually cancelled. Multiple tours booked in the same booking will be grouped together by a unique booking Number.

The general format of the response is shown below:

JSON Code :


Parent TagTagDescription
BookingSuccessBookingSuccessYou will get the booking status.
BookingMasterIdYou will get BookingMasterId.
BookingdetailIdYou will get BookingdetailId.
AgentVoucherNoYou will get Ticket number .
ReferenceNoYou will get the unique booking Number.
Bookingtickets
BarcodeImagedataYou will get Barcode image data
BarCodeYou will get unique Barcode
SlotYou will get time slot
TermsAndConditionsYou will get Terms and conditions
FromDateStart date of tour
ToDateEnd date of tour
ERRORBooking FailYou will get ERROR message.

Booking Cancellation Request

The tourcancel request can be used to cancel a booking that is confirmed & booking that is saved.

Request URL
This URL is for fetching dynamic data

JSON Code :


TagParent Tag DescriptionOptionality
apinameapinameapiname is the key factorMandatory
Payload
BookingMasterIdPayloadYou have to put BookingMasterId to cancel vouchered booking Mandatory
tokenYou have to put unique token which is provided by the systemMandatory


Booking Cancellation Response

After you initiate the request of tourcancel, our system will process the request . and it will return status of the booking & Message The general format of the response is shown below:

JSON Response Format:


Tag Description
StatusYou will return the status of booking Cancellation
MessageYou will return the Message of booking Cancellation

Frequently Asked Questions

Q: Do you offer any REST/SOAP API in order to provide a communication channel to the withinearth Tours platform?

A:We provide the REST API, request and response is in the JSON format ( JavaScript Object Notation).

Q: In case there is an API, what kinds of services are available through this API?

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.

Q: Is there a way to discover available ticket options through you service? For example adult ticket day pass, child day pass, weekly pass, etc.

A:We provide tours time slots & tickets availability in the apis so you can select the timeslot, transfer option & tickets for adult , child , infant.

Q: Is there a sandbox environment available where we can perform some tests?

A:Yes , we provide Sandbox environment with test booking details.

Contact Us

In order to start testing / Live please notify our support team via e-mail at[email protected]

General Terms and conditions
RESERVATION AND CONFIRMATION

Enquiries or hotel reservations and Tour Services must be through Within Earth Holidays (WITHIN EARTH). Minimum information is required in order to handle your reservation efficienly. Please advise exact :

    • Arrival/departure dates and flights details

    • Hotel, number/type of rooms and meals required

    • Guide requirements

    • Names of clients in full with gender (Mr/Mrs/Miss etc)

    • Nationality

    • All reservation requests will be confirmed by e-mail, Online Booking System

OUR RESPONSE TIME

All bookings requested will be replied by email within 24 hours. If you do not receive any reply from us within these period, kindly resend your request as the message could be lost in transmission. Proof of sending is not proof of receipt.

OUR CONTACT

24/7 Emergency contact:  +20233380880, +20237617548, +201111072624

[email protected]

Online chat 24/7 

B2b.withinearth.com 

PAYMENT: 

Full payment must be received before cancellaiton deadline.

Failure to comply with this condition may result in the cancellation of affected reservations without prior notice. 

When making telegraphic transfers please advise us your date of remittance, your bankers and corresponding banks .

1) Foreign and personal cheques are strictly not accepted

2) Bank drafts are accepted provided they are drawn on a clearing bank. Otherwise any bank charges incurred are chargeable.

3) All outgoing bank charges including intermediary bank charges shall be borne by you. 

4) Any credit card payment made shall always be subject to incidental admin charges.

5) For credit card refund, “Refunds will be done only through the Original Mode of Payment”.

PAYMENT DISPUTE 

If there is any item of bona fide dispute arising out of or in connection with any booking, full details of the dispute shall be made known to WITHIN EARTH by you in writing to us before 15 days of arrival date, with proof that dispute was forwarded to WITHIN EARTH during the hotel stay or period of the services provided by WITHIN EARTH. You shall take all reasonable steps and provide all necessary information and co-operation as may be requested by WITHIN EARTH to resolve the dispute in the shortest time possible. 

REFUNDS OF TOURS

After commencement of tours, no refund in full or in part will be given for services included in the programme that are not utilized.

VOUCHER NUMBER 

Kindly advise the voucher number for all arrangements required to WITHIN EARTH upon confirmation. A copy of your itinerary should be accompanied with your voucher number and these items must be received by WITHIN EARTH at least 07 days prior to the arrival of your clients. Should your voucher number stipulate services other than originally required for, we reserve the right to collect the cost of such services directly from the clients unless we receive the full payment for such additional services before they are provided.

CANCELLATION PROCEDURE 

We must be notified in writing of any cancellation by email. A notice is only considered to have been served provided that an acknowledgement and acceptance by WITHIN EARTH is obtained. Proof of sending does not constitute proof of receipt nor acceptance of the cancellation notice.

Cancellation fees is charged according to the confirmed cancellation policy in the booking confirmation. You are financially obligated to follow and pay according to follow such policies specified therein, including release after cancellation arising out of your default in our terms and conditions.

Within cancellation deadline, for those booking that is no longer able to cancel without cancellation penalty, any amendment or waiver for cancellation fee or penalty is always subject to the approval of hotel accommodation provider.

Refund or amendment, including force majuere is always subject to approval of hotel accommodation provider.

CHILD FARE (02 TO 12 YEARS) 

Reduction per child is 50% of adult rate for daily tours and airport transfers. For packages which include meals and accommodation, the price is 75% of adult rate, provided they share the same room with two adults in a twin room with an extra bed provided. Otherwise the full adult fare applies.

ROOM BLOCKING

In no case is the blocking of accommodation bookings for future sales permitted. 

Changes of guest name is not permited.

LUGGAGE ALLOWANCE 

a general rule, only one piece of luggage and one carry-on bag will be allowed for each client. WITHIN EARTH reserves the right to collect payment directly from the clients for any additional costs incurred for transportation of the excess luggage.

LIMITED LIABILITY

WITHIN EARTH’ maximum liability shall be limited to the amount paid to WITHIN EARTH for each Booking.

You further agree and acknowledge that WITHIN EARTH acts only as an intermediary in making arrangements for the sale of FIT/GIT Products and Services on behalf of its suppliers and / or hotels and that only the hotel or other Supplier and Guest will be parties to the hotel contract under such terms as specified in the Voucher. WITHIN EARTH is therefore not obliged to and shall not deal with any complaints or defend itself against any claims brought by Guest. As such, you agrees and acknowledges that WITHIN EARTH is not liable for personal injury, illness, property damage or other loss of expense of any nature whatsoever arising directly or indirectly out of any actions of hotels, transportation company or other supplier in providing or rendering services reserved through WITHIN EARTH systems. Any such claim is limited and shall only be covered under the travel insurance that individual Guest need to purchase.

INDEMNITY 

You agree to indemnify, defend and hold WITHIN EARTH harmless from and against any loss or liability, including legal expenses, arising out of any and all claims, demands, debts, damages, losses, actions, suits, expenses or costs arising out of or in connection with damage to or loss of the Customer in any way sustained or alleged to have been sustained in connection with the Travel Components under this Agreement due to any negligent act or omission on the part of your agency and/or your agency’s contractors, employees, subcontractors, representatives or agents.

In addition, the Parties acknowledge and accept that neither Party is liable to indemnify or defend the other Party against any claims, damages, consequential damages, negligence, failing, fault or omission on the part of any hotel accommodation provider, owner or controller of any Travel Component and/or any third party. 

Neither Party will be liable for any special, indirect, incidental, or consequential damages.

JURISDICTIONAL SPECIAL TERMS:

The jurisdictional specific terms which apply when billing & payment is made in different currency.

You agree, represent and warrant that each Within Earth Holidays entity providing one or more of the Services under Travel Services Agreement is providing its element of the Services as an independent contractor, and not as a partner or joint venturer with the other Parties; shall be only severally liable in respect of its own obligations under this Agreement; and shall not be liable in connection with the Services provided by any other Within Earth Holidays entity, whether jointly, jointly and severally or at all.

Governing Law and Jurisdiction for payment in AED currency:

  • Any purchase, dispute or claim arising out of or in connection with booking made with Within Earth Holidays that bill in AED & accepted in AED, shall be governed and construed in accordance with the laws of UAE.
  • Provision of our travel services for billing in AED, is by WITHIN EARTH HOLIDAYS FZCO (CR: 6644) with registered address P O BOX: 103, Dubai Silicon Oasis, DDP, Building A2, Dubai, United Arab Emirates.

Governing Law and Jurisdiction for payment in other currencies:

  • Any purchase, dispute or claim arising out of or in connection with booking made with Within Earth Holidays that bill in USD or MYR & accepted in USD or MYR, shall be governed and construed in accordance with the laws of MALAYSIA.
  • Provision of our travel services for billing in USD is by WITHIN EARTH HOLIDAYS LIMITED (2642184), whose registered office is at Room 601, Albion Plaza, 2-6 Grandville Road, Tsim Sha Tsui, Kowloon, Hong Kong.
  • Provision of our travel services for billing in MYR is by WITHIN EARTH HOLIDAYS SDN BHD (854439-T), whose business address is at Suite B-09-04, Block B, 9th Floor, Megan Avenue 2, Jalan Yap Kwan Seng, 50450, Kuala Lumpur Malaysia.
Privacy Policy
Who are we?

We offer a wide range of accommodation and travel booking services (Services) across our websites, channels and platforms. We refer to all of these services, together with our applications and websites as "Services" in this Privacy Notice.

For the purposes of the General Data Protection Regulation 2016/679 ("GDPR"), and to the extent that we process personal information of our B2B Partners, we are an independent "data controller". Any personal information we collect and process in this context, is necessary to enable us to manage our business relationship with our B2B Partners (Agents and Suppliers), to supply our Services and to perform our business functions and activities, including:

  • our provision of accommodation and travel booking services;
  • the facilitation of payments for accommodation and travel booking services;
  • our compliance with our policies, procedures and legal obligations.

We are firmly committed to ensuring the privacy of the personal information we collect and to maintaining safeguards to protect personal information in our care. There may be instances where your local data protection laws impose more restrictive information handling practices than the practices set out in this Privacy Notice. Where this occurs, we will adjust our information handling practices in your jurisdiction, to comply with these local data protection laws.

How we use the personal information

We collect personal information in order to manage our business relationships and continue providing our Services. Having this information enables the efficiency of our Services and allows us to continue fulfilling our obligations to our B2B Partners. Further information about the specific purposes for which we use the personal information we collect, and the legal basis of our processing for those purposes, can be found below.

To provide the Services

We use the personal information we collect to provide our Services. In the course of conducting business, we may also work with service providers that may have access to your personal data and that process the aforementioned data in the name and on behalf of us as a result of the provision of services. The aforementioned service providers of us are included, by means of example but not limited to the following sectors: Accommodation, logistics & transport, technology and IT services.

To process and facilitate transactions and payments

While we do not store any credit cards details in facilitating payment process; we will use the personal information we collect to process transactions and payments, such as payments for accommodation and travel services;

To communicate with our B2B Partners about the Services

We use contact information we collect from our B2B Partners to send transactional communications via email and within the Services, including confirming bookings, reminders of payments due, responding to questions and requests, providing customer support, and sending notices (on the basis of performing our contractual obligations, or on the basis of our legitimate interests to provide customer service to our B2B Partners) to Travel Service Provider. We also send communications during the process of Service onboarding, to help our B2B Partners become more proficient in using our Services.

To provide and improve customer support and to respond to requests

We use B2B Partner contact information to resolve issues, to respond to requests for assistance and to ensure quality assurance and security, on the basis of our legitimate interest in improving our customer support.

To comply with our legal obligations, policies and procedures

We will not disclose any personal information unless it is required by authority, law, court order or the requirement of any regulatory body, including banking and tax reporting obligations.

How we store and secure the personalinformation we collect Information storage and security

We use reasonable technical and organisational measures to secure the personal information we hold.

We use reputable data hosting service providers to host the information we collect. We take steps to ensure that any personal information we store with our data hosting service providers is adequately safeguarded (including contractual provisions, appropriate supervision and assessment where necessary).

We cannot guarantee the security of any information or data you provide online. In the event of a serious security incident involving your personal information, we will notify you and report the incident to the relevant authorities as required by applicable law.

Security of transactions

Our outsourced payment gateway for credit card payment, are PCI DSS Level 1 Certified; that imposed on businesses that store, process, or transmit payment card data. 

How long we keep your personal information

Information we collect from our B2B Partners will be retained for the duration of our contractual relationship, and for a reasonable period thereafter. We retain this information as reasonably necessary to:

  • maintain our business records (for analysis, security, tax and/or audit purposes);
  • handle any complaints or disputes regarding the Services;
  • comply with our legal obligations and protect or defend our legal rights;
  • enforce our contractual obligations and agreements; and
  • support our business operations and continue to develop and improve our Services.
  • Where we retain information for Service improvement and development, we take steps to eliminate identifiable information, and we only use the information to uncover collective insights about the use of our Services, not to specifically analyse personal characteristics.

Once personal information is no longer needed to fulfil the purpose for which it was collected, we will take reasonable steps to securely destroy or de-identify that information unless we are prevented from doing so by law. If destruction or de-identification is not possible (for example, because the information has been stored in backup archives), then we will securely store your information and isolate it from any further use until secure deletion is possible.

Changes to our Privacy Policy

We may change this Notice from time to time. We will post any changes on this page and, if the changes are significant, we will notify you by sending you an email notification. We encourage you to review this Notice whenever you use the Services to stay informed about our information practices and the ways you can help protect your privacy. If you disagree with any changes to this Notice, you will need to stop using the Services. If we make any changes to how you can exercise your individual rights, we will notify you.

Contact Us

If you have any questions about this Privacy Notice or our privacy practices, if you need to access this Privacy Notice in a different format, or if you would like to exercise your individual rights, please contact by email or phone, at: Email: [email protected]

Cookie Policy