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

RequestvalueDescription
Request MethodPOSTThe requested method.
Content-Typeapplication/jsonThe content type.


Request/Response

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.

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.
  • we use deflate compression for response.

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.

Status & Error Code

NoStatus CodeDescription
1200OK
2400Bad Request
3401Unauthorized
4403Forbidden
5404Not Found
6500Internal Server Error
7503Service Unavailable
8429Too Many Requests (QPS Limit exceeds)

Process Flow Diagram

img

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. Before you go live you need to share pdf sample voucher after booking.

  4. Production Environment
    1. API Integration
    2. Schedule Go Live Date
    3. Transaction Monitoring and issue Resolution

Important note

  • Follow these guidelines when searching for properties for your test bookings, even for static tests. Being diligent in your property selection will help you avoid incurring any accidental charges during your booking tests.
  • Please use city id : 20097 = kuala lumpur. for testing purpose.
  • To use different nationality of different countries use same name in countries api response.
  • Verify the booking will be outside of the hotel's cancellation policy.
  • Never pick next-day or same-day availabilities, even to test promos.
  • Shop a few months ahead whenever possible.
  • Use Real Name for first name and last name.Do not use test name.
  • Never automate static booking tests -we may flag or temporarily disable your account.
  • Shopping at least a few months ahead and paying attention to Policy will help you avoid the most common problems with test bookings. Remember, client is not responsible for any unintentional live or nonrefundable bookings you place during testing.
  • Make sure you cancel each test booking using api, if face any issue in cancellation contact us immediately.
  • Always do refundable feature booking and cancel booking after done.
  • No duplication allowed for internalreference, it must be unique for each time you hit that api.

Documentation and Download


JSON Request Format:-


JSON Response Format:-


Date Format

  • Date format send to Payload MM-DD-YYYY

Error and Description

ErrorCode ErrorType ErrorDescription
INTERNAL_ERRORAPI_ERROR The server was unable to process the request due to an internal error
NOTPERMITTED_ERRORPermission1.Bookings within cancellation deadline are not permitted for this User.

2.Bookings are not permitted for this User.
CacheNotAvailableCacheNotAvailableAccess to one of the cache failed. The cache for this search key is no longer available
DUPLICATION_ERRORDuplicate1.Bookings within cancellation deadline are not permitted for this User

2.Booking token already exist for this criteria
MISMATCH_ERRORMismatch1.Pricing could not complete - rate missing.

2.Data mismatch from previous response.
CacheNotAvailableCacheNotAvailableAccess to one of the cache failed. The cache for this search key is no longer available
INVALID_REQUESTRequestErrorRequest is not well formed please check and try again.
NOCOUNT_ERRORGENERAL1.No record found for given criteria

2.No availability found for given criteria try search with other criteria

Countries

The Countries API has been designed to provide All Countries data. The following sections describe the Countries API Request and Response Format.

JSON Request format:

TagDescription Optionality
TokenYou have to put unique token which is provided by the systemMandatory

JSON Response format:


TagDescription
CountryIdRepresent unique CountryId.
NameRepresent Name

Cities

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

Request URL


JSON Request Format:


Parent TagTag DescriptionOptionality
RequestCountryIdRepresents unique CountryId Mandatory
TokenTokenYou have to put unique token which is provided by the systemMandatory

JSON Response Format:

TagDescription
CityIdRepresents unique CityId.
NameRepresents unique city name.

All Cities with Country

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.


JSON Request Format:



Parent TagTag DescriptionOptionality
TokenTokenYou have to put unique token which is provided by the system. Mandatory
RequestonlyhotelRepresents onlyhotelonlyhotel: 1 you will get all cities
onlyhotel: 0 you will get active cities

JSON Response Format:

Tag Description
cityidRepresents cityid
citynameRepresents cityname
CountryidRepresents Country id
countrynameRepresents country name.

All Hotels By City

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.


JSON Request Format:



Parent TagTag DescriptionOptionality
RequestCityIdRepresents unique CityIdMandatory
TokenTokenYou have to put unique token which is provided by the system.Mandatory

JSON Response Format:

Tag DescriptionOptionality
HotelIdRepresents HotelIdMandatory
HotelNameRepresents HotelName Mandatory
LatitudeRepresents LatitudeMandatory
longitudeRepresents longitudeMandatory
AddressRepresents AddressMandatory
RatingRepresents RatingMandatory
IsRecomondedHotel-Mandatory

Availability

      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.


JSON Request Format:



Parent TagTag DescriptionOptionality
RoomAn array represents Room Mandatory
RoomNoRepresents RoomNo Mandatory
NoofAdultsRepresents total number of AdultsMandatory
NoOfChildRepresents total number of child. Mandatory
ChildAgeArray represents child Age. (1 to 12)Mandatory
CityIDRepresents unique CityID.Mandatory
NationalityRepresents unique Nationality.Mandatory
CheckInDateRepresents CheckInDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018Mandatory
CheckOutDateRepresents CheckOutDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018Mandatory
NoofNightsRepresents number of NightsMandatory
currencyRepresents currency Mandatory
IsShowRooms1 Show Rooms 0 HotelOnly Mandatory
IsRecommendedOnly1 Only Preferred Hotels 0 All Hotels Mandatory
IsOnlyAvailable1 Available only 0 Include OnrequestMandatory
StarRatingSelection of star rating between two categories.
Minmin=min star rating0 star rating for unspecified or apartment
maxmax=max star ratingMandatory
HotelIDsRepresents list of comma seperated HotelIDs by cityOptional
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:

Tag Description
CountRepresents Count.
SearchKeySearchKey will use in next steps ,expires after 25 minutes. You have to do booking within that time limits.
Start priceRepresents unique Price
HotelIDRepresents unique Hotel id
HotelCodeRepresents unique hotel code
CurrencyRepresents Currency.
HoteloptionArray display detail.
HoteloptionIdRepresents unique hoteloptionid
MinPriceRepresent Min Price
IsCombinedTrue = Multiple rooms are combined in one
False = recieve list of rooms
HotelRoomsArray display details
RoomNoRepresents room number. You will get some combine rooms for multiple rooms search.
RoomTypeNameRepresents room type
MealNameRepresents MealName
MappedMealName Represents mealname mapped in the system, "NotMapped" Represent not in the system
PriceRepresents Price
BookingStatusRepresents BookingStatus.
RoomTokenIt display unique AvailToken which is provided by the system

Note:

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 for
rooms :2
room 1 : 1 adult
room 2 : 2 adult
then 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

AvailabilityWithCancellation

      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.


JSON Request Format:



Parent TagTag DescriptionOptionality
RoomAn array represents Room Mandatory
RoomNoRepresents RoomNo Mandatory
NoofAdultsRepresents total number of AdultsMandatory
NoOfChildRepresents total number of child. Mandatory
ChildAgeArray represents child Age. (1 to 12)Mandatory
CityIDRepresents unique CityID.Mandatory
NationalityRepresents unique Nationality.Mandatory
CheckInDateRepresents CheckInDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018Mandatory
CheckOutDateRepresents CheckOutDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018Mandatory
NoofNightsRepresents number of NightsMandatory
currencyRepresents currency Mandatory
IsShowRooms1 Show Rooms 0 HotelOnly Mandatory
IsRecommendedOnly1 Only Preferred Hotels 0 All Hotels Mandatory
IsOnlyAvailable1 Available only 0 Include OnrequestMandatory
StarRatingSelection of star rating between two categories.
Minmin=min star rating0 star rating for unspecified or apartment
maxmax=max star ratingMandatory
HotelIDsRepresents list of comma seperated HotelIDs by cityOptional
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:

Tag Description
CountRepresents Count.
SearchKeySearchKey will use in next steps ,expires after 25 minutes. You have to do booking within that time limits.
Start priceRepresents unique Price
HotelIDRepresents unique Hotel id
HotelCodeRepresents unique hotel code
CurrencyRepresents Currency.
HoteloptionArray display detail.
HoteloptionIdRepresents unique hoteloptionid
MinPriceRepresent Min Price
IsCombinedTrue = Multiple rooms are combined in one
False = recieve list of rooms
HotelRoomsArray display details
RoomNoRepresents room number. You will get some combine rooms for multiple rooms search.
RoomTypeNameRepresents room type
MealNameRepresents MealName
MappedMealName Represents mealname mapped in the system, "NotMapped" Represent not in the system
CancellationPolicyRepresents cancellation policy
PriceRepresents Price
BookingStatusRepresents BookingStatus.
RoomTokenIt display unique AvailToken which is provided by the system

Note:

- 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 for
rooms :2
room 1 : 1 adult
room 2 : 2 adult
then 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

Cancellation Policy

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.


JSON Request Format:



Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
RequestSearch key
HotelOptionIdRepresents unique HotelOptionID. Mandatory
RoomTokenUnique RoomToken which is provided by the system.Mandatory
currencyRepresents currency Mandatory
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory

JSON Response Format:

Parent TagTag Description
CancellationPolicyFromDateRepresents FromDate
ToDateRepresents ToDate.
CancellationPriceRepresents cancellation price.
CurrencyRepresents Currency.

Cancellation Policy Multi

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.


JSON Request Format:



Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
RequestSearch key
HotelOptionIdRepresents unique HotelOptionID. Mandatory
HotelRoomsRepresents HotelRoomsMandatory
RoomTokenRepresents RoomNoMandatory
RoomTokenUnique RoomToken which is provided by the system.Mandatory
AdvancedOptions
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:

Parent TagTag Description
Error
ToDateRepresents ToDate.
CurrencyRepresents Currency
CancellationRS
RoomNoRepresents RoomNo
RoomTypeNameRepresents RoomTypeName
MealNameRepresents MealName
EssentialInformationRepresents EssentialInformation
CancellationPolicyFromDateRepresents FromDate
ToDateRepresents ToDate
CancellationPriceRepresents cancellation price.

PreBook

The PreBook API has been designed to check availability status of booking before book.This APImust hit once for one booking or you will get duplication error.The following section describesAPI request and response format.in case of isCombineRoom= true we are going to do one change inprevious response we sending price = 0 in other rooms and in roomNo=1 we giving you total price , butin new response we divide price in each room Total price will not change.only price is divided insideroom.

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
RequestSearch key
HotelOptionIdRepresents unique HotelID.Mandatory
HotelRoomsAn array represents room details Mandatory
RoomNoRepresents room numberMandatory
RoomTokenUnique RoomToken which is provided by the system. Mandatory
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:


JSON Response (Example ) IsCombineRoom=true


Parent TagTag Description
PreBookRS
HotelOption
HotelNameRepresents HotelName
Nationality Represents Nationality
BookingTokenUnique BookingToken which is provided by the system. And used for final booking request
Status If status is bookable than only proceed for booking.
IsPriceChange0 Represents Not Change in IsPriceChange
1 you have to notify price to customer before booking
CheckInDate Represents CheckInDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
CheckOutDateRepresents CheckOutDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
TotalPriceRepresents TotalPrice
HotelRoomsArrary represents Hotelrooms
UniqueIdRepresents UniqueId
RoomNoRepresents RoomNo
RoomTypeNameRepresents RoomTypeName
MealNameRepresents MealName
PriceRepresents Price
PriceChange Represents PriceChange
OldPrice Represents OldPrice
NewPrice Represents NewPrice
Currency Represents Currency.

Book

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.

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
RequestSearch key
BookBookingTokenUnique BookingToken which is provided by the system.Mandatory
TotalPriceRepresents Price Mandatory
InternalReferenceyour internal reference. should be 10 max character (No duplication allowed)Mandatory
HotelRoomsAn array represent HotelRoom Details. Mandatory
UniqueIdRepresents UniqeIdMandatory
RoomNoRepresents RoomNoMandatory
IsLead0 Represents No IsLead
For 1 booking you have to set ISLead = 1 and IsLead passeger must adult.
Mandatory
PaxTypeRepresents Adult / Child.Mandatory
PrefixRepresents Mr. / Mrs. /Ms.Mandatory
FirstNameRepresents FirstNameMandatory
LastNameRepresents LastNameMandatory
ChildAgeRepresents ChildAgeMandatory
UniqueIdRepresents UniqeIdMandatory
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:


Parent Tag TagDescription
BookRS
BookingId Represents BookingId
ReferenceNoYou need to show reference number on your voucher.
InternalReferenceRepresents InternalReference
CurrencyRepresents Currency.
ErrorArray Represents Error

Booking Detail

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

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
Request
BookingDetailRQ
BookingIdRepresents BookingId Optional
InternalReferenceRepresents InternalReference optional
ReferenceNoRepresents ReferenceNooptional
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:


Parent TagTag Description
BookingDetailRS
HotelOption
HotelNameRepresent HotelName
HotelId Represent HotelId
Nationality Represent Nationality
BookingId Represent BookingId
InternalReferenceRepresents InternalReference
CheckInDate Represents CheckOutDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
CheckOutDateRepresents CheckOutDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
BookingDateRepresents BookingDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
LeadPaxNameRepresents LeadPaxName
TotalPriceRepresents TotalPrice
HotelRooms Array Represents HotelRooms
BookingStatusRepresents booking status with details
Vouchered : Confirmed
Confirmed : Confirmed
Completed : Travel done.
Cancelled : booking cancelled
On Request : On Request
Not Confirmed : Not Confirmed
Cancel Charge: cancel charges if any for booking
RoomNoRepresents RoomNo
RoomTypeNameRepresents RoomTypeName
MealName Represents MealName
Price Represents Price
CancellationPolicy Array represents CancellationPolicy
FromDate Represents FromDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018
ToDate Represents ToDate. Date should be in the format: MM-DD-YYYY Example: 08-12-2018
CancellationPriceRepresents CancellationPrice
PassengerNo special character allowed max length 20 character. Douplication passenger not allowed.
IsLeadRepresents lead pax
PaxTypeRepresents Adult / Child
PrefixRepresents Mr./Ms./Miss
NameRepresents Name
ChildAgeRepresents ChildAge
CurrencyRepresents Currency.
ErrorArray Represents Error

Check HotelCancellation Charges

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
Request
CheckHotelCancellationChargesRQ
BookingIdRepresents BookingId Mandatory
InternalReferenceyour internal reference.Mandatory
ReferenceNoMandatory
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory

JSON Response Format:


Parent Tag TagDescription
CheckHotelCancellationChargesRS
HotelOptionRepresents HotelOption
BookingIdRepresents BookingId
TotalPriceRepresents TotalPrice
TotalChargeRepresents TotalCharge
TotalRefundRepresents TotalRefund
CancelCodeRepresents CancelCode
HotelRoomsAn Array Represents HotelRooms
BookingDetailIdRepresents BookingDetailId
RoomTypeNameRepresents RoomTypeName
PriceRepresent Price
RefundAmountRepresents RefundAmount
CurrencyRepresents Currency.
ErrorAn Array Represent Error

Cancel Booking

API has been designed to cancle booking .The following section describes API request and response format.

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
Request
CancelRQBookingIDRepresent BookingIDMandatory
BookingDetailIdBookingDetailIdValue = 0 to cancel whole booking.
CancelCodeCancelCodeMandatory
ReasonRepresents ReasonMandatory
CancelAllCancelAllValue = 1 to cancel whole booking.
CustomerIpAddressRepresents CustomerIpAddress Ip address of final end user Mandatory
currencyRepresents currency Mandatory
Note : To cancel whole booking you must have to pass cancelAll with value 1 and BookingDetailId=0

JSON Response Format:


Parent TagTag Description
CancelRS
HotelOption
BookingId Represents BookingId
HotelRoomsArray Represents HotelRooms
RoomTypeName Represents RoomTypeName
MessageRepresents Message
CancelStatus1 Represents booking cancel
Currency Represents Currency.
ErrorArray Represents Error

Booking Search

API has been designed to Generate bookingDetails .Date range allowed 31 days. The following section describes API request and response format.

JSON Request Format:


Parent TagTag DescriptionOptionality
TokenTokenToken Mandatory
RequestMandatory
BookingSearchRQMandatory
SearchBySearch By BookingDate or CheckingDate Mandatory
OnlyAPI0 Represents All booking
1 Represents only apibookings
Mandatory
SearchCriteria
Dates
FromDateRepresents FromDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
Mandatory
ToDate Represents ToDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
Mandatory
AdvancedOptionsCurrency Represents CurrencyMandatory
Note : OnlyAPI = 0 Represents All booking OnlyAPI = 1 Represents Api booking

JSON Response Format:


Parent TagTag Description
Error
BookingSearchRS
BookingList
HotelName
HotelIdRepresents HotelId
InternalReference Represent InternalReference
ReferenceNo Represent ReferenceNo
CheckinDate Represents CheckinDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
CheckOutDate Represents CheckOutDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
BookingDate Represents BookingDate.
Date should be in the format:
MM-DD-YYYY
Example: 08-12-2018
TotalPrice Represents TotalPrice
BookingStatus Represents BookingStatus
IsAPI IsAPI = True Represents booking made via api IsAPI = False Represents booking made direct on client portal
Currency Represents Currency.

Certification process

Please go through certification process in order to get live access.

Step 1 : Work Flow.

To ensure what API methods you are using, flow of method calls for these methods. This will help us to verify the integration.

Step 2 : Test Cases Execution by client.

Here we are providing a list of test cases needs to be executed .
Request / response for these cases will be required for verification .

[Test 1] :
Room 1 – Adult 1 (1 night)
[Test 2] :
Room 1 – Adult 2, Child 2 (3 night)
[Test 3] :
Room 1 – Adult 1 | Room 2 – Adult 1 both (2 night)
[Test 4] :
Room 1 – Adult 1, Child 1 | Room 2 – Adult 1 (1 night)
Provide Logs As below
[Test 1] : Availability→CancellationPolicy→PreBook→Book
BookingDetail→CheckHotelCancellationCharges→CancelBooking.

Step 3: Test Verification

Technical team will verify the test cases using Request / Response and suggest if there is any change required.

Step 4: Client Portal verification

After completion of step 3, you have to provide test link of your integration website to verify the integration flow.

Step 5: Sign off and Live access

On successful completion of all the above steps, we will give sign off and provide Live access details.

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