Download OpenAPI specification:Download
Version | Update Item | Date |
---|---|---|
Hotel API V2 | Update the prebook api to "Prebook V2" | March 18, 2024 |
Hotel API V2 | Update required field for content API request | September 3rd, 2024 |
Hotel API V2 | Update the response display (Search API, Create API) | October 14th, 2024 |
Hotel API V2 | Input upcomming JSON search API | October 17th, 2024 |
Hotel API V2 | Update multisearch mock request | October 23rd, 2024 |
Hotel API V2 | Update Prebook Schema information and FAQ | January 07th, 2025 |
Hotel API V2 | New Content Pull API | Feb 19th, 2025 |
Hotel API V2 | Input sample for Search and Prebook FAQ | March 04th, 2025 |
Hotel API V2 | Update Integration Overview and FAQ revamp | March 19th, 2025 |
Tiket.com B2B Hotel API.
Welcome to the Tiket.com Hotel API guide tailored specifically for B2B developers. Whether you're an experienced professional or new to integrating APIs, this guide will provide you with the necessary insights to seamlessly incorporate hotel booking functionality into your applications.
This guide serves as a comprehensive resource to acquaint you with the Tiket.com Hotel API. Here, you'll find essential information on integrating our API into your B2B platforms, accessing detailed technical documentation for thorough understanding, navigating through Hotel API FAQ for quick reference.
This section is designed to guide you through the optimal integration and usage of our API, ensuring that you and your users get the most out of the products we offer. Our goal is to help you implement a seamless, efficient, and effective connection between your platform and our services.
The integration process consists of five key phases to ensure a smooth and successful launch:
Please follow the sample url based on the environment your are use.
Sandbox purposes for test integration & development process, and Production for real production connections.
Endpoint | URL Format |
---|---|
Sandbox | https://api.tiketsandbox.net/b2b-gateway/[services]/[service] |
Production | https://api.tiket.com/b2b-gateway/[services]/[service] |
This is the service endpoint url for each API Operation
Operations | Method | Endpoint |
---|---|---|
Search | POST | /tix-hotel-b2b-search-service/hotel |
Prebook | POST | /tix-hotel-cart-b2b/v2/prebook |
Create Reservation | POST | /tix-hotel-cart-b2b/cart/create |
Cancel Reservation | POST | /tix-hotel-cart-b2b/cart/cancel |
Content Pull | GET | /accommodation/content/property?id={} |
Authentication Steps to do before using other endpoints.
Tiket.com B2B API uses Basic Auth for Authentication Process.
Partner can use one of these two ways to provide Authentication data for the requests:
Header
Partner can encode Username and Password using Base64 Encryption with format as described below:
Header:
Authorization="Basic <base64(Username:Password)>"
Body
Partner can also provide the data inside the Body using tag POS with format as described below:
<POS>
<Source>
<RequestorID ID="<Username>" MessagePassword="<Password>" Type="<OTA_CodeType>">
<CompanyName Code="<Company_Code>" CodeContext="<Context_of_Identifying_Code" />
</RequestorID>
</Source>
</POS>
Example Request:
Body:
<OTA_HotelResRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006040226" TimeStamp="2020-06-04T14:26:42.186+08:00" Version="2.8">
<POS>
<Source>
<RequestorID ID="Username" MessagePassword="Password" Type="5">
<CompanyName Code="C" CodeContext="1220"/>
</RequestorID>
</Source>
</POS>
...
</OTA_HotelResRQ>
To ensure a smooth integration, please follow the detailed requirements below:
1. Provide URL Endpoints for Testing and Production Environments
We need the following URLs from your side so we can send data to your application:
Both URLs must support HTTPS for secure data transmission and be ready to accept data in SOAP XML format.
2. Map Property Types, Hotel Chains, and Facilities
We use specific classifications for property types, hotel chains, and facilities that may differ from yours. To ensure the data aligns correctly in your system, you will need to map these attributes to your own classifications.
How We Deliver the Data:
Need Help?
If you encounter any issues or need further clarification, please feel free to reach out to our support team. We are here to assist you throughout the integration process.
Thank you for your cooperation!
Tiket use this Hotel Content format to push new hotel in a partner system or update the content on the existing hotel.
required | object |
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <soap:Envelope xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns4="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <ns4:OTA_HotelDescriptiveContentNotifRQ TimeStamp="2022-12-15T17:35:16.400531+07:00" Target="Test" Version="1.0" PrimaryLangID="en-US"> <ns4:POS> <ns4:Source> <ns4:RequestorID MessagePassword="<Password>" Type="1" ID="partner@email.com"> <ns4:CompanyName Code="<code>" CodeContext="<code-context>"></ns4:CompanyName> </ns4:RequestorID> </ns4:Source> </ns4:POS> <ns4:HotelDescriptiveContents HotelCode="ea83d331-3304-4caa-abe0-ab68ef63d480" ChainName="Independent"> <ns4:HotelDescriptiveContent> <ns4:HotelInfo HotelStatus="Active" HotelCategory="" WeightValue="130623.0"> <ns4:Descriptions> <ns4:MultimediaDescriptions> <ns4:MultimediaDescription> <ns4:TextItems> <ns4:TextItem Title="Hotel Danau Toba International Hermina Parapat" Language="en-US"> <ns4:Description>Located in Parapat, a small town in North Sumatra province on the edge of Lake Toba, on the Uluan Peninsula where it forms the narrowest eastern link to Samosir Island.
With stunning view of Lake Toba from your room and fresh air to relaxed your mind.</ns4:Description> </ns4:TextItem> </ns4:TextItems> </ns4:MultimediaDescription> </ns4:MultimediaDescriptions> </ns4:Descriptions> <ns4:Position Latitude="2.66450" Longitude="98.93442"></ns4:Position> <ns4:Services> <Service Code="1088322683"></Service> </ns4:Services> </ns4:HotelInfo> <ns4:Policies> <ns4:Policy> <ns4:PolicyInfoCodes> <ns4:PolicyInfoCode> <ns4:Description> <ns4:Text Language="en-US"></ns4:Text> </ns4:Description> </ns4:PolicyInfoCode> </ns4:PolicyInfoCodes> <ns4:PolicyInfo CheckOutTime="12:00"></ns4:PolicyInfo> </ns4:Policy> </ns4:Policies> <ns4:AffiliationInfo> <ns4:Awards> <ns4:Award Rating="0" RatingSymbol="Star"></ns4:Award> </ns4:Awards> </ns4:AffiliationInfo> <ns4:MultimediaDescriptions> <ns4:MultimediaDescription> <ns4:ImageItems> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/eee30984-5afd-4621-a240-c8298585ff58-1575359636086-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/4b146acd-8ade-4cad-b71c-4ab3212ebdce-1575359636137-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/1fc7838a-24bf-4b17-891c-dda0bfc48ff6-1575359636137-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359669/tix-hotel/images-web/2019/12/03/4a878a6d-384a-4223-b021-c4555d3092a5-1575359667637-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">View</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359648/tix-hotel/images-web/2019/12/03/a13d4cae-6a09-4e7c-8567-2e3bc84fdcac-1575359646629-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">View</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359638/tix-hotel/images-web/2019/12/03/582ec6fd-fce0-4507-a918-4dbcbecad5a2-1575359636090-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">View</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/edd0c920-902d-45c4-a4a2-6265cfc65d5e-1575359636086-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359638/tix-hotel/images-web/2019/12/03/0504f9ca-0edc-4da4-bab6-2eb3b6eef129-1575359636137-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/b81b0a12-9f50-4267-85c6-b8046ff6d877-1575359636133-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Exterior</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/cdcec562-a8a8-4b5f-88dc-3038e0d765a7-1575359636086-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Lobby</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/1baa718b-ccc0-4e45-a375-73b794a059f3-1575359636137-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Guest Room</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359637/tix-hotel/images-web/2019/12/03/5d8d3730-1b28-4257-af63-41cf71910372-1575359636086-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Garden</ns4:Text> </ns4:Description> </ns4:ImageItem> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359648/tix-hotel/images-web/2019/12/03/e544a51f-f9db-4e3a-8f4c-490191a32375-1575359646566-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Exterior</ns4:Text> </ns4:Description> </ns4:ImageItem> </ns4:ImageItems> </ns4:MultimediaDescription> </ns4:MultimediaDescriptions> <ns4:ContactInfos> <ns4:ContactInfo> <ns4:Addresses Visible="true"> <ns4:Address Language="en-US"> <ns4:CountryName>Indonesia</ns4:CountryName> <ns4:CityName>KlungkungEN</ns4:CityName> <ns4:AddressLine>Jalan Talun Sungkit No.17, Parapat, Kec.Girsang Sipangan Bolon, Tiga Raja, Girsang Sipangan Bolon, Kabupaten Simalungun, Sumatera Utara 21174, Indonesia</ns4:AddressLine> <ns4:PostalCode>21174</ns4:PostalCode> </ns4:Address> </ns4:Addresses> <ns4:Phones> <ns4:Phone PhoneNumber="+628132103305" PhoneTechType="Voice"></ns4:Phone> </ns4:Phones> </ns4:ContactInfo> </ns4:ContactInfos> </ns4:HotelDescriptiveContent> </ns4:HotelDescriptiveContents> </ns4:OTA_HotelDescriptiveContentNotifRQ> </soap:Body> </soap:Envelope>
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <OTA_HotelDescriptiveContentNotifRS TimeStamp="2020-06-09T08:03:54.755323Z" Target="Production" Version="1.0" PrimaryLangID="en_US" xmlns="http://www.opentravel.org/OTA/2003/05"> <Success /> </OTA_HotelDescriptiveContentNotifRS> </soap:Body> </soap:Envelope>
Everytime we push hotel info, we also bundle it with Room Content.
required | object |
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <soap:Envelope xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns4="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <ns4:OTA_HotelInvNotifRQ TimeStamp="2022-12-15T17:55:48.276216+07:00" Target="Test" Version="1.0" PrimaryLangID="en-US"> <ns4:POS> <ns4:Source> <ns4:RequestorID MessagePassword="<Password>" Type="1" ID="partner@email.com"> <ns4:CompanyName Code="<code>" CodeContext="<code-context>"></ns4:CompanyName> </ns4:RequestorID> </ns4:Source> </ns4:POS> <ns4:SellableProducts HotelCode="42d208ae-a5f1-4978-a0af-293d83f8c876" HotelName="Articuno Perubahan 6"> <ns4:SellableProduct InvStatusType="Deactivated" InvTypeCode="6124aecae74f4e5f8783c333"> <ns4:GuestRoom> <ns4:Occupancy MaxOccupancy="2" MinOccupancy="1" AgeQualifyingCode="10"></ns4:Occupancy> <ns4:Room SizeMeasurement="30m²" RoomViewCode="241"></ns4:Room> <ns4:RoomSpec BedroomCount="1"> <ns4:Bedrooms> <ns4:Bedroom Name="Bedroom 1"> <ns4:BedTypes> <ns4:BedType BedTypeCode="1" Quantity="1" CategoryCode="0"></ns4:BedType> <ns4:BedType BedTypeCode="3" Quantity="1" CategoryCode="1"></ns4:BedType> </ns4:BedTypes> </ns4:Bedroom> </ns4:Bedrooms> <ns4:Livingrooms></ns4:Livingrooms> <ns4:Bathrooms></ns4:Bathrooms> </ns4:RoomSpec> <ns4:Amenities> <ns4:Amenity AmenityCode="1088322686"></ns4:Amenity> <ns4:Amenity AmenityCode="1088322713"></ns4:Amenity> <ns4:Amenity AmenityCode="1088323454"></ns4:Amenity> </ns4:Amenities> <TPA_Extensions> <Ventilation HasWindow="Yes" /> </TPA_Extensions> <ns4:Currency Code="IDR"></ns4:Currency> <ns4:Description> <ns4:Text Language="en-US">Superior</ns4:Text> </ns4:Description> <ns4:LongDescription> <ns4:Text Language="en-US">dasdasdasdasdas</ns4:Text> </ns4:LongDescription> <ns4:ImageItems> <ns4:ImageItem> <ns4:ImageFormat> <ns4:URL>https://tix-test-res.cloudinary.com/image/upload/v1575359648/tix-hotel/images-web/2019/12/03/e544a51f-f9db-4e3a-8f4c-490191a32375-1575359646566-d41d8cd98f00b204e9800998ecf8427e.jpg</ns4:URL> </ns4:ImageFormat> <ns4:Description> <ns4:Text Language="en-US">Exterior</ns4:Text> </ns4:Description> </ns4:ImageItem> </ns4:ImageItems> </ns4:GuestRoom> </ns4:SellableProduct> </ns4:SellableProducts> </ns4:OTA_HotelInvNotifRQ> </soap:Body> </soap:Envelope>
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <OTA_HotelInvNotifRS TimeStamp="2020-06-09T08:03:54.755323Z" Target="Production" Version="1.0" PrimaryLangID="en_US" xmlns="http://www.opentravel.org/OTA/2003/05"> <Success /> </OTA_HotelInvNotifRS> </soap:Body> </soap:Envelope>
"bedConfigurations": [ { "options": [ { "single": 1, "king": 1 }, { "queen": 2 } ] }, { "options": [ { "single": 4 }, { "queen": 2 }, { "king": 2 } ] }, { "options": [ { "double": 1, "sofabed": 1, "single": 1 } ] } ]
Request is successfully processed
Malform request
Wrong expected value/format but well formed request
Failed response due to system error
{- "code": "SUCCESS",
- "message": "Success",
- "data": {
- "id": "6142ba2f-bfce-4a98-b74e-56dde8bdc53a",
- "propertyType": {
- "id": "6142ba2f-bfce-4a98-b74e-56dde8bdc53a"
}, - "updatedTime": "2006-01-02T15:04:05Z07:00",
- "starRating": "4.0",
- "timezone": "+05:30",
- "name": "AVANI Riverside Bangkok Hotel",
- "location": {
- "address": "Jl. Casablanca Raya Kav 88, Mall Kota Kasablanka, RT.14/RW.5, Jakarta, Jakarta, ID",
- "country": {
- "id": "5b73b922e1b2236ea6462402",
- "name": {
- "en": "Indonesia",
- "id": "Indonesia"
}
}, - "region": {
- "id": "5b73b927e1b2236ea646240a",
- "name": {
- "en": "Jakarta",
- "id": "Jakarta"
}
}, - "city": {
- "id": "5b73b93fe1b2236ea64624c0",
- "name": {
- "en": "West Jakarta",
- "id": "Jakarta Barat"
}
}, - "area": {
- "id": "5b10b93fe1b2236ea648e831",
- "name": {
- "en": "Grogol",
- "id": "Grogol"
}
}, - "postalCode": "11460",
- "geoLocation": {
- "point": {
- "longitude": "103.860304",
- "latitude": "1.3055984"
}
}
}, - "checkIn": {
- "text": "12:05-16:35",
- "instruction": {
- "en": [
- {
- "title": "First instruction",
- "description": "Extra-person charges may apply and vary depending on hotel policy. <br />Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges. <br />Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed. <br />"
}
], - "id": [
- {
- "title": "Instruksi pertama",
- "description": "Deskripsi instruksi pertama"
}
]
}
}, - "checkOut": {
- "text": "12:00"
}, - "description": {
- "text": {
- "en": "This environmentally friendly hotel is located in the city centre of Singapore, just a 5-minute walking distance from the Lavender MRT Station, which provides easy access to the city's major areas, such as Bugis, City Hall, Orchard Road, Chinatown and Harbour Front. Guests will find a large choice of different room types to suit all guests' needs, all featuring a contemporary décor and including modern conveniences such as LCD TV. Some of them also include a balcony with magnificent views over the surrounding landscape. Guests staying at this luxurious hotel can take a dip in the stunning outdoor pool or have a workout in the gym. A delicious breakfast buffet is served daily to make sure guests' day begins in the best possible way.",
- "id": "Deskripsi properti dalam bahasa Indonesia"
}, - "importantNote": {
- "dateStart": "2025-01-31",
- "dateEnd": "2025-12-31",
- "text": {
- "en": "some random important note",
- "id": "catatan penting dalam bahasa Indonesia"
}
}, - "numberOfFloors": 10,
- "numberOfRooms": 800
}, - "policy": {
- "text": {
- "en": "Pets not allowed",
- "id": "Ketentuan di dalam bahasa Indonesia"
}
}, - "contacts": {
- "phoneNumbers": [
- "+65006568090000",
- "+65006568090001"
], - "emails": [
- "a@hotel.com",
- "b@hotel.com"
]
}, - "images": [
- {
- "label": {
- "name": {
- "en": "main",
- "id": "utama"
}
}, - "category": {
- "name": {
- "en": "dining room",
- "id": "ruang makan"
}
}, - "isMain": true,
}
], - "rooms": [
- {
- "id": "6124aecae74f4e5f8783c333",
- "name": {
- "en": "Standard Room",
- "id": "Ruangan Standar"
}, - "description": {
- "en": "Standard Room Description",
- "id": "Deskripsi Ruangan Standar dalam bahasa Indonesia"
}, - "view": {
- "name": {
- "en": "City view",
- "id": "Pemandangan kota"
}
}, - "hasWindow": true,
- "bedConfigurations": [
- {
- "options": [
- {
- "dynamicBedTypeName": null
}
]
}
], - "maxExtraBed": 2,
- "size": {
- "text": "4m²"
}, - "maxOccupancy": 4,
- "smokingPolicy": "NS",
- "images": [
- {
- "isMain": true,
}
]
}
]
}, - "serverTime": 1688531322247
}
The Hotel Availability Request message provides the ability to search single or multiple properties for detailed availability, inventory and pricing information of room products. Hotel showing list of rooms and Room request for specific room.
Endpoints:
required | object |
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelSearchRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006030329" PrimaryLangID="en-us" TimeStamp="2020-12-23T15:50:43Z" Version="2.8">
<Success/>
<Warnings>
<Warning Type="3">The Special request may not be satisfied</Warning>
</Warnings>
<HotelStays>
<HotelStay>
<RoomStay>
<RoomTypes>
<RoomType NumberOfUnits="1" />
</RoomTypes>
<RatePlans>
<RatePlan PrepaidIndicator="true">
<MealsIncluded Breakfast="true" Dinner="true" Lunch="true" NumberOfMeal="2"/>
</RatePlan>
</RatePlans>
<RoomRates>
<RoomRate RatePlanCategory="501">
<Rates>
<Rate EffectiveDate="2022-10-17" ExpireDate="2022-10-18">
<Base AmountAfterTax="1000000" AmountBeforeTax="800000" CurrencyCode="IDR">
<Taxes CurrencyCode="IDR">
<Tax Amount="0" ChargeUnit="19" Code="14" CurrencyCode="IDR" Type="Exclusive">
<TaxDescription>
<Text>Tax and Other Fee</Text>
</TaxDescription>
</Tax>
</Taxes>
</Base>
</Rate>
<Rate EffectiveDate="2022-10-18" ExpireDate="2022-10-19">
<Base AmountAfterTax="1000000" AmountBeforeTax="800000" CurrencyCode="IDR">
<Taxes CurrencyCode="IDR">
<Tax Amount="0" ChargeUnit="19" Code="14" CurrencyCode="IDR" Type="Exclusive">
<TaxDescription>
<Text>Tax and Other Fee</Text>
</TaxDescription>
</Tax>
</Taxes>
</Base>
</Rate>
</Rates>
<Total AmountAfterTax="2000000" AmountBeforeTax="1600000" CurrencyCode="IDR"/>
</RoomRate>
</RoomRates>
<GuestCounts>
<GuestCount AgeQualifyingCode="10" Count="2"/>
</GuestCounts>
</RoomStay>
<BasicPropertyInfo HotelCode="fa5ddf20-18ba-4f38-aca2-b93a55db47ac" HotelName="Hotel Satu"/>
</HotelStay>
<HotelStay>
<BasicPropertyInfo HotelCode="fa5ddf20-18ba-4f38-aca2-b93a55db47ac" HotelName="Hotel Dua"/>
</HotelStay>
<HotelStay>
<BasicPropertyInfo HotelCode="fa5ddf20-18ba-4f38-aca2-b93a55db47ad" HotelName="Hotel Tiga"/>
</HotelStay>
</HotelStays>
</OTA_HotelSearchRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelAvailRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="6528486787" PrimaryLangID="en-us" TimeStamp="2024-06-19T07:52:05Z" Version="2.2">
<Success/>
</OTA_HotelAvailRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelAvailRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006030329" PrimaryLangID="" TimeStamp="2020-12-23T15:50:04Z" Version="2.8">
<Success/>
<Warnings>
<Warning Type="15">Invalid date</Warning>
</Warnings>
</OTA_HotelAvailRS>
</soap:Body>
</soap:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header/> <soap:Body> <OTA_HotelAvailRQ EchoToken="${xmlunit.ignore}" TimeStamp="${xmlunit.isNumber}" PrimaryLangID="en-US" xmlns="http://www.opentravel.org/OTA/2003/05" Version="2.2"> <AvailRequestSegments> <AvailRequestSegment> <HotelSearchCriteria> <Criterion> <HotelRef HotelCode="mock-d039e781-2055-40ae-ae57-f9b07db4658f"/> <HotelRef HotelCode="mock-d296e298-6151-4d8f-8b05-e9bfd629a1fa"/> <HotelRef HotelCode="mock-456ea60d-2d98-42c0-90aa-aeee455a3406"/> <HotelRef HotelCode="mock-c1b99410-031f-4063-bad9-4caaa17e82ee"/> <HotelRef HotelCode="mock-ad5dcf9c-0040-44fe-b61a-fa5db986145a"/> <StayDateRange End="2024-12-31" Start="2024-12-30"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> <GuestCount AgeQualifyingCode="8" Count="1" Age="3"/> </GuestCounts> </RoomStayCandidate> </RoomStayCandidates> </Criterion> </HotelSearchCriteria> </AvailRequestSegment> </AvailRequestSegments> </OTA_HotelAvailRQ> </soap:Body> </soap:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header/> <soap:Body> <OTA_HotelAvailRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="$echoToken" PrimaryLangID="en-US" TimeStamp="$timeStamp" Version="2.2"> <Success/> <Warnings> <Warning Type="3">The Special request may not be satisfied</Warning> </Warnings> <HotelStays> <HotelStay> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="ldruv8w8zqywi8ms50hpo09i" NumberOfUnits="100"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="1107" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty> <Deadline AbsoluteDeadline="1970-01-01T00:00:00"/> <AmountPercent Percent="100" TaxInclusive="false"/> <PenaltyDescription> <Text>Refund not allowed</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="true" Lunch="false" Dinner="false" NumberOfMeal="1"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="ldruv8w8zqywi8ms50hpo09i" RatePlanCode="1107" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="8x4uu57l4re39a8d1ojt748n" NumberOfUnits="100"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="117" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty> <Deadline AbsoluteDeadline="1970-01-01T00:00:00"/> <AmountPercent Percent="100" TaxInclusive="false"/> <PenaltyDescription> <Text>Refund not allowed</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="true" Lunch="false" Dinner="false" NumberOfMeal="1"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="8x4uu57l4re39a8d1ojt748n" RatePlanCode="117" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> </RoomStays> <BasicPropertyInfo HotelCode="$hotelCode1" HotelName="Kayumanis Jimbaran Private Estate and Spa"/> </HotelStay> <HotelStay> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="5b77805d25a8fa6a60bc26c1" NumberOfUnits="100"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="11075" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty PolicyCode="C48"> <Deadline AbsoluteDeadline="$startDate-4"/> <AmountPercent Amount="792000.00" TaxInclusive="false"/> <PenaltyDescription> <Text>Free cancellation and reschedule If you submit the request before ${startDate-4} (23:59). Cancellation and reschedule with fee If you submit the request after ${startDate-2} (00:00), you will be charged IDR 792,000. If you submit the request after ${startDate-1} (23:59), you will be charged IDR 792,000. No refund and reschedule If you donand#39;t show up for check-in or submit a cancellation or reschedule request on and after the check-in date: ${startDate}.</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="false" Lunch="false" Dinner="false" NumberOfMeal="0"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="5b77805d25a8fa6a60bc26c1" RatePlanCode="11075" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> </RoomStays> <BasicPropertyInfo HotelCode="$hotelCode2" HotelName="Utankayu Jimbaran Private Estate and Spa"/> </HotelStay> <HotelStay> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="s0qzva9zcawhp47gprmgl7l1" NumberOfUnits="10"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="115" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty> <Deadline AbsoluteDeadline="1970-01-01T00:00:00"/> <AmountPercent Percent="100" TaxInclusive="false"/> <PenaltyDescription> <Text>Refund not allowed</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="true" Lunch="false" Dinner="false" NumberOfMeal="1"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="s0qzva9zcawhp47gprmgl7l1" RatePlanCode="115" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> </RoomStays> <BasicPropertyInfo HotelCode="$hotelCode3" HotelName="Louis Kienne Hotel Simpang Lima"/> </HotelStay> <HotelStay> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="i3orm27s2fwzjgg2loe4vedd" NumberOfUnits="98"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="215" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty PolicyCode="C48"> <Deadline AbsoluteDeadline="$startDate-4"/> <AmountPercent Amount="792000.00" TaxInclusive="false"/> <PenaltyDescription> <Text>Free cancellation and reschedule If you submit the request before ${startDate-4} (23:59). Cancellation and reschedule with fee If you submit the request after ${startDate-2} (00:00), you will be charged IDR 792,000. If you submit the request after ${startDate-1} (23:59), you will be charged IDR 792,000. No refund and reschedule If you donand#39;t show up for check-in or submit a cancellation or reschedule request on and after the check-in date: ${startDate}.</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="false" Lunch="false" Dinner="false" NumberOfMeal="0"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="i3orm27s2fwzjgg2loe4vedd" RatePlanCode="215" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> </RoomStays> <BasicPropertyInfo HotelCode="$hotelCode4" HotelName="Louis Kienne Hotel Dago"/> </HotelStay> <HotelStay> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="oitbx2w3pon6mnwplk7pp23j" NumberOfUnits="9"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="215" PrepaidIndicator="true"> <CancelPenalties> <CancelPenalty> <Deadline AbsoluteDeadline="1970-01-01T00:00:00"/> <AmountPercent Percent="100" TaxInclusive="false"/> <PenaltyDescription> <Text>Refund not allowed</Text> </PenaltyDescription> </CancelPenalty> </CancelPenalties> <MealsIncluded Breakfast="true" Lunch="false" Dinner="false" NumberOfMeal="1"/> </RatePlan> </RatePlans> <RoomRates> <RoomRate RoomTypeCode="oitbx2w3pon6mnwplk7pp23j" RatePlanCode="215" RatePlanCategory="501"> <Rates> <Rate EffectiveDate="$startDate" ExpireDate="$endDate"> <Base AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"> <Taxes CurrencyCode="IDR"> <Tax Type="Exclusive" CurrencyCode="IDR" ChargeUnit="19" Code="14" Amount="84858.00"> <TaxDescription> <Text>Tax and Other Fee</Text> </TaxDescription> </Tax> </Taxes> </Base> </Rate> </Rates> <Total AmountBeforeTax="707142.00" AmountAfterTax="792000.00" CurrencyCode="IDR"/> </RoomRate> </RoomRates> <GuestCounts> <GuestCount AgeQualifyingCode="10" Count="1"/> </GuestCounts> </RoomStay> </RoomStays> <BasicPropertyInfo HotelCode="$hotelCode5" HotelName="Louis Kienne Hotel Bundaran HI"/> </HotelStay> </HotelStays> </OTA_HotelAvailRS> </soap:Body> </soap:Envelope>
Search JSON
Successful response.
Invalid Request
Unauthorized
Rate limit
Internal Server Error
{- "hotelCode": [
- "test1",
- "test2"
], - "roomCount": 1,
- "checkIn": "2025-02-27",
- "checkOut": "2025-02-28",
- "adults": 2,
- "childrenAges": [
- 0,
- 1
], - "trafficSourceCountry": "IDN"
}
{- "code": "SUCCESS",
- "message": "success",
- "data": {
- "hotelCode": "asdfaf1231",
- "rooms": [
- {
- "roomCode": "ASFDDSAF1123",
- "remainingRooms": 2,
- "ratePlanCode": "ABC123",
- "cancellation": {
- "policies": [
- {
- "deadlineDateTime": "2024-04-15T23:59:59",
- "amount": "558001"
}
], - "text": "<b>Free cancellation & reschedule</b><br>If you submit the request before <b>14 April 2024 (23:59)</b>.<br><br><b>Cancellation & reschedule with fee</b><br>If you submit the request after <b>10 April 2024 (00:00)</b>, you will be charged IDR 558,001. <br><br>"
}, - "dailyRates": [
- {
- "date": "2024-04-15",
- "amountBeforeTaxAndServiceFee": "80",
- "amountAfterTaxAndServiceFee": "100",
- "taxAndServiceFeeAmount": "20"
}
], - "totalDailyRatesPerRoom": [
- {
- "amountBeforeTaxAndServiceFee": "80",
- "amountAfterTaxAndServiceFee": "100",
- "taxAndServiceFeeAmount": "20"
}
], - "meals": {
- "breakfast": {
- "adult": 2,
- "child": 1
}, - "lunch": {
- "adult": 2,
- "child": 1
}, - "dinner": {
- "adult": 2,
- "child": 1
}, - "allInclusive": {
- "adult": 2,
- "child": 1
}
}, - "taxAndServiceFees": [
- {
- "type": "total",
- "name": "Service Charge",
- "amount": 10,
- "unit": 1,
- "code": 123
}
], - "totalAmountBeforeTaxAndServiceFee": "80",
- "totalAmountAfterTaxAndServiceFee": "100",
- "totalAmountTaxAndServiceFee": 20,
- "searchToken": "lskhnfliajhfgefkjnfsvefklvhknjclahbkbvnflsxkcbeajgsrfkn"
}
]
}, - "serverTime": 111111111,
- "searchjson": "Success"
}
The Prebook API stands as a crucial tool within the landscape of digital booking systems, offering an indispensable solution for accessing vital confirmation data just before the booking is finalized. Serving as a seamless bridge between users and booking platforms, this API enables developers and businesses to retrieve real-time information essential for ensuring a smooth and error-free booking experience. Its capability to fetch the latest confirmation data ensures users have access to the most up-to-date information, minimizing discrepancies and instilling confidence in their decision-making process. With its flexibility and customizability, developers can tailor the API to meet specific requirements, integrating additional validation checks or custom business logic as needed. For businesses in travel, hospitality, or service industries, leveraging the Prebook API optimizes operations, reduces errors, and ultimately enhances customer satisfaction by streamlining booking processes and delivering superior user experiences.
Endpoint | URL Format |
---|---|
Sandbox | https://api.tiketsandbox.net/affiliate-gateway/tix-hotel-cart-b2b/v2/prebook |
Production | https://api.tiket.com/affiliate-gateway/tix-hotel-cart-b2b/v2/prebook |
The Prebook API purpose is to improve booking success rate by providing partners the realtime check allotments and rates before sending the booking request. This Prebook API can be requested in the background while the customer enters their personal details in the booking form.
If the Prebook response is successful, the customer will experience a successful booking flow.
If the Prebook response is failure, partners could warn the customers to find new room offer.
There are 2 possible scenarios that could cause the Prebook to fail and partner should stop submitting booking request:
Description Request body
Successful response. It can be success, room unavailable or price change
Failed response. Invalid request payload
Failed response. Unauthorized
Failed response. Validation error
{- "hotelCode": "55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d",
- "roomTypeCode": "5b77803d25a8fa6a60bbff16",
- "ratePlanCode": "300",
- "roomCount": 1,
- "checkIn": "2024-12-25",
- "checkOut": "2024-12-27",
- "adults": 1,
- "childrenAges": [
- 2,
- 3
], - "currency": "IDR",
- "totalAmountAfterTax": "1330000.00"
}
{- "code": "SUCCESS",
- "message": "Success",
- "data": {
- "hotelCode": "fa5ddf20-18ba-4f38-aca2-b93a55db47ab",
- "checkIn": "2024-12-31",
- "checkOut": "2024-12-31",
- "adults": 1,
- "childrenAges": [
- 2,
- 3
], - "roomCount": 1,
- "totalAmountBeforeTax": 105000,
- "totalAmountAfterTax": 105000,
- "room": {
- "typeCode": "5b77805a25a8fa6a60bc22af",
- "ratePlanCode": 6240,
- "amountBeforeTax": 105000,
- "amountAfterTax": 105000,
- "cancellation": {
- "policies": [
- {
- "policyCode": "C48",
- "deadlineDateTime": "2023-06-15T23:59:59",
- "amount": 214667
}
], - "text": "Free cancellation and reschedule If you submit the request before 13 June 2023 (23:59). Cancellation and reschedule with fee If you submit the request after 14 June 2023 (00:00), you will be charged IDR 107,334. If you submit the request after 15 June 2023 (23:59), you will be charged IDR 214,667."
}, - "surcharges": [
- {
- "type": "Exclusive",
- "name": "Tax and Other Fee",
- "amount": 4796.18,
- "unit": 19,
- "code": 14
}
], - "dailyRates": [
- {
- "date": "2023-06-13",
- "amountBeforeTax": 550000,
- "amountAfterTax": 590333.5
}
], - "meals": {
- "breakfast": {
- "adult": 1,
- "child": 0
}, - "lunch": {
- "adult": 1,
- "child": 0
}, - "dinner": {
- "adult": 1,
- "child": 0
}
}
}, - "prebookToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0eyJpZCI6MTIzNDU2Nzg5LCJuYW1lIjoiSm9zZXBoIn0.OpOSSw7e485LOP5PrzScxHb7SR6sAOMRckfFwi4rp7o"
}, - "serverTime": 1688531322247
}
Create reservation to tiket
object |
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelResRS
xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006050212" Version="2.8">
<Errors>
<Error Code="784" ShortText="Failed to create reservation" Type="3">Time out, please retry your request</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="P">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="testing-1234313" />
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelResRS
xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006050212" Version="2.8">
<Errors>
<Error Code="101" ShortText="Cannot confirm reservation" Type="3">Cannot confirm reservation</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="R">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="testing-1234313" />
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelResRS
xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006050212" Version="2.8">
<Errors>
<Error Code="322" ShortText="Failed to create reservation" Type="3">Room Unavailable</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="R">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="testing-1234313" />
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelResRS Version="2.1" EchoToken="201403211401"
xmlns="http://www.opentravel.org/OTA/2003/05">
<Errors>
<Error ShortText="Failed to create reservation" Type="3" Code="364">Error rate range. The price has changed! Please make a new reservation using the new rate</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="R">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="78334"></HotelReservationID>
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelResRS Version="2.1" EchoToken=""
xmlns="http://www.opentravel.org/OTA/2003/05">
<Errors>
<Error ShortText="Failed to create reservation" Type="3" Code="320">Payload value not using acceptable latin characters</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="R">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="1229336573"></HotelReservationID>
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_HotelResRS
xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="202006050212" Version="2.8">
<Errors>
<Error Code="448" ShortText="Failed to create reservation" Type="3">System Error</Error>
</Errors>
<HotelReservations>
<HotelReservation ResStatus="P">
<ResGlobalInfo>
<HotelReservationIDs>
<HotelReservationID ResID_Type="501" ResID_Value="testing-1234313" />
</HotelReservationIDs>
</ResGlobalInfo>
</HotelReservation>
</HotelReservations>
</OTA_HotelResRS>
</soap:Body>
</soap:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header/> <soap:Body> <OTA_HotelResRQ Version="2.1" PrimaryLangID="en-us" EchoToken="{{uniqueEchoToken}}" RetransmissionIndicator="true" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <UniqueID ID="mock-1-aff-ref-id" Type="501" /> <HotelReservations> <HotelReservation> <RoomStays> <RoomStay> <RoomTypes> <RoomType RoomTypeCode="5b77805d25a8fa6a60bc26c1" /> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="11075" PrepaidIndicator="false"></RatePlan> </RatePlans> <RoomRates> <RoomRate RatePlanCode="11075" RatePlanCategory="501" NumberOfUnits="1"> <Rates> <Rate EffectiveDate="2024-12-30" ExpireDate="2024-12-31"> <Base AmountBeforeTax="352678.00" AmountAfterTax="395000.00" CurrencyCode="IDR"></Base> </Rate> </Rates> </RoomRate> </RoomRates> <BasicPropertyInfo HotelCode="mock-d296e298-6151-4d8f-8b05-e9bfd629a1fa" HotelName="Utankayu Jimbaran Private Estate and Spa"/> </RoomStay> </RoomStays> <ResGuests> <ResGuest ArrivalTime="14:30"> <Profiles> <ProfileInfo> <Profile> <Customer> <PersonName AgeQualifyingCode="10" Gender="M" Age="30"> <GivenName>Testing</GivenName> <MiddleName>Come</MiddleName> <Surname>Order</Surname> </PersonName> <ContactPerson ContactType="non"> <PersonName> <GivenName>Contact</GivenName> <Surname>Person</Surname> </PersonName> <Telephone PhoneNumber="0856-240-26260" /> <Email>testing@testing.com</Email> </ContactPerson> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> </ResGuests> <ResGlobalInfo> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> </GuestCounts> <TimeSpan Start="2024-12-30 00:00:00" End="2024-12-31 00:00:00" /> <Total AmountAfterTax="395000.00" CurrencyCode="IDR"/> <HotelReservationIDs> <HotelReservationID ResID_Type="501" ResID_Value="mock-1-aff-ref-id"/> </HotelReservationIDs> </ResGlobalInfo> </HotelReservation> </HotelReservations> </OTA_HotelResRQ> </soap:Body> </soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header/> <soap:Body> <OTA_HotelResRS Version="2.1" EchoToken="bagas1728285435" xmlns="http://www.opentravel.org/OTA/2003/05"> <Success/> <Warnings> <Warning Type="3">The Special request may not be satisfied</Warning> </Warnings> <HotelReservations> <HotelReservation ResStatus="S"> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Type="501" ResID_Value="BOOKING002345"/> <!--Partner's confirmation code--> <HotelReservationID ResID_Type="502" ResID_Value="ABC1823113"/> <!--Hotels's confirmation code--> </HotelReservationIDs> </ResGlobalInfo> </HotelReservation> </HotelReservations> </OTA_HotelResRS> </soap:Body> </soap:Envelope>
Cancel reservation to tiket.
Cancellation Policy Scenario | XML Sample Request |
---|---|
Free Cancellation |
|
Non Refundable |
|
required | object (CancelOrderRequestParameter) Required Generated Token from Authentication Process, it is required to be authorized. |
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_CancelRS Version="2.1" EchoToken="bagas1728287291" xmlns="http://www.opentravel.org/OTA/2003/05">
<Errors>
<Error ShortText="Reservation cannot be cancelled" Code="264"/>
</Errors>
<UniqueID ID="Sanity-07-Oct-4" Type="501"/>
</OTA_CancelRS>
</soap:Body>
</soap:Envelope>
<OTA_CancelRS Version="2.2" EchoToken="202410071305" xmlns="http://www.opentravel.org/OTA/2003/05">
<Errors>
<Error ShortText="System error" Code="448"></Error>
</Errors>
<UniqueID ID="999235359835815" Type="501"></UniqueID>
</OTA_CancelRS>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05">
<soap:Header/>
<soap:Body>
<OTA_CancelRS Version="2.1" EchoToken="bagas1728286859" xmlns="http://www.opentravel.org/OTA/2003/05">
<Errors>
<Error ShortText="Reservation ABC1234 cannot be found" Code="245"/>
</Errors>
<UniqueID ID="Sanity-05-Oct-1" Type="501"/>
</OTA_CancelRS>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header /> <soap:Body> <OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" Version="2.1" PrimaryLangID="en-us" EchoToken="201403211421"> <UniqueID ID="Test17" Type="501" /> <UniqueID ID="325-2003576" Type="502" /> <Reasons> <Reason>business plan changed</Reason> </Reasons> </OTA_CancelRQ> </soap:Body> </soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.opentravel.org/OTA/2003/05"> <soap:Header/> <soap:Body> <OTA_CancelRS Version="2.1" EchoToken="201403121021" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance"> <Success /> <UniqueID ID="859623" Type="501" /> <!--Partner's confirmation code--> <UniqueID ID="123456" Type="502" /> <!--Hotel's confifirmation Code--> </OTA_CancelRS> </soap:Body> </soap:Envelope>
Node Definition
Please follow this link to you get the detail of each API request and response node definitions: Hotel B2B API 2.0 Glossary.pdf (updated March 16, 2022)
UniqueID Type
UIT | Description |
---|---|
1 | User ID |
4 | Company |
5 | Travel agency |
10 | Hotel |
28 | Distribution channel ID |
501 | Tiket Reservation order ID |
502 | Hotel Confirmation number |
503 | Sub-account ID of Distribution channel |
504 | Order reference Number |
505 | The availability update request ID |
506 | The rate update request ID |
507 | MD5 string for credit card information |
508 | Max request id at vendor side for batch confirmation |
Reservation Status
RVS | Description |
---|---|
S | Success/Committed |
C | Cancelled |
P | Processing |
R | Rejected/failed |
Age Qualifying Code
AQC | Description |
---|---|
7 | Infant. Guest Age hardcoded on Tiket side as 0 |
8 | Child. Allowed Guest Age value from 0 and above. Will return the Child rate if any, if there's no Child rate currently will return no availability |
10 | Adult |
Special Request Code
SRC | Description |
---|---|
1 | must be nonsmoking room |
2 | try to arrange nonsmoking room |
3 | extra breakfast request |
4 | extra bed request |
5 | must have broadband access |
6 | try to arrange broadband access |
7 | Must be double bed |
8 | Try to arrange double bed |
9 | Must be twin beds |
10 | Try to arrange twin beds |
11 | Try to arrange smoking room |
12 | Try to arrange room on a higher floor |
14 | Inform the name later |
15 | Try to arrange room with window |
16 | Quiet Room Preferred |
Card Type
CDT | Description |
---|---|
1 | Credit |
2 | Debit |
3 | Central bill |
Payment Card Code
PCC | Description |
---|---|
DS | Discover Card |
JC | Japanese Credit Bureau Credit Card |
VI | Visa Card |
AX | American Express |
MC | Master Card |
Fee Tax Type
FTT | Description |
---|---|
1 | Bed tax |
2 | City hotel fee |
3 | City tax |
4 | County tax |
5 | Energy tax |
6 | Federal tax |
7 | Food & beverage tax |
8 | Lodging tax |
9 | Maintenance fee |
10 | Occupancy tax |
11 | Package fee |
12 | Resort fee |
13 | Sales tax |
14 | Service charge |
15 | State tax |
16 | Surcharge |
17 | Total tax |
18 | Tourism tax |
19 | VAT/GST tax |
20 | Surplus Lines Tax |
21 | Insurance Premium Tax |
22 | Application Fee |
23 | Express Handling Fee |
24 | Exempt |
25 | Standard |
26 | Zero-rated |
27 | Miscellaneous |
28 | Room Tax |
29 | Early checkout fee |
30 | Country tax |
31 | Extra person charge |
32 | Banquet service fee |
33 | Room service fee |
34 | Local fee |
35 | Goods and services tax (GST) |
36 | Value Added Tax (VAT) |
37 | Crib fee |
38 | Rollaway fee |
39 | Assessment/license tax |
40 | Pet sanitation fee |
41 | Not known |
42 | Child rollaway charge |
43 | Convention tax |
44 | Extra child charge |
45 | Standard food and beverage gratuity |
46 | National government tax |
47 | Adult rollaway fee |
48 | Beverage with alcohol |
49 | Beverage without alcohol |
50 | Tobacco |
51 | Food |
52 | Total surcharges |
53 | State cost recovery fee |
54 | Miscellaneous fee |
Charge Type
CHG | Description |
---|---|
1 | Daily |
2 | Hourly |
3 | Half day |
4 | Additions per stay |
5 | Per occurrence |
6 | Per event |
7 | Per person |
8 | First use |
9 | One time use |
10 | Per minute |
11 | Per function |
12 | Per stay |
13 | Complimentary |
14 | Other |
15 | Maximum charge |
16 | Over-minute charge |
17 | Weekly |
18 | Per room per stay |
19 | Per room per night |
20 | Per person per stay |
21 | Per person per night |
22 | Minimum charge |
23 | Per rental |
24 | Per item |
25 | Per room |
26 | Per reservation/booking |
27 | Per gallon |
28 | Per dozen |
29 | Per tray |
30 | Per order |
31 | Per unit |
32 | One way |
33 | Round trip |
Error/Warning Code supported by Tiket
The row in green means the error/warning must be caught using the code on the interface implementation.
CODE VALUE | CODE NAME |
---|---|
15 |
Invalid date |
61 |
Invalid currency code |
95 |
Booking already cancelled (Warning) |
96 |
The reservation can not be cancelled at the moment (Warning) |
127 |
Reservation already exists (Warning) |
147 |
Taxes incorrect |
161 |
Search criteria invalid |
240 |
Credit card has expired |
242 |
Credit card number is invalid or missing |
245 |
Invalid confirmation number |
249 |
Invalid rate code |
264 |
Reservation cannot be cancelled |
321 |
Required field missing |
322 |
No availability |
381 |
Invalid check-in date |
382 |
Invalid check-out date |
394 |
Invalid item |
397 |
Invalid number of adults |
398 |
Invalid children age |
400 |
Invalid property code |
402 |
Invalid room type |
448 |
System error |
450 |
Unable to process |
506 |
Credit card not accepted at property |
784 |
Time out, please retry your request |
19 | Name is missing or incomplete |
88 | Cannot cancel - service has started |
99 | Booking not owned by requester |
107 | Cannot book - too far in advance |
111 | Booking invalid |
113 | Mandatory booking details missing |
132 | Room/unit type - no availability |
181 | Invalid country code |
188 | Transaction error - please report |
193 | Cancellation process failed |
197 | Undetermined error - please report |
241 | Expiration date is invalid |
243 | Invalid ARC/IATA number |
244 | Email address is invalid |
284 | No reservations found for search criteria |
290 | Invalid state/province/territory code |
291 | Invalid zip/postal code |
298 | City in address is required |
304 | Invalid expiration format MMYY |
306 | Invalid association id or promo code |
310 | Required data missing: last name |
311 | Required data missing: first name |
313 | Required data missing: credit card type |
314 | Required data missing: country of residence |
315 | Required data missing: confirmation number |
316 | Required data missing: phone number |
317 | Invalid phone number |
320 | Invalid value |
346 | Closed to arrivals |
352 | Invalid credit card type |
353 | Departure date is past dated |
361 | Invalid hotel |
362 | Invalid number of nights |
363 | Invalid number of rooms |
364 | Error rate range |
365 | Error credit card |
375 | Hotel not active |
377 | Invalid - max number of nights exceeded |
436 | Rate does not exist |
459 | Invalid request code |
497 | Authorization error |
110 | Confirm the booking offline |
498 | The booking is processing |
321 | HotelCode is empty |
Hotel Category
Hotel Category | Descriptive definition |
---|---|
Aparthotels | Independent apartments with some hotel facilities like a front desk |
Apartments | Furnished, independent accommodations available for short and long-term rental |
Bed and Breakfasts | Private home offering overnight stays and breakfast |
Boats | Commercial travel accommodations located on a boat |
Campsites | Accommodations offering cabins or bungalows alongside areas for camping or campers, with shared facilities or recreational activities |
Capsule hotel | Extremely small units or capsules offering cheap and basic overnight accommodations |
Chalet | Freestanding home characterized by a sloping roof and rented specifically for vacations |
Condos | Private residence owned by an individual homeowner or family in a building or community with multiple units or townhouses |
Cottages | Private villas in the country, usually with private courtyards and a good environment |
Country house | Private home in the countryside with simple accommodations |
Cruises | A cruise ship is a passenger ship used for pleasure voyages when the voyage itself |
Economy hotels | Provide accommodation services and basic facilities at an affordable price |
Farm stays | Private farm with simple accommodations |
Gites | Like an old-fashioned youth hostel, a place offering fairly basic overnight accommodation in a village or in the countryside |
Guest House | Small property with basic accommodations and a rustic feel |
Holiday homes | Freestanding home with private, external entrance and rented specifically for vacation |
Holiday parks | Private independent residences located on shared grounds with shared facilities or recreational activities |
Homestays | A shared home where the guest has a private room and the host lives and is on site. Some facilities are shared between hosts and guests. |
Hostels | Budget accommodations with mostly dorm-style beds and social atmosphere |
Hotels | Accommodations for travelers often with restaurants, meeting rooms and other guest services |
Individual apartment | Single-family building that can be rented out |
Inns | Private home with separate living facilities for host and guest |
Lodges | Private home with accommodations surrounded by nature, such as a forest or mountains |
Love hotels | Adult-only accommodations rented by the hour or night |
Luxury tents | Tents with fixed beds and some services, located in natural surroundings |
Motels | Roadside hotel usually for motorists, with direct access to parking and fewer amenities |
Others | Characteristic housing style, mostly experience accommodation |
Resorts | A place for relaxation with on-site restaurants, activities and often a luxury feel |
Riad | Traditional Moroccan accommodations with a courtyard and luxury feel |
Ryokans | Traditional Japanese-style accommodations with meal options |
Tavern | With standardized management and facilities, with local characteristics, mostly in tourist scenic spots, ancient towns and famous places |
Villas | Private, freestanding and independent home with a luxury feel |
Bed Type Code
Code | Descriptive definition |
---|---|
1 | Double bed |
2 | Semi-double bed |
3 | King bed |
4 | Round bed |
5 | Queen bed |
6 | Sofa Bed |
7 | Tatami |
9 | Single bed |
10 | Kang |
11 | Space Capsule |
12 | Dorm bed |
13 | Water bed |
14 | Bunk |
Room View Code
Code | Descriptive definition |
---|---|
240 | City view |
241 | Sea view |
242 | River view |
243 | Mountain view |
244 | Lake view |
245 | Garden view |
248 | Landmark view |
249 | Swimming pool view |
394 | Courtyard view |
620 | View of golf course |
670 | Park view |
671 | Bay view |
673 | Harbour view |
674 | Desert view |
677 | Valley view |
679 | Canyon view |
680 | Volcano view |
Q : What is the procedure for Affiliate Partners to make deposits to Tiket.com before making reservations?
A : Partner transfer to TIKET bank account. --> Partner send the transfer proof to your TIKET representation. --> Manual checking by TIKET finance team. --> Confirm payment by TIKET Finance team. --> Deposit topup --> Done
Q : Are there specific requirements or guidelines for making deposits as an Affiliate Partner?
A : Done the integration process and got the confirmation from the TIKET representative.
Q : How can I get the API credential for Sandbox Environment and Production environment?
A : The API credential will be provided by Tiket.com team. Affiliate partner need to provide the PIC Name, PIC email and PIC contact number.
Q : Is it necessary for Affiliate Partners to whitelist Tiket IP addresses?
A : Affiliate partners are not required to whitelist Tiket's IP address since this API service solely responds to authorized API credentials. However, for push content API, if any affiliate partner has security concerns, Tiket.com will provide the necessary IP address for whitelisting by raise a request ticket in affiliate service desk here.
Q : Are there any fees associated with accessing the API or using the services provided by Tiket.com?
A : Refer to initial agreement and NDA document.
Q : Can you provide details on the pricing structure for Affiliate Partners using Tiket.com services?
A : Refer to initial agreement and NDA document.
Q : Are there any additional charges or hidden fees that Affiliate Partners should be aware of?
A : Refer to initial agreement and NDA document.
Q : Are there any compliance requirements or regulations that Affiliate Partners need to adhere to when using Tiket.com services?
A : Refer to initial agreement and NDA document.
Q : What steps should Affiliate Partners take to ensure compliance with any relevant regulations or policies when using Tiket.com services?
A : Refer to initial agreement and NDA document.
Q : Is there documentation or resources available to help Affiliate Partners integrate the API into their systems?
A : Yes, You may refer to this API Documentation.
Q : Are there any restrictions on the types of applications or platforms that can integrate with the Tiket.com API?
A : Only authorized partners that already have signed the initial agreement and NDA that allowed it to integrate with the Tiket.com API.
Q : How can I access the hotel content from Tiket.com as an Affiliate Partner?
A : Tiket.com will push content to partners through the 'Content API' endpoint or partner can get the content via Get Property Content API
Q : What specific content is included in the hotel content provided by Tiket.com?
A : Hotel Name, Hotel Description, Hotel location, Hotel Image, Hotel Contact, Hotel Information.
Q : Are hotel and room photos included in the content provided to Affiliate Partners?
A : Yes.
Q : Can you provide details on the location information available for each hotel (e.g., Geo, City, Country, Latitude, Longitude)?
A : Yes Included in 'Hotel Content' API.
Q : In Get Property Content API (Content Pull API), how can partner get the information of the hotel/room?
A : Partner can get the hotel content and room content by using the hotelCode parameter in the Content Pull endpoint. On a single pull hit, Tiket provide the hotel and room content information.
Q : How to get the hotel list that the Affiliate Partner can pull?
A : Tiket will provide the hotel list via excel file and partner can use and pull the content from this list of hotels.
Q : Do we have the sample of the hotelCode that is used for Content Pull?
A : The hotelCode that is used in Content Pull is basically the same with the hotelCode in Search, Prebook and Booking API. It will always consist of 36 char, for example: 55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d
.
Q : How frequently is the hotel and room content updated and refreshed for Affiliate Partners?
A : Hotels and rooms content are most likely static content, but by system we always send the updated data automatically if there is any update from the hotel.
Q : Can Affiliate Partners request specific updates or additions to the hotel content provided by Tiket.com?
A : No, All the hotel content needed will be provided by Tiket.com via Content API.
Q : Is it possible to search for availability of multiple hotels simultaneously through the API? If yes, what is the maximum limit?
A : Yes, it is possible. You can use 'Search Multiple Hotel ID' API and the maximum limit is 5 hotels.
Q : Related to 'API Search Multiple Hotel Id' what are start_date & end_date?
A : Start_date & end_date are similar like Check-In and Check-Out. It will affect the availability of the inventory in the “API Search Multiple Hotel Id” response.
Q : Related to 'API Search Multiple Hotel Id' what 10 Qps means?
A : For 'API Search Multiple Hotel Id' you can search 5 hotel in 1 request, so 10 Qps means you able to call 10 times in a second, and each call you can get 5 hotels availability. Basically you can get 50 hotel availability in 1 second.
Q : What currency will be provided in the API?
A : In the API, currency will be supplied in IDR.
Q : What actions can be performed through the API for pre booking?
A : The objective of the Prebook API is to enhance the booking success rate for partners by furnishing them with real-time allotment and rate checks prior to submitting the booking request. This Prebook API can be seamlessly initiated in the background while the customer enters their personal information in the booking form.
Q : How to input the correct specification in prebooking?
A : In prebook, you can input the specification based on the room and rate plan selected during search. Please note that:
For example:
Room | Night | Adult | Child | Search Payload | Prebook Payload |
---|---|---|---|---|---|
1 | 1 | 1 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 1, "childrenAges": [], |
1 | 1 | 1 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 1, "childrenAges": [3], |
1 | 1 | 1 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 1, "childrenAges": [3,6], |
1 | 1 | 2 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [], |
1 | 1 | 2 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [3], |
1 | 1 | 2 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [3,6] |
1 | 2 | 1 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 1, "childrenAges": [] |
1 | 2 | 1 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 1, "childrenAges": [3] |
1 | 2 | 1 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 1, "childrenAges": [3,6] |
1 | 2 | 2 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [] |
1 | 2 | 2 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [3] |
1 | 2 | 2 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="1"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 1, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [3,6] |
2 | 1 | 1 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [] |
2 | 1 | 1 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [3] |
2 | 1 | 1 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 2, "childrenAges": [3,6] |
2 | 1 | 2 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 4, "childrenAges": [] |
2 | 1 | 2 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 4, "childrenAges": [3] |
2 | 1 | 2 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-18" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-18", "adults": 4, "childrenAges": [3,6] |
2 | 2 | 1 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [] |
2 | 2 | 1 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [3] |
2 | 2 | 1 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 2, "childrenAges": [3,6] |
2 | 2 | 2 | 0 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 4, "childrenAges": [] |
2 | 2 | 2 | 1 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 4, "childrenAges": [3] |
2 | 2 | 2 | 2 | <HotelRef HotelCode="55bbc1f1-b85e-4d4d-b2d9-8607e3c36e1d"/> <StayDateRange End="2025-03-19" Start="2025-03-17"/> <RoomStayCandidates> <RoomStayCandidate Quantity="2"> <GuestCounts> <GuestCount AgeQualifyingCode="10" Age="30" Count="2"/> <GuestCount AgeQualifyingCode="8" Age="3" Count="1"/> <GuestCount AgeQualifyingCode="8" Age="6" Count="1"/> | "roomCount": 2, "checkIn": "2025-03-17", "checkOut": "2025-03-19", "adults": 4, "childrenAges": [3,6] |
Q : How does the process of creating a reservation work using the API?
A : Need to go through the process Search Availability > Prebook > Create reservation
Q : What is the character that supported in the PersonName object?
A : In the PersonName object, we only support alphabetical character a-zA-Z. We are not allowing special character in this object.
Q : What is the character that supported in the PhoneNumber object?
A : In the PhoneNumber object, we only support numeric character. The limit on this PhoneNumber is 7-18 characters.
Q : What is the character that supported in the Email object ?
A : In the Email object, we only support character [a-zA-Z0-9_] or hyphens (-) or dot (.).
Q : What is the email that can be used in ContactPerson object
A : We advice partner to use a generic email address in the ContactPerson as this email will be whitelisted in our side.
Q : What information that is need to be input in ContactPerson object
A : We advice partner to use Affiliate Partner Customer Service Information (Name, Telephone, Email). Tiket is not expect Affiliate Partner to share the guest personal information in this object.
Q : What is the maximum character that supported in the SpecialRequest object?
A : In the SpecialRequest object, the limit string that can be inputted is 2048 characters.
Q : What steps are involved in canceling a reservation through the API?
A : Prior to initiating the cancellation API, ensure to verify the booking details to ascertain whether the booking permits refunds. In the event of a non-refundable booking, a rejection response will be returned. Additionally, confirm the applicable cancellation fee. If the reservation allows for refunds, utilize the "Cancel Order" API to proceed with the cancellation.
Q : Can you explain how the guest details are handled in the reservation process? What information is required for Adults, Children, and Infants?
A : In the search API, it's essential to furnish guest details by defining the GuestCount element and employing the AgeQualifyingCode to distinguish between adults, children, and infants. When utilizing the "Create Order" API, comprehensive guest information is mandatory, encompassing guest name, type (adults, children, and infants), and guest age.
Q : Will Tiket.com send email to customer?
A : Yes. If you opt to include customer email data when using the create booking API, Tiket.com will forward the hotel voucher to the specified email address.
Q : If Tiket.com sends the hotel voucher to the customer, will it display the Tiket.com logo?
A : Yes. It will include Tiket.com's contact details, and Tiket.com will be the primary point of contact for customer service.
Q : In which timezone is the time stated in the cancellation policy information?
A : It's hotel local timezone.
Q : How are cancellation rules determined for reservations made through Tiket.com?
A : Cancellation rules determined individually by hotel, there are no specific cancellation rules that apply.
Q : Are the cancellation rules for reservations dependent on the settings of each individual hotel?
A : Yes
Q : Does Tiket.com provide a Dashboard where I can check my transaction among other activities
A : Yes, you can see your successful transaction to your affiliate dashboard that will be provided to you when you move to the Production Environment.
Q : What support options are available for Affiliate Partners in case they encounter technical issues during integration and post live or need assistance with the API?
A : You may raise an issue ticket on the affiliate service desk here.