CATEGORY: FLIGHTS


There are two methods by which Kelkoo.com can retrieve merchant flight products:

A Live Data Feed

This is our recommended and preferred way of working with merchants as it is a robust technical solution that returns real time availability. It is a stable integration enabling the merchant to provide product availability. The merchant does the searching and provides Kelkoo with a list of products that are suitable for each individual flight request. Kelkoo can format the request it feeds to the merchant to suit each individual merchant integration. Outlined below are the search metrics that Kelkoo requires the user searching for a flights to set.

E.g.

http://www.yourcompany.com/search/kelkoo-flights.pl?journeytype=OOO&departurecity=PPP&arrivalcity=QQQ&departuredate=RRR&returndate=SSS&adults=TTT&children=WWW&infants=III&class=XXX&airline=AAA&direct=DDD


Parameter

Explanation

Example

OOO

Will be round trip or one way,

"RT"

PPP

Will be the departure city,

"London"

QQQ

Will be the arrival city,

"Paris"

RRR

Will be the date of departure,

"25/1/2005"

SSS

Will be the return date,

"30/12/2005"

TTT

Will be number of adults traveling,

"3"

WWW

Will be number of children traveling,

"1"

III

Will be the number of infants travelling,

"0"

XXX

Will be the class of ticket,

"Business"

AAA

Will be the airline requested. Only flight listings where this airline is the carrier should be returned.

"BA"

DDD

Will be a request for direct flights for both inbound and outbound routes. Only direct flights should be returned if this value is set to 'YES'.

"YES"

The Data Feed Format

The data feed format describes the way we'd like to receive the results from your script. Xml is our preffered format, alternatively each piece of information can be separated by another delimiter (comma, pipe, tab) and each product or by an end of line character.

An example of one product in our preferred XML format:
The Below example is taken from the Open Travel (OTA2004b_XML)
<?xml version="1.0" encoding="UTF-8"?>

<OTA_AirPriceRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 OTA_AirPriceRS.xsd" EchoToken="36732" TimeStamp="2003-11-14T10:30:00" Target="Production" Version="2.001" SequenceNmbr="285" PrimaryLangID="en">

<Success/>

<PricedItineraries>

<PricedItinerary SequenceNumber="1">

<AirItinerary DirectionInd="Circle">

<OriginDestinationOptions>

<OriginDestinationOption>

<FlightSegment DepartureDateTime="2003-12-12T12:50:00" ArrivalDateTime="2003-12-12T14:34:00" StopQuantity="0" FlightNumber="242" ResBookDesigCode="L" NumberInParty="2" Status="30">

<DepartureAirport LocationCode="ATL"/>

<ArrivalAirport LocationCode="LAX"/>

<MarketingAirline Code="DL"/>

</FlightSegment>

</OriginDestinationOption>

<OriginDestinationOption>

<FlightSegment DepartureDateTime="2003-12-21T06:00:00" ArrivalDateTime="2003-12-21T13:03:00" StopQuantity="0" FlightNumber="744" ResBookDesigCode="L" NumberInParty="2" Status="30">

<DepartureAirport LocationCode="LAX"/>

<ArrivalAirport LocationCode="ATL"/>

<MarketingAirline Code="DL"/>

</FlightSegment>

</OriginDestinationOption>

</OriginDestinationOptions>

</AirItinerary>

<AirItineraryPricingInfo PricingSource="Published"

<ItinTotalFare NegotiatedFare="false">

<BaseFare Amount="783.88" CurrencyCode="USD"/>

<Taxes>

<Tax TaxCode="US" Amount="38.72" CurrencyCode="USD"/>

<Tax TaxCode="AY" Amount="10.00" CurrencyCode="USD"/>

<Tax TaxCode="ZP" Amount="12.00" CurrencyCode="USD"/>

<Tax TaxCode="XF" Amount="13.50" CurrencyCode="USD"/>

</Taxes>

<TotalFare Amount="858.10" CurrencyCode="USD"/>

</ItinTotalFare>

<FareInfos>

<FareInfo NegotiatedFare="false">

<DepartureDate>2003-12-12T00:00:00</DepartureDate>

<FareReference>LLPE30N</FareReference>

<RuleInfo>

<ResTicketingRules>

<AdvResTicketing AdvResInd="false">

