HOTEL XML API
Availability and Booking Request/Response
XML Interface Specification

XML Online Booking Developers Guide. Version 1.4

Copyright Policy

Information in this document is subject to change without any notice. The software in this document is subject to a license agreement or nondisclosure agreement. The software may not be used for copying following the terms of this agreement. No part of this manual may be reproduced, stored in a retrieval system, or transmitted in any form or any means electronic or mechanical, including photocopying and recording for any purpose other than the purchaser’s personal use without the written permission of HolidayLogin.
You acknowledge that HolidayLogin reserves the right to revoke the authorization to view, download, and print the materials available on this site at any time, and for any reason; and such authorization shall be deemed to be discontinued immediately upon the removal of these materials from the document.

Except where expressly provided otherwise by HolidayLogin, nothing on this document shall be construed to confer any license offer for license or sale under any of HolidayLogin or any Third Party Provider’s intellectual property rights, whether by estoppels, implication, or otherwise.
You acknowledge sole responsibility for obtaining any such licenses. Materials provided by Third Party Providers have not been independently reviewed, tested, certified, or authenticated in whole or in part by HolidayLogin and as such; HolidayLogin makes no warranty with respect to its contents.
HolidayLogin does not provide, sell, license, or lease any of the Materials other than those specifically identified as being provided by HolidayLogin.

All trademarks used herein are properties of their respective owners.

1.0 Introduction

This manual describes the specifications of XML requests and responses sent to the Hotel Booking Web Services online hotel reservation interface system. The intended audience is the client’s technical staff or the client’s system integrator.

Because all communication between the client’s system and the Hotel API interface is done through predefined JSON messages over the Internet using standard web protocols, you will need basic JSON programming skills and knowledge of SOAP (in case you want to use the web services front end) and HTTP. Where applicable, this document refers to other related documentation.

The methods will be provided to the Client by HolidayLogin; this will include all the hotels that the Client will be able to book through this interface. The data that will be passed to the Client is included in this document. We are assuming that this data will then be loaded into the Client system and that by using the unique IDs associated with each Hotel the Client will be able to perform various queries on the Tour Operators data.

The INTERFACE will allow the following functions:

  • Find the room price and availability of a specific hotel
  • Create a new booking for a specific hotel
  • Fetch details of a booking by giving a unique booking reference number.
  • All APIs support the search and booking of hotels by providing certain parameters in JSON.

HolidayLogin retains the right to make changes or improvements to the JSON specification in the future. HolidayLogin will inform the clients in advance. The client will be responsible for any action derived from those modifications in their system.

1.1 What is Hotel API service?

The Hotel API services are a set of web methods that perform core hotel search and book functionality with Holidaylogin.
HolidayLogin Hotel allows customers to perform business functions such as searching for and booking hotels. Customers can check hotel availability and rates, reserve and cancel bookings as well as retrieve a booking.

1.2 About the Developer’s Guide

This is a programmer’s guide. The purpose of this document is to provide a set of instructions, guidelines, and technical information needed to interact with WS. The developer should be familiar with the underlying technologies used, including JSON, HTTP, and SOAP.
In the document, JSON data is shown as simple text, which is used mainly for examples of JSON requests and responses. Examples are for illustration only. Any information in the examples should not be considered accurate.

1.3 Agent Registration

Before using Hotel Service, an agent must register with HolidayLogin Hotel API Service.
After the registration process is done, you will have these items associated with your account.

  • Username – a ‘login’ name for authentication
  • Password – The password for the assigned Username

During the registration process, you will need to provide us with the range of IP addresses from which you will be connecting to our servers. We will white-list these IPs. This process usually takes around 1-2 business days.

1.4 Technical Support

If you have development, production questions or problems while connecting Hotel API Service, you can contact our Technical support team Email: support@holidaylogin.com

When contacting API Support team with issues, please provide any information that can be used to help solve your challenge including the type of message and request and response messages.

1.5  Features

The Hotel API allows you to

  • Search for availability and rates of hotels for a given date range
  • Reserve a hotel for a customer
  • Cancel an existing reservation
1.6. Certification

Once development is completed a certification process is carried out to ensure the solution has met the basic requirements.

2.0 Test URL

http://apitest.holidaylogin.com/HotelServiceRest
The hotel service RestAPI authentication key will be announced in an email by our support team.

API key: 83BA****-*****-****-****-******D7F
Comp Code HL*****
Mode TEST
Endpoint UDR http://apitest.holidaylogin.com/HotelServiceRest

Your live key will be provided after you complete the integration and get a few successful confirmed reservations.

3.0 Messaging Protocol

CallMethods

Hotel Service is an interactive application ideally meant for web-based clients. Messages are sent by the client via an HTTP POST. Hotel API receives the message, performs the function, and responds back to the client immediately. The POST request data and the returned data are in JSON format. This allows for very simple serialization/deserialization with most modern languages.

4.0 HOTEL API Interface

Communicating with the Hotel Service

The XML Service will accept data via the Web. This will ensure consistency of the existing architecture and will allow the Client to maintain their existing web infrastructure. The API Client will need to use the JSON, HTTP, and POST protocol to post JSON to WEB pages.
The Client will post the JSON file onto the WEB page hosted by the Client. The Client will provide the exact URL/IP address. The Client will maintain a Test environment. The Test environment will contain valid data but will not affect any live data held by the Client.

The result of any JSON call made by the Client will be sent back to the Client in the response object of that WEB page. The methods for calling HOTEL INTERFACE that are providing for request and response are given below:

By direct HTTP Post

  • Request
  • Response
4.1 Credential

The below details need to be set for your postman.

  • Endpoint
  • Test API key
  • Comp Code
  • Mode

5.0 Supported Transactions

Hotel API supports the following functions:

Methods Description
GetCity Get City List
Hotel_Search Check the availability of hotels
Hotel_Features Get Hotel Rooms and Hotel Details
GetCancellationFee Check Cancellation Policy
Hotel_Booking_Out Book hotel
BookingCancellation_Out Cancel booked hotel

6.0 Elements

6.1 Root Elements

All API calls share a common root element. The child elements of this element are shown in the following table.

Copy to Clipboard
Elements Description
@CityName Name of City (Singapore)
@CityCode CityCode (SIN)
@ChkInDate Check In Date
(Example:- mm/dd/yyyy (12/24/2014))
@ChkOutDat Check Out Date
Example:- mm/dd/yyyy (12/25/2014)
@Duration Number of Nights Total nights (1)
@CountryName Country Name
@CountryCode Country Code
@IP_Address Your IP Address
@Comp_Curr Company Currency Code USD (All Major Currency)
@Agent_Curr Agency Currency Code USD (All Major Currency)
@Gross_Curr Search Currency Code USD (All Major Currency)
@LangCode Language Code (Default-GB)
@Nationality Nationality(ISO Code)
@NationalityName Nationality Name
@RCountry Country Code of Residence Country (Optional)
@RCountryName Residence Country Name (Optional)
@LocationCode Values will be Blank
GUID Unique GUID
CompanyId Company Code
Channel It Should be :- subagent
SubChannel It Should be :- True
IsApiUser It Should be :- True
APIKey Provided by HolidayLogin
APIMode TEST for Development Phase, LIVE for Production.
Id Provided by HolidayLogin
UserId Provided by HolidayLogin
StaffId Provided by HolidayLogin
BranchId Provided by HolidayLogin
SaBranchId Provided by HolidayLogin
ServiceType It Should be :- Hotel

7.0 Hotel API Methods

7.1 Hotel Search

This specification outlines the INTERFACE that will be available to allow information to be passed to and from the HOTEL API INTERFACE used by a Client.
The INTERFACE will be accessible via either by Http post or by direct Proxy protocol IP address.
The INTERFACE will be provided to the Client, which will include all the locations, which the Client will be able to search via this interface.
The data that will be passed to the Client is included in this document. We are assuming that this data will then be loaded into the Client’s system and that by using the ‘locations’ that Client will be able to perform searches on the data.

The interface will allow the Client to perform the following functions:

Copy to Clipboard

Input Parameters:

Copy to Clipboard
Parameter Description
HIndex Unique Hotel Index number
HName Hotel Name
HDes Hotel Description
Add Hotel Address
Star_Rating Hotel Rating
Front_Image Hotel Image URL
Lattitude Lattitude
Longitude Longitude
Min_Price Minimum Price
Max_Price Maximum Price
TripAdvisor TripAdvisior Rating Or Review (Optional)
TripAdvisorURL TripAdvisior URL (Optional)
Type Type of Hotel (Ex: Hotels or Apartments)
7.2 Hotel Features

The interface will allow the Client to perform the following functions:

Copy to Clipboard

Input Parameters:

Parameter Description
@HIndex Hotel Index

 

Input Parameters:

Copy to Clipboard

Input Parameters: Including with Hotel and Room Availability.

7.3 Cancellation Policy

The interface will allow the Client to perform the following functions:

Copy to Clipboard
Parameter Description
Hotel_Details/ Hotel (as it is rec’d in avail response)
Hotel_Details/ Hotel/ Occupancy List OccupancyList Need to be Append in Request
@AdultCount Total Adult Count
@ChildCount Total Child Count
@RoomType Room Type Name
@ExtraBed Blank
Title Blank
First_Name Blank
Last_Name Blank
Copy to Clipboard
Parameter Description
@AllowBooking Booking Allow or Not(Optional)
@PriceChange Price Change (true Or False)
@PriceDiff The difference in the price
@DateFrom Policy date from
@DateTo Policy date to
@Tax_Value Tax Values(Optional)
@Desc Policy description
@Gross_Price Gross Price

Note:

  1. If AllowBooking is false then don’t send a Booking Request.
  2. If you don’t get a CancelltionPolicy Response then don’t send a Booking Request.
  3. PriceChange and PriceDiff will be available in the response if there is any change in the price
7.4 Hotel Booking

The interface will allow the Client to perform the following functions:

Copy to Clipboard
Parameter Mandatory
Master Yes (Received in Avail Resposne)
Authentication Yes (Received in Avail Resposne)
Hotel Yes
OccupanyList Yes
Copy to Clipboard
Parameter Description Reamrks
Booking_ID Hotel Booking ID Show on Voucher
Status Booking Status Show on Voucher
SupplierRef Supplier Ref No. Show on Voucher
Our_Booking_Ref (Optional) Optional
ReservationRef For Internal Reference Show On Voucer
ReservationId For Internal Reference For Internal Reference
File_No Optional
IncomingOfficeCode Show on Voucher If it is not blank
ContractName Show on Voucher
Reservation Status

Confirmed

Booking Confirmed

Pending

Booking not confirmed yet

OnRequest

Booking On-Reqeust

Cancelled

Booking Cancelled
7.5 Hotel Cancellation

The interface will allow the Client to cancel the hotel.

Copy to Clipboard
Parameter Mandatory
Authentication Yes
Booking_Id Yes
ReservationRef Yes
ReservationId Yes
Copy to Clipboard
Status

CANCELLED – Booking Cancelled
CANCELLATION PENDING – Booking cancellation is in process. UNPROCESSED – Cancellation unprocessed
PENDING – Booking cancellation is in process
INPROGRESS– Booking cancellation is in process PROCESSED– Booking Cancelled
REJECTED– Booking Rejected

7.6 Sample Request
Copy to Clipboard
Copy to Clipboard
7.7 Room Search

The room search method will return the list of rooms for the requested hotel.

Input Parameters:

Parameter Description
@HIndex Hotel Index
Copy to Clipboard

8.0 Static Data Methods:

8.1 Country List:

Input Parameters:

Parameter Description
CompCode CompCode
APIKey APIKey
APIMode API Mode
Copy to Clipboard
Copy to Clipboard
8.2 City List:

Input Parameters:

Parameter Description
CountryCode ISO Country Code
CompCode Company Code
APIKey API Key
APIMode API Mode
Copy to Clipboard
Copy to Clipboard

9.0 Developer Section Help:

This Section is for all the cases of search Requests. Need to see the attached JOSN Request and Response.

Copy to Clipboard

10.0 Troubleshooting

Copy to Clipboard
Copy to Clipboard
Copy to Clipboard

Step 1) Please provide the Available IP to us that you are testing for.
Step 2) After providing the IP we will send you the username and password.
Step 3) Even if your IP didn’t communicate with us then please check your firewall.

If the rate is not available from the supplier in the prebook or the rate change. Then we return the default non-refundable policy [Starting from Booking Date to Travel Date] and Add AllowBooking as False.
So, the client can stop the booking process in this case. Kindly request the client to not send a booking request if AllowBooking appears False in the cancellation policy response.

11.0 Testing of Client’s Test URL

This step is mandatory for testing of URL where the client has integrated the web services/JSON of hotels. Post-testing of this URL the Live access would be provided.

The purpose of the testing at our end would enable us to scan and plug the bugs that might have occurred while integrating the booking engine.
This process would take a minimum of 7- 10 working days.