Skip to main content

Quickstart

Introduction

Channel-X extracts the product loaded between the Buyer and the Channel Managers into our Inventory Tool and sends it to the Buyer's system. To get all the product details into their system, Buyers just need to go to the Full Copy tab in the Inventory's extranet. Once that's done, when the Channel Manager makes changes, Channel-X sends a smaller request (Delta) to let Buyers know about the updates.

Please, note that connecting with Channel Managers through Travelgate requires a previous step in which the Buyer configures the setup of the hotels, rate plans, and rooms contracted with the hoteliers in the Inventory extranet. This can be done manually in the Extranet or with one of our two newly Inventory Set Up GraphQL API and Inventory Set Up CSV API.
This configuration allows the Channel Manager to map all this information and push availability and prices for the Buyer.

  Channel-X Overview

caution

Channel-X Push Buyers API is a non-standalone API that exclusively retrieves to the Buyer's system product that have been previously pushed to the Inventory Tool. To enable bookings, it is essential to also develop Hotel-X Pull Buyers API Explore the special methods we've designed to simplify the process of directly booking an option you already have in your system in the One-Shot requests section. If you already have the Legacy Pull Buyers API developed, it is also possible to work with it.

Let's Get Started: How to Push Product to your System!

Channel-X provides a robust XML-based API that will enable you to push all the product to your system, allowing you to create and display price calendars. Additionally, you will have full synchronization of products whenever needed, reducing network latency for availability searches.

1. Configure your system to operate with Channel-X

API Endpoint

For the Channel-X API, it is essential that you send your endpoint to Travelgate.

Request Headers

To interact with the API, you'll need to configure your system to accept the following headers:

  • Content Type: Content-Type header provides information about the actual content type of the returned content.
Content-Type: text/xml;charset=UTF-8
  • SOAPAction: SOAPAction header corresponding to the transmitted message, there are 3 different ones, one for each request.
HotelRatePlanInventoryNotif
SOAPAction: http://schemas.xmltravelgate.com/hubpush/provider/2012/10/IProviderGen/HotelRatePlanInventoryNotif
HotelAvailNotif
SOAPAction: http://schemas.xmltravelgate.com/hubpush/provider/2012/10/IProviderGen/HotelAvailNotif
HotelRatePlanNotif
SOAPAction: http://schemas.xmltravelgate.com/hubpush/provider/2012/10/IProviderGen/HotelRatePlanNotif
Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Supported Operations

In the case of the Channel-X API, Travelgate will send requests to the Buyer's system, and the Buyer will respond with either success or error.

Requests and Responses

Channel-X has three main methods. You will have to configure your system to accept the following requests:

  • HotelRatePlanInventoryNotif, which contains information about the inventory setup: Hotel, Rate Plan and Room.
  • HotelAvailNotif, which contains information about rate availability and allotment conditions.
  • HotelRatePlanNotif, which contains information about rate prices and supplements.
<s:Envelope xmlns:s = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:u = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<o:Security s:mustUnderstand = "1" xmlns:o = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<o:UsernameToken u:Id = "uuid-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-x">
<o:Username>username</o:Username>
<o:Password Type = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">password</o:Password>
</o:UsernameToken>
</o:Security>
</s:Header>
<s:Body xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<HotelRatePlanInventoryNotif xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmltravelgate.com/hubpush/provider/2012/10">
<request Version="0">
<POS xmlns="http://www.opentravel.org/OTA/2003/05">
<Source>
<RequestorID ID="Seller Code" />
<BookingChannel>
<CompanyName Code="Buyer Code" />
</BookingChannel>
</Source>
</POS>
<RatePlans HotelStatusType="Active" HotelCode="2" xmlns="http://www.opentravel.org/OTA/2003/05">
<RatePlan Start="2023-11-08" End="2023-11-25" CurrencyCode="EUR" PromotionCode="25" RatePlanType="0" RatePlanCode="BAR" RateReturn="false" FreeChild="false" FreeBaby="false" RatePlanNotifType="Delta" RatePlanStatusType="Active" YieldableIndicator="false">
<BookingRules>
<BookingRule>
<CancelPenalties>
<CancelPenalty NonRefundable="false" />
<CancelPenalty Start="2023-10-09" End="2023-10-09">
<Deadline OffsetTimeUnit="Day" OffsetUnitMultiplier="2" OffsetDropTime="BeforeArrival" />
<AmountPercent Amount="10" />
</CancelPenalty>
</CancelPenalties>
<Viewerships>
<Viewership>
<LocationCodes LocationCodesInclusive="false">
<LocationCode CountryCode="ES" />
</LocationCodes>
</Viewership>
</Viewerships>
</BookingRule>
</BookingRules>
<Rates>
<Rate>
<AdditionalGuestAmounts>
<AdditionalGuestAmount AgeQualifyingCode="8" MaxAge="12" />
<AdditionalGuestAmount AgeQualifyingCode="7" MaxAge="2" />
</AdditionalGuestAmounts>
<PaymentPolicies>
<GuaranteePayment PaymentCode="DirectPayment">
<AcceptedPayments>
<AcceptedPayment>
<PaymentCard CardCode="VI">
<IsVCC>false</IsVCC>
</PaymentCard>
</AcceptedPayment>
<AcceptedPayment>
<PaymentCard CardCode="CA">
<IsVCC>false</IsVCC>
</PaymentCard>
</AcceptedPayment>
</AcceptedPayments>
</GuaranteePayment>
</PaymentPolicies>
<MealsIncluded MealPlanCodes="14" />
</Rate>
</Rates>
<SellableProducts>
<SellableProduct InvCode="SNG" InvType="ROOM" InvNotifType="New" InvStatusType="Active" InvTypeCode="1234">
<GuestRoom>
<Quantities StandardNumBeds="2" />
<Occupancy MinOccupancy="2" MaxOccupancy="2" AgeQualifyingCode="10" />
<Room RoomTypeCode="SNG" />
<Description>
<Text>Single Room Test</Text>
</Description>
</GuestRoom>
</SellableProduct>
</SellableProducts>
<Commission Percent="20" />
<Description>
<Text>BAR</Text>
</Description>
<Taxes>
<Tax Percent="10" ChargeUnit="false" ChargeFrequency="false" Type="Inclusive">
<TaxDescription>
<Text>city</Text>
</TaxDescription>
</Tax>
</Taxes>
<AdditionalDetails>
<AdditionalDetail Code="hola" Type="39">
<DetailDescription>
<Text>hola</Text>
</DetailDescription>
</AdditionalDetail>
</AdditionalDetails>
</RatePlan>
</RatePlans>
</request>
</HotelRatePlanInventoryNotif>
</s:Body>
</s:Envelope>

After each request, a response should be provided from your side. For instance, if a HotelAvailNotif request is received, a corresponding HotelAvailNotif response should be sent, and so forth. There are two response options, success or error.

2. Inventory tool SetUp

Since Channel-X solution is integrated with the Inventory Tool, you must use our Inventory extranet in order to configure the setup for the hotels, rate plans and rooms contracted with the hoteliers, so that the Channel Managers can map them as well. Once mapped, the Channel Manager will load and update availability and prices for that inventory setup configured beforehand.

SetUp Inventory

tip

To learn how to setup hotels, rate plans, and rooms in the Inventory Tool, please refer to the Inventory SetUp section.

3. Channel-X pushes the information to your system

You will have two options for loading products into your system: you can either select the Full Copy tab in the Inventory's extranet to load all the products, or you can choose specific hotels to copy. The purpose of this is to initially receive the products into your system, and subsequently, to obtain a complete refresh of the product.

FullCopy Inventory

Afterward, each update received from the Channel Manager will be pushed into your system. These smaller product requests, aimed at notifying Buyers of changes (such as price, availability, or inventory level), are referred to as Delta. Their purpose is to receive real-time changes to ensure that the product information is kept up to date.

Next steps

Congratulations on completing this quickstart tutorial! 🎉 You've successfully learned the basics of retrieveing Channel Managers product to your system. But there's a world of knowledge waiting for you:

  • Explore the Making Requests section to dive deep into how our XML API works and maximize its performance.
  • Discover various methods/messages grouped by the following actions:
    • Inventory: Retrieve the inventory setup (hotel, rate, room).
    • Availability and Rate: Retrieve rate availability, allotment conditions and rate prices and supplements.
  • Don't forget to perform the SetUp in the Inventory Tool before proceeding with your first Full Copy!
caution

To enable bookings, it is essential to develop Hotel-X Pull Buyers API.

Our documentation is a treasure trove of additional features and functionalities to enhance your business. To uncover these valuable resources, explore our documentation further and make the most of these methods. Enjoy your journey!