<AdvTicketing FromResTimeOfDay="2003-11-15T24:00:00"/>

</AdvResTicketing>

</ResTicketingRules>

<LengthOfStayRules StayRestrictionsInd="true">

<MinimumStay MinStay="4" StayUnit="Days"/>

<MaximumStay MaxStay="30" StayUnit="Days"/>

</LengthOfStayRules>

</RuleInfo>

<FilingAirline Code="DL"/>

<DepartureAirport LocationCode="ATL"/>

<ArrivalAirport LocationCode="ATL"/>

</FareInfo>

</FareInfos>

</AirItineraryPricingInfo>

</PricedItinerary>

</PricedItineraries>

</OTA_AirPriceRS>


 

A simpliar example is
<Flights>

<AirlineProduct>

<JourneyType>RT</JourneyType>

<Airline>British
Airways</Airline>

<Departure>LHR</Departure>

<Arrival>BCN</Arrival>

<Direct>YES</Direct>

<DepartureDateOut>17112004</DepartureDateOut>

<ArrivalDateOut>17112004</ArrivalDateOut>

<DepartureDateReturn>24112004</DepartureDateReturn>

<ArrivalDateReturn>24112004</ArrivalDateReturn>

<DepartureTimeOB>1110</DepartureTimeOB>

<ArrivalTimeOB>1235</ArrivalTimeOB>

<DepartureTimeIB>1345</DepartureTimeIB>

<ArrivalTimeIB>1600</ArrivalTimeIB>

<DurationOB>0150</DurationOB>

<DurationIB>0150</DurationIB>

<NumAdults>2</NumAdults>

<NumChildren>0</NumChildren>

<NumInfants>0</NumInfants>

<TicketClass>Economy</TicketClass>

<TotalPriceincludingtax>1200</TotalPriceinccludingtax>

<Currency>GBP</Currency>

<Link>http://www.producturl.com</Link>

</AirlineProduct>


Where:
Field

Description

Mandator y/Optional

JourneyType

A round trip or one way can be displayed as RT, OW.

Mandatory

Airline

The airline for this set of tickets.

Mandatory

Departure

The departure city can be displayed as the name of airport or airport code e.g. London Gatwick, or LGW

Mandatory

Arrival

The arrival city can be displayed as the name of the airport or airport code.

Mandatory

DepartureDateOut

Departure Date can be displayed as ddmmyyyy.

Mandatory

ArrivalDateOut

Arrival Date can be displayed as ddmmyyyy.

Mandatory

DepartureDateReturn

Departure Date can be displayed as ddmmyyyy.

Mandatory

ArrivalDateReturn

Arrival Date can be displayed as ddmmyyyy.

Mandatory

DepartureTimeOB

Departure time can be displayed in 24hr format

Optional

ArrivalTimeOB

Arrival time can be displayed in 24hr format

Optional

DepartureTimeIB

Departure time can be displayed in 24hr format

Optional

ArrivalTimeIB

Arrival time can be displayed in 24hr format

Optional

NumAdults

Adults should be a numeric value.

Mandatory

NumChildren

Children should be a numeric value.

Mandatory

NumInfants

Infants should be a number value

Mandatory

TicketClass

Can be displayed as business, economy

Mandatory

PriceincludingTax

Total Price including tax.

Mandatory

Currency

The currency value of the price.

Mandatory

Linktobuy

A full link to a page on your site where the user can actually buy the product. Usually, this enters it directly into their basket.

Mandatory

DurationOB

The duration of the inbound flight in days, hours, mins (e.g. 0445) if return flight

Optional

DurationIB

The duration of the outbound flight in days, hours, mins (e.g. 0445) if return flight

Optional


A Spider (Screen scrape)

Kelkoo builds a spider adapter that crawls the merchant site acting as a web user. Each time a user submits a request on the flight search form the adapter will launch a search on the merchant site, proceed through the relevant HTML pages to retrieve products that match the users search.

On the merchant side, there is very little effort needed in the development of this method of implementation. Kelkoo only recommends this method if the Live Data Feed option cannot be implemented.

The spider adapter is sensitive to any changes on the merchant site. Therefore any small adaptation could require an upgrade to the adapter and result in the merchant missing from our result pages until this upgrade is completed.