+ All Categories
Home > Documents > Taxi XML

Taxi XML

Date post: 24-Oct-2014
Category:
Upload: alrighting619
View: 66 times
Download: 10 times
Share this document with a friend
Popular Tags:
97
HolidayTaxis Development Guide Page 1 of 97 HolidayTaxis Development Guide Version: 1.2 XML Web Services Publication Date: 11 th April 2011
Transcript
Page 1: Taxi XML

HolidayTaxis Development Guide Page 1 of 97

HolidayTaxis Development Guide

Version: 1.2 XML Web Services

Publication Date: 11th April 2011

Page 2: Taxi XML

HolidayTaxis Development Guide Page 2 of 97

Contents

INTRODUCTION .................................................................................................................. 5

Changelog ......................................................................................................................... 5

XML REQUESTS AND RESPONSES .................................................................................. 7

Credentials ........................................................................................................................ 7

TEMPLATES ........................................................................................................................ 8

AGENTS ............................................................................................................................... 9

Agents.CreateAgency Method ........................................................................................... 9

Agents.CreateAgency Request ...................................................................................... 9

Agents.CreateAgencyResponse .................................................................................. 11

Agents.GetAgencyStatus Method .................................................................................... 11

Agents.GetAgencyStatus Request ............................................................................... 12

Agents.GetAgencyStatusResponse ............................................................................. 13

PRODUCTS ........................................................................................................................ 14

Products.GetAllDestinations Method ............................................................................... 14

Products.GetAllDestinations Request .......................................................................... 14

Products.GetAllDestinationsResponse ......................................................................... 15

Products.GetResortProducts Method .............................................................................. 17

Products.GetResortProducts Request ......................................................................... 18

Products.GetResortProductsResponse ........................................................................ 19

Products.GetProductPrice Method .................................................................................. 22

Products.GetProductPrice Request.............................................................................. 22

Products.GetProductPriceResponse ............................................................................ 24

Products.GetProductDetails Method ................................................................................ 25

Products.GetProductDetails Request ........................................................................... 26

Products.GetProductDetailsResponse ......................................................................... 27

Products.GetSupplierResorts Method ............................................................................. 29

Products.GetSupplierResorts Request ......................................................................... 29

Products.GetSupplierResortsResponse ....................................................................... 30

BOOKINGS ......................................................................................................................... 32

Bookings.GetDepartureAirports Method .......................................................................... 32

Bookings.GetDepartureAirports Request ..................................................................... 32

Bookings.GetDepartureAirportsResponse.................................................................... 33

Page 3: Taxi XML

HolidayTaxis Development Guide Page 3 of 97

Bookings.GetCardTypes Method ..................................................................................... 34

Bookings.GetCardTypes Request ................................................................................ 34

Bookings.GetCardTypesResponse .............................................................................. 35

Bookings.GetBookingTypes Method ................................................................................ 36

Bookings.GetBookingTypes Request ........................................................................... 36

Bookings.GetBookingTypesResponse ......................................................................... 37

Bookings.CreateBooking Method .................................................................................... 38

Bookings.CreateBooking Request ............................................................................... 39

Bookings.CreateBookingResponse .............................................................................. 44

Bookings.GetBooking Method ......................................................................................... 50

Bookings.GetBooking Request .................................................................................... 50

Bookings.GetBookingResponse ................................................................................... 51

Bookings.CancelBooking Method .................................................................................... 51

Bookings.CancelBooking Request ............................................................................... 51

Bookings.CancelBookingResponse ............................................................................. 52

Bookings.GetModifyParameters Method ......................................................................... 53

Bookings.GetModifyParameters Request..................................................................... 53

Bookings.ModifyParametersResponse ........................................................................ 54

Bookings.ModifyBooking Method ..................................................................................... 56

Bookings.ModifyBooking Request ................................................................................ 57

Bookings.ModifyBookingResponse .............................................................................. 59

DYNAMIC BOOKINGS ....................................................................................................... 62

DynamicBookings.GetProductPrice ................................................................................. 62

DynamicBookings.GetProductPrice Request ............................................................... 62

DynamicBookings.GetProductPriceResponse ............................................................. 64

DynamicBookings.GetGateways ..................................................................................... 65

DynamicBookings.GetGateways Request .................................................................... 65

DynamicBookings.GetGatewaysResponse .................................................................. 66

DynamicBookings.CreateBooking ................................................................................... 68

DynamicBookings.CreateBooking Request .................................................................. 69

DynamicBookings.CreateBookingResponse ................................................................ 73

DynamicBookings.GetBooking ........................................................................................ 76

DynamicBookings.GetBooking Request ....................................................................... 76

DynamicBookings.GetBookingResponse ..................................................................... 78

Page 4: Taxi XML

HolidayTaxis Development Guide Page 4 of 97

DynamicBookings.CancelBooking ................................................................................... 78

DynamicBookings.CancelBooking Request ................................................................. 78

DynamicBookings.CancelBookingResponse ................................................................ 79

REPORTS .......................................................................................................................... 80

Reports.GetAgencyDetails .............................................................................................. 80

Reports.GetAgencyDetails Request ............................................................................. 80

Reports.GetAgencyDetailsResponse ........................................................................... 81

Reports.GetBookings ...................................................................................................... 82

Reports.GetBookings Request ..................................................................................... 82

Reports.GetBookingsResponse ................................................................................... 83

Reports.GetCommercialAgreements ............................................................................... 85

Reports.GetCommercialAgreements Request ............................................................. 85

Reports.GetCommercialAgreementsResponse ............................................................ 86

Reports.GetCommissionSummary .................................................................................. 87

Reports.GetCommissionSummary Request ................................................................. 87

Reports.GetCommissionSummaryResponse ............................................................... 88

BOOKING VOUCHERS ...................................................................................................... 89

PHP EXAMPLES ................................................................................................................ 90

Products.GetResortProducts Example ............................................................................ 90

Bookings.GetDepartureAirports Example ........................................................................ 91

Bookings.GetBookingTypes Example .............................................................................. 92

DynamicBookings.GetGateways Example ....................................................................... 93

PROCESS FLOW ............................................................................................................... 95

TESTING REQUIREMENTS ............................................................................................... 96

APPENDICES ..................................................................................................................... 97

Page 5: Taxi XML

HolidayTaxis Development Guide Page 5 of 97

INTRODUCTION

This document is the HolidayTaxis Developers Guide. It is aimed at developers and

technical personnel who will be integrating the HolidayTaxis web service. This is

reflected in the layout of the document, which covers the submission of data in XML

format to HolidayTaxis.

As each Service requires particular information to be submitted and this information

tends to be grouped within similar areas element blocks and child elements of those

blocks in the XML schema, the names of the parent elements will be introduced first.

Each element block will then be placed into its context in the schema and its child

elements discussed. This includes any restrictions on the format, length and

transaction type of each element. Example XML for each element block will be

shown.

Complete XML example Requests and successful Responses will then be given for

each service type.

All testing is carried out within the HolidayTaxis staging environment which is

periodically updated to match the live products.

More information can be found at;

https://testserver.holidaytaxis.com/SOAP/1.2

For information on how to set up a test account, please email us on

[email protected].

Changelog

Version Date Notes

1.0 2005-11-17 Updated NuSoap from v1.86 to v1.94, see http://cvs.sourceforge.net/viewcvs.py/nusoap/lib/nusoap.php for changes. Changed the server’s charset encoding from ISO-8859-1 to UTF-8. Modified the Bookings service as "xsd:datetime" does not exist in the W3 schema, correct type should have been "xsd:dateTime". Introduced a new reports service with GetBookings, GetAgencyDetails, GetCommercialAgreements and GetCommissionSummary methods. Modified Bookings.GetBookingTypes method response from

Page 6: Taxi XML

HolidayTaxis Development Guide Page 6 of 97

CardTypes:tns:ArrayOfBookingTypes to BookingTypes:tns:ArrayOfBookingTypes. Changed the Bookings.CreateBooking CV2Number in PaymentDetails to be a string instead of an int. Modified all services to have a more unique target namespace. Altered Bookings.GetBooking and Bookings.CreateBooking so that they return the overseas supplier in the ReconfirmationDetails All datetimes now returned in ISO8601 format i.e. 2001-01-01T09:00:00. Corrected the 'GetBookingParemeters' typing error in the Bookings WSDL

1.0.1 2006-02-10 All datetimes only except datetimes passed in ISO8601 format i.e. 2001-01-01T09:00:00.

1.0.2 2006-03-06 Namespaces between the production and test environments are now all set to be 'https://holidaytaxis.com/webservice'. Amended datetimes so that they all return seconds in the format 2001-01-01T09:00:00.

1.0.3 2007-01-16 Modified Products.GetResortProducts method so that the ProductImagePath no longer links from a secure domain. Modified Products.GetResortProducts to return additional information regarding night rates and product schedules.

1.0.4 2007-04-27 Modified certain Bookings/Products service methods to accept a language code.

1.0.5 2007-12-11 Defined all services input/output parameters nillibility. Added an additional parameter, OrderReference, for Bookings.CreateBookings and Bookings.GetBooking expected in the GeneralDetails and GeneralConfirmationDetails sections.

1.0.6 2009-03-13 NumberOfPassengers is now changed to NumberOfAdults, NumberOfChildren and NumberOfInfants.

1.1 2009-05-19 Dynamic bookings added (initially uk transfers only) . Included both unit price and total price in request and response for Bookings.CreateBooking and Products.GetProductPrice. Now returns correct number of vehicles in Bookings.CreateBooking. Total number of passengers used in calculations now includes infants for non per_person products (in Bookings.CreateBooking and Products.GetProductPrice). Now expects NumberOfVehiclesRequired to always be 1 for per_person products (in Bookings.CreateBooking and Products.GetProductPrice) Switched debugging off in Reports.php (prevents potential

Page 7: Taxi XML

HolidayTaxis Development Guide Page 7 of 97

memory exhausted errors)

1.1 2010-02-03 Added link to TransfersXML terms and conditions within the GetBooking and CreateBookings responses.

1.2 2011-04-06 Modify booking functionality added. New GetModifyParameters and ModifyBooking methods added to Bookings service. Removed DepartureDatetime from all outbound details datasets as no longer used. Added GetSupplierResorts method to Products service. Changed GetResortProducts method so now has optional SupplierId in request and incudes ResortId in response.

XML REQUESTS AND RESPONSES

There are certain features of the Request and Response that are global to all HolidayTaxis web services – these elements are covered in this section. Others are only used for a particular Service or group of Services – these elements will be covered within the documentation for that Service. In the Request, the Credential element block is required for all HolidayTaxis Services

and will be the first element block in the request.

Credentials

Child Elements of Credentials

Element Description Type Required

AffiliateCode Affiliate code as advised by HolidayTaxis

String (Max 5 characters)

Yes

Password Password as advised by HolidayTaxis

String (Max 50 characters)

Yes

Language ISO3166 Country code for language

String No

Example XML Request with Credentials and Elements <Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:type="xsd:string">en</Language> </Credentials>

Page 8: Taxi XML

HolidayTaxis Development Guide Page 8 of 97

When your account is set up, HolidayTaxis will advise you of your affiliate code and

password.

TEMPLATES

The following five templates and methods are currently available;

Agents.php

CreateAgency

GetAgencyStatus

Products.php

GetAllDestinations

GetResortProducts

GetProductPrice

GetProductDetails

Bookings.php

GetDepartureAirports

GetCardTypes

GetBookingTypes

CreateBooking

GetBooking

CancelBooking

DynamicBookings.php

GetProductPrice

GetGateways

CreateBooking

GetBooking

CancelBooking

Reports.php

GetAgencyDetails

GetBookings

GetCommercialAgreements

Page 9: Taxi XML

HolidayTaxis Development Guide Page 9 of 97

GetCommissionSummary

AGENTS

Agents.CreateAgency Method

This will create an account within our system marked as pending approval. To make

a booking on an agency account please advise that you have created an agent so

we can approve this for you on our staging environment. – Please email

[email protected].

Agents.CreateAgency Request

Agents.CreateAgency Element Blocks

Credentials

CreateAgencyParameters

Child Elements of CreateAgencyParameters

Element Name Description Type Required

AgencyReference An identifier you provide that internally maps the account

String (Max 50 characters)

Yes

AgencyName Name of the Agency String (Max 100 characters)

Yes

TradingName Name of the agency if no trading name

String (Max 100 characters)

Yes

ABTANumber ABTA number String (Max 20 characters)

Yes

ContactName Name of person within the agency designated as the primary contact

String (Max 50 characters)

Yes

Address1 Agency address 1 String (Max 50 characters)

Yes

Address2 Agency address 2 String (Max 50 characters)

Yes

Address3 Agency address 3 String (Max 50 characters)

No

Address4 Agency address 4 String (Max 50 characters)

No

PostalCode Agency postcode String (Max 50 Yes

Page 10: Taxi XML

HolidayTaxis Development Guide Page 10 of 97

characters)

TelephoneNumber Agency contact telephone number

String (Max 50 characters)

Yes

FaxNumber Agency fax number String (Max 50 characters)

No

EmailAddress Must match /^.+@.+..+$/

String (Max 100 characters)

Yes

Example XML Request for Agents.CreateAgency POST /SOAP/1.2/Agents.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#CreateAgency" Content-Length: 1524 <?xml version="1.0" encoding=" UTF-8"?> <SOAP-ENV:Envelope SOAP ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:CreateAgency xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <CreateAgencyParameters xsi:type="tns:CreateAgencyParameters">

<AgentReference xsi:type="xsd:string">TEST</AgentReference> <AgencyName xsi:type="xsd:string">Test Agency</AgencyName> <TradingName xsi:type="xsd:string">Test Agency</TradingName> <ABTANumber xsi:type="xsd:string">1234</ABTANumber> <ContactName xsi:type="xsd:string">Mr Test</ContactName> <Address1 xsi:type="xsd:string">Test</Address1> <Address2 xsi:type="xsd:string">Test</Address2> <Address3 xsi:type="xsd:string">Test</Address3> <Address4 xsi:type="xsd:string">Test</Address4> <PostalCode xsi:type="xsd:string">Test</PostalCode> <TelephoneNumber xsi:type="xsd:string">Test</TelephoneNumber> <FaxNumber xsi:type="xsd:string">Test</FaxNumber> <EmailAddress xsi:type="xsd:string">[email protected]</EmailAddress>

Page 11: Taxi XML

HolidayTaxis Development Guide Page 11 of 97

</CreateAgencyParameters> </tns:CreateAgency> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Agents.CreateAgencyResponse

Agents.CreateAgencyResponse Element Blocks

o return

Element Name Value Type

return True/ False Boolean

Example XML Response for Agents.CreateAgency HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Fri, 15 May 2009 14:51:14 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 475 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding=" UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body> <ns1:CreateAgencyResponse xmlns:ns1="https://holidaytaxis.com/webservice">

<return xsi:type="xsd:boolean">true</return> </ns1:CreateAgencyResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Agents.GetAgencyStatus Method

This method will call what applications are approved and which are pending

approval. If Agent Reference is blank, the service will return the status for all Agents

under the Affiliate.

Page 12: Taxi XML

HolidayTaxis Development Guide Page 12 of 97

Agents.GetAgencyStatus Request

Agents.CreateAgencyStatus Element Blocks

Credentials

o AgentReference

Element Name Description Type Required

AgentReference The identifier you provided that internally maps the account

String (Max 50 characters)

No

Example XML Request for Agents.GetAgencyStatus POST /SOAP/1.2/Agents.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetAgencyStatus" Content-Length: 801 <?xml version="1.0" encoding=" UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetAgencyStatus xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <AgentReference xsi:type="xsd:string"></AgentReference> </tns:GetAgencyStatus> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 13: Taxi XML

HolidayTaxis Development Guide Page 13 of 97

Agents.GetAgencyStatusResponse

Agents.GetAgencyStatusResponse Element Blocks

AgencyStatus (ArrayOfAgencyStatus)

Child Elements of AgencyStatus

Element Name Value Type

AgentReference Agent reference entered by affiliate String

Status Active/ InActive/ Pending Approval String (Max 50 characters)

Example XML Response for Agents.GetAgencyStatus HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Fri, 15 May 2009 17:40:17 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 31144 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding=" UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetAgencyStatusResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <AgencyStatus xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:AgencyStatus[212]"> <item xsi:type="tns:AgencyStatus">

<AgentReference xsi:type="xsd:string">Agent1</AgentReference> <Status xsi:type="xsd:string">Active</Status>

</item> <item xsi:type="tns:AgencyStatus">

<AgentReference xsi:type="xsd:string">Agent2</AgentReference> <Status xsi:type="xsd:string">InActive</Status>

</item <item xsi:type="tns:AgencyStatus">

Page 14: Taxi XML

HolidayTaxis Development Guide Page 14 of 97

<AgentReference xsi:type="xsd:string">Agent3</AgentReference> <Status xsi:type="xsd:string">Pending Approval</Status>

</item> </AgencyStatus> </ns1:GetAgencyStatusResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

PRODUCTS

Products.GetAllDestinations Method

The Products.GetAllDestinations method is the first part of the booking process and

will return all countries, airports, ports and resorts that HolidayTaxis cover along with

the identifiers needed for Products.GetResortProducts. This method is the largest

payload of all calls and we recommend that you cache locally.

Products.GetAllDestinations Request

Products.GetAllDestinations Element Blocks

Credentials

Example XML Request for Products.GetAllDestinations POST /SOAP/1.2/Products.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.2 (1.94) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetAllDestinations" Content-Length: 741 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetAllDestinations xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

Page 15: Taxi XML

HolidayTaxis Development Guide Page 15 of 97

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> </tns:GetAllDestinations> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Products.GetAllDestinationsResponse

Products.GetAllDestinationsResponse Element Blocks

AirportGroups (ArrayOfAirportGroups)

Airports (ArrayOfAirports)

Resorts (ArrayOfResorts)

Child Elements of AirportGroups

Element Name Value Type

AirportGroupId HolidayTaxis Airport Group or Country Id

Int

AirportGroupName HolidayTaxis Airport Group or Country Id

String (Max 50 characters)

Child Elements of Airports

Element Name Value Type

AirportId HolidayTaxis Airport or Port Id Int

AirportGroupId HolidayTaxis Airport Group or Country Id

Int

AirportCode IATA code String (Max 3 characters)

AirportName Name of airport or port String (Max 50 characters)

Child Elements of Resorts

Element Name Value Type

ResortId HolidayTaxis Resort Id Int

AirportId HolidayTaxis Airport or Port Id Int

AirportGroupId HolidayTaxis Airport Group or Country Id

Int

ResortName Resort Name String (Max 50 characters)

Page 16: Taxi XML

HolidayTaxis Development Guide Page 16 of 97

Example XML Response for Products.GetAllDestinations HTTP/1.2 200 OK Date: Mon, 18 May 2009 08:51:01 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 1131140 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetAllDestinationsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <AirportGroups xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:AirportGroups[66]">

<item xsi:type="tns:AirportGroups"> <AirportGroupId xsi:type="xsd:int">39</AirportGroupId> <AirportGroupName xsi:type="xsd:string">Abu Dhabi</AirportGroupName>

</item> <item xsi:type="tns:AirportGroups">

<AirportGroupId xsi:type="xsd:int">11</AirportGroupId> <AirportGroupName xsi:type="xsd:string">Austria</AirportGroupName>

</item> <item xsi:type="tns:AirportGroups">

<AirportGroupId xsi:type="xsd:int">15</AirportGroupId> <AirportGroupName xsi:type="xsd:string">USA</AirportGroupName>

</item> </AirportGroups> <Airports xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Airports[374”>

<item xsi:type="tns:Airports"> <AirportId xsi:type="xsd:int">189</AirportId> <AirportGroupId xsi:type="xsd:int">39</AirportGroupId> <AirportCode xsi:type="xsd:string">AUH</AirportCode> <AirportName xsi:type="xsd:string">Abu Dhabi</AirportName>

</item> <item xsi:type="tns:Airports">

<AirportId xsi:type="xsd:int">76</AirportId> <AirportGroupId xsi:type="xsd:int">11</AirportGroupId> <AirportCode xsi:type="xsd:string">INN</AirportCode>

Page 17: Taxi XML

HolidayTaxis Development Guide Page 17 of 97

<AirportName xsi:type="xsd:string">Innsbruck</AirportName> </item> <item xsi:type="tns:Airports">

<AirportId xsi:type="xsd:int">284</AirportId> <AirportGroupId xsi:type="xsd:int">15</AirportGroupId> <AirportCode xsi:type="xsd:string">MCI</AirportCode> <AirportName xsi:type="xsd:string">Kansas City International Airport, MCI</AirportName>

</item> </Airports> <Resorts xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Resorts[4297]">

<item xsi:type="tns:Resorts"> <ResortId xsi:type="xsd:int">2764</ResortId> <AirportId xsi:type="xsd:int">189</AirportId> <AirportGroupId xsi:type="xsd:int">39</AirportGroupId> <ResortName xsi:type="xsd:string">Abu Dhabi</ResortName>

</item> <item xsi:type="tns:Resorts">

<ResortId xsi:type="xsd:int">4055</ResortId> <AirportId xsi:type="xsd:int">76</AirportId> <AirportGroupId xsi:type="xsd:int">11</AirportGroupId> <ResortName xsi:type="xsd:string">Alpbach</ResortName>

</item> <item xsi:type="tns:Resorts">

<ResortId xsi:type="xsd:int">5632</ResortId> <AirportId xsi:type="xsd:int">284</AirportId> <AirportGroupId xsi:type="xsd:int">15</AirportGroupId> <ResortName xsi:type="xsd:string">Downtown Kansas city</ResortName>

</item> </Resorts> </ns1:GetAllDestinationsResponse> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Products.GetResortProducts Method

You can call Products.GetResortProducts using the values that returned from the

Products.GetAllDestinations response. This will return the product information and

ProductId needed for Products.GetProductPrice for the AirportGroupId, AirportId and

ResortId entered.

When modifying a booking, you can call Products.GetResortProducts with SupplierId

to find all available products for a specified resort.

Page 18: Taxi XML

HolidayTaxis Development Guide Page 18 of 97

Products.GetResortProducts Request

Products.GetResorts Element Blocks

Credentials

ResortProductParameters

Child Elements of ResortProductParameters

Element Name Description Type Required

AgentReference The identifier you provided that internally maps the account

String (Max 50 characters)

No

AirportGroupId As returned in the GetAllDestinations response

Int Yes

AirportId As returned in the GetAllDestinations response

Int Yes

ResortId As returned in the GetAllDestinations response

Int Yes

SupplierId HolidayTaxis Supplier Id Int No

DateRequired Date and time of transfer DateTime (ISO8601 format 2009-06-01T09:00:00.)

No

Example XML Request for Products.GetResortProducts POST /SOAP/1.2/Products.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetResortProducts" Content-Length: 1080 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice">

Page 19: Taxi XML

HolidayTaxis Development Guide Page 19 of 97

<SOAP-ENV:Body> <tns:GetResortProducts xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <ResortProductParameters xsi:type="tns:ResortProductParameters">

<AgentReference xsi:type="xsd:string"></AgentReference> <AirportGroupId xsi:type="xsd:int">1</AirportGroupId> <AirportId xsi:type="xsd:int">1</AirportId> <ResortId xsi:type="xsd:int">1</ResortId> <SupplierId xsi:type="xsd:int">1</ SupplierId> <DateRequired xsi:type="xsd:dateTime"></DateRequired>

</ResortProductParameters> </tns:GetResortProducts> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Products.GetResortProductsResponse

Products.GetResortProductsResponse Element Blocks

ResortProducts (ArrayOfResortProducts)

NightRates (ArrayOfNightRates)

Schedules (ArrayOfSchedules)

Child Elements of ResortProducts

Child Element Value Type

ProductId Holidaytaxis product Id Int

PerPerson ‘True’ is the product is a shuttle transfer

Boolean

RequiresAddress ‘True’ if the resort destination requires the full address

Boolean

HasNightSupplement ‘True’ if night rates apply to the products. See below

Boolean

HasSchedule ‘True’ if the products run to scheduled dates and times. See below

Boolean

ResortId HolidayTaxis Resort Id Int

ResortName Name of resort String

AirportName Name of airport or port String

ProductType Type of vehicle String

ProductDescription Full description of the product String

Page 20: Taxi XML

HolidayTaxis Development Guide Page 20 of 97

ProductImagePath The full path to the image should you require to use it

String

ProductImageHeight The height of the image Int

ProductImageWidth The width of the image Int

TransferMinutes The transfer time in minutes of the product

Int

MinPax Minimum amount of passengers for the vehicle. Returns ‘Nil’ if the product is a shuttle transfer

Int

MaxPax Maximum amount of passenger for the vehicle. Returns ‘Nil’ if the product is a shuttle transfer

Int

CurrencyCode Currency code. GBP for example String

SinglePrice One-way price for the product Float

ReturnPrice Return price for the product Float

Child Elements of NightRates

Child Element Value Type

TimeFrom The time the night rate for the product starts

String

TimeTo The time the night rate for the product ends

String

SinglePrice The one-way night rate price Float

ReturnPrice The return night rate price Float

Child Elements of Schedules

Child Element Value Type

TimeFrom The time the schedule for the product starts

String

TimeTo The time the schedule for the product ends

String

Mon True/ False Boolean

Tue True/ False Boolean

Wed True/ False Boolean

Thu True/ False Boolean

Fri True/ False Boolean

Sat True/ False Boolean

Sun True/ False Boolean

Page 21: Taxi XML

HolidayTaxis Development Guide Page 21 of 97

Example XML Response for Products.GetResortProducts HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Mon, 18 May 2009 11:19:49 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 15344 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding=" UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetResortProductsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <ResortProducts xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:ResortProducts[9]">

<item xsi:type="tns:ResortProducts"> <ProductId xsi:type="xsd:int">234073</ProductId> <PerPerson xsi:type="xsd:boolean">true</PerPerson> <RequiresAddress xsi:type="xsd:boolean">false</RequiresAddress> <HasNightSupplement xsi:type="xsd:boolean">false</HasNightSupplement> <HasSchedule xsi:type="xsd:boolean">false</HasSchedule> <ResortId xsi:type="xsd:int">254</ResortId> <ResortName xsi:type="xsd:string">Cambrils</ResortName> <AirportName xsi:type="xsd:string">Reus (Costa Dorada)</AirportName> <ProductType xsi:type="xsd:string">Shuttle Transfer</ProductType> <ProductDescription xsi:type="xsd:string">Shuttles are a cheap, quick and effective way of travelling to and from your accommodation in a city or country you may be unfamiliar with. When using a pre booked shuttle service you instantly have the security of knowing how you will arrive directly at your accommodation. Please be aware that there may be a wait for your shuttle at the airport since they run to a schedule, Maximum wait time 1 hour. Transfer times are estimated and can depend on traffic and the number of stops en-route.</ProductDescription>

Page 22: Taxi XML

HolidayTaxis Development Guide Page 22 of 97

<ProductImagePath xsi:type="xsd:string">https://www.htxdev.com/shared/images/producttypes/shuttletransfer_1.jpg</ProductImagePath> <ProductImageHeight xsi:type="xsd:int">50</ProductImageHeight> <ProductImageWidth xsi:type="xsd:int">50</ProductImageWidth> <TransferMinutes xsi:type="xsd:int">30</TransferMinutes> <MinPax xsi:nil="true" xsi:type="xsd:int"/> <MaxPax xsi:nil="true" xsi:type="xsd:int"/> <CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode> <SinglePrice xsi:type="xsd:float">19.00</SinglePrice> <ReturnPrice xsi:type="xsd:float">28.00</ReturnPrice> <NightRates xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:NightRates[0]"></NightRates> <Schedules xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Schedules[0]"></Schedules> </item>

</ResortProducts> </ns1:GetResortProductsResponse> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Products.GetProductPrice Method

The Products.GetProductPrice method will return the correct price when provided

with ProductId, dates, times and BookingTypeId which is explained in the Bookings

section.

Products.GetProductPrice Request

Products.GetProductPrice Element Blocks

Credentials

ProductPriceParameters

Child Elements of ProductPriceParameters

Element Name Description Type Required

AgentReference Provide agent reference to based price on agency margins

String (Max 50 characters)

No

ProductId As returned in the GetAllDestinations response

Int Yes

Page 23: Taxi XML

HolidayTaxis Development Guide Page 23 of 97

BookingTypeId 1 = Return Transfer 2 = Outbound only 3 = Inbound only

Int Yes

NumberOfVehiclesRequired The number of vehicles required

Int Yes

NumberOfAdults The number of Adults travelling

Int Yes

NumberOfChildren The number of children travelling between the ages of 2 and 12. Enter 0 if none

Int No

NumberOfInfants The number of infants travelling between the ages of 0 and 2. Enter 0 if none

Int No

OutboundArrivalDatetime Date and time of outbound pick-up

DateTime (ISO8601 format 2009-06-01T09:00:00.)

Yes depending on the BookingTypeId

InboundPickupDatetime Date and time of inbound (return) pick-up. This should allow for 150 minutes check-in time plus the returned TransferMinutes

DateTime (ISO8601 format 2009-06-08T09:00:00.).

Yes depending on the BookingTypeId

Example XML Request for Products.GetProductPrice POST /SOAP/1.2/Products.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#ProductPrice" Content-Length: 1404 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"

Page 24: Taxi XML

HolidayTaxis Development Guide Page 24 of 97

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetProductPrice xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <ProductPriceParameters xsi:type="tns:ProductPriceParameters">

<AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <ProductId xsi:type="xsd:int">234073</ProductId> <BookingTypeId xsi:type="xsd:int">1</BookingTypeId> <NumberOfVehiclesRequired xsi:type="xsd:int">1</NumberOfVehiclesRequired> <NumberOfAdults xsi:type="xsd:int">2</NumberOfAdults> <NumberOfChildren xsi:type="xsd:int">2</NumberOfChildren> <NumberOfInfants xsi:type="xsd:int">0</NumberOfInfants> <OutboundArrivalDatetime xsi:type="xsd:dateTime">2009-06-01T09:00:00 </OutboundArrivalDatetime> <InboundPickupDatetime xsi:type="xsd:dateTime">2009-06-08T09:00:00 </InboundPickupDatetime>

</ProductPriceParameters> </tns:GetProductPrice> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Products.GetProductPriceResponse

Products.GetProductPriceResponse Element Blocks

ProductPrice

Element Name Value Type

ProductId The product Id will be updated if the entered product id no longer exists. NewProduct will be ‘True’

Int

NewProduct True/ False Boolean

NightRate ‘True’ if night rates are applicable, else False

Boolean

UnitPrice The per person or per vehicle price

Float

Page 25: Taxi XML

HolidayTaxis Development Guide Page 25 of 97

TotalPrice The unit price multiplied by the number of passengers if per person = ‘True’ or number of vehicles

Float

Example XML Response for Products.GetProductPrice HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Mon, 18 May 2009 13:48:52 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 740 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><ns1:GetProductPriceResponse xmlns:ns1="https://holidaytaxis.com/webservice">

<ProductPrice xsi:type="tns:ProductPrice"> <ProductId xsi:type="xsd:int">234073</ProductId> <NewProduct xsi:type="xsd:boolean">false</NewProduct> <NightRate xsi:type="xsd:boolean">false</NightRate> <UnitPrice xsi:type="xsd:float">19.00</UnitPrice> <TotalPrice xsi:type="xsd:float">76.00</TotalPrice>

</ProductPrice> </ns1:GetProductPriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Products.GetProductDetails Method

The Products.GetProductDetails method will return the product details for the

product Id entered. These details include our supplier details along with telephone

numbers, arrival and departure instructions.

Page 26: Taxi XML

HolidayTaxis Development Guide Page 26 of 97

Products.GetProductDetails Request

Products.GetProductDetails Element Blocks

Credentials

o ProductId

Element Name Description Type Required

ProductId HolidayTaxis product Id Int Yes

Example XML Request for Products.GetProductDetails POST /SOAP/1.2/Products.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetProductDetails" Content-Length: 788 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetProductDetails xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <ProductId xsi:type="xsd:int">234073</ProductId>

</tns:GetProductDetails> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 27: Taxi XML

HolidayTaxis Development Guide Page 27 of 97

Products.GetProductDetailsResponse

Products.GetProductPriceResponse Element Blocks

ProductDetails

Element Name Value Type

ProductId HolidayTaxis product Id Int

AirportGroupName Country String

AirportName Airport String

ResortName Resort name String

Vehicle Type of vehicle String

PerPerson True/ False Boolean

MinPax 0 if PerPerson = True Int

MaxPax 0 if PerPerson = True Int

TransferMinutes Transfer time in minutes Int

OverseasSupplier The name of our supplier String

EmergencyNumber The telephone number of the supplier in case of emergencies

String

ReconfirmationNumber The telephone number to confirm your return leg

String

OfficeHoursMonFri The supplier office opening hours from Monday to Friday

String

OfficeHoursSun The supplier office opening hours on Saturdays

String

OfficeHoursSun The supplier office opening hours on Sundays

String

ArrivalInstructions The suppliers arrival instructions at the airport

String

DepartureInstructions The suppliers departure instructions for your inbound journey

String

Example XML Response for Products.GetProductDetails HTTP/1.2 200 OK Date: Mon, 18 May 2009 15:14:56 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 3687

Page 28: Taxi XML

HolidayTaxis Development Guide Page 28 of 97

Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><ns1:GetProductDetailsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <ProductDetails xsi:type="tns:ProductDetails"> <ProductId xsi:type="xsd:int">234073</ProductId> <AirportGroupName xsi:type="xsd:string">Spain (Mainland)</AirportGroupName> <AirportName xsi:type="xsd:string">Reus (Costa Dorada)</AirportName> <ResortName xsi:type="xsd:string">Cambrils</ResortName> <Vehicle xsi:type="xsd:string">Shuttle Transfer</Vehicle> <PerPerson xsi:type="xsd:boolean">true</PerPerson> <MinPax xsi:nil="true" xsi:type="xsd:int"/> <MaxPax xsi:nil="true" xsi:type="xsd:int"/> <TransferMinutes xsi:type="xsd:int">30</TransferMinutes> <OverseasSupplier xsi:type="xsd:string">Viajes Anubis SA - Costa Brava/Reus</OverseasSupplier> <EmergencyNumber xsi:type="xsd:string">(0034) 902 11 29 27</EmergencyNumber> <ReconfirmationNumber xsi:type="xsd:string">(0034) 90211 2927 / (0034) 66230 5999 </ReconfirmationNumber> <OfficeHoursMonFri xsi:type="xsd:string">09:30 - 13:30 / 16:00 - 19:30</OfficeHoursMonFri> <OfficeHoursSat xsi:type="xsd:string">10:00 - 13:00 / 17:00 - 19:00</OfficeHoursSat> <OfficeHoursSun xsi:type="xsd:string">Closed</OfficeHoursSun> <ArrivalInstructions xsi:type="xsd:string"> Once you have collected your luggage, please make your way to the arrivals hall where your driver will be waiting holding a sign with your name and/or the Holiday Taxis / Viajes Anubis logo. Please identify yourself by showing him a copy of your booking voucher. KEY COLLECTION - Should you require a key collection or any other alternative journey other than the airport transfer booked, you may be charged a supplemental amount locally. In the unlikely event you should have any difficulty in locating your designated driver. - please call our emergency helpline where an English speaking representative will help you. (If calling from a mobile, the international dialling code must be dialed. If calling from a land line there is no need.) </ArrivalInstructions> <DepartureInstructions xsi:type="xsd:string">Please note that it is COMPULSORY

Page 29: Taxi XML

HolidayTaxis Development Guide Page 29 of 97

and EXTREMELY important that you call to arrange your return pick up time at least 24 hours prior to your departure within office hours before your departure transfer. We cannot accept any responsibility for clients who are not collected on time and subsequently miss their return flight if details of the booking have changed and we have not been advised accordingly or if you have not called to arrange your pick up time. To ensure that you get in the correct vehicle, please make sure that the driver is aware of your name before you show your booking voucher. </DepartureInstructions> </ProductDetails> </ns1:GetProductDetailsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Products.GetSupplierResorts Method

The Products.GetSupplierResorts method will return a list of all resorts with a

specified SupplierId. This can be used when modifying a booking to provide a list of

valid resorts for update.

Products.GetSupplierResorts Request

Products.GetSupplierResorts Element Blocks

Credentials

SupplierResortParameters

Child Elements of SupplierResortParameters

Element Name Description Type Required

AgentReference The identifier you provided that internally maps the account

String (Max 50 characters)

No

AirportGroupId As returned in the GetAllDestinations response

Int Yes

AirportId As returned in the GetAllDestinations response

Int Yes

SupplierId HolidayTaxis Supplier Id Int Yes

DateRequired Date and time of transfer (arrival or pickup

DateTime (ISO8601

Yes

Page 30: Taxi XML

HolidayTaxis Development Guide Page 30 of 97

depending on booking type)

format 2009-06-01T09:00:00.)

Example XML Request for Products.GetSupplierResorts POST /SOAP/1.2/Products.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetSupplierResorts" Content-Length: 1111 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><tns:GetSupplierResorts xmlns:tns="https://holidaytaxis.com/webservice"><Credentials xsi:type="tns:Credentials"><AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode><Password xsi:type="xsd:string">MyPassword</Password><Language xsi:type="xsd:string"></Language></Credentials><SupplierResortParameters xsi:type="tns:SupplierResortParameters"><AgentReference xsi:type="xsd:string">MyAgent</AgentReference><AirportGroupId xsi:type="xsd:int">4</AirportGroupId><AirportId xsi:type="xsd:int">22</AirportId><SupplierId xsi:type="xsd:int">10844</SupplierId><DateRequired xsi:type="xsd:dateTime">2011-05-31T21:40:00</DateRequired></SupplierResortParameters></tns:GetSupplierResorts></SOAP-ENV:Body></SOAP-ENV:Envelope>

Products.GetSupplierResortsResponse

Bookings.GetSupplierResortsResponse Element Blocks

SupplierResorts (ArrayOfSupplierResorts)

Page 31: Taxi XML

HolidayTaxis Development Guide Page 31 of 97

Element Name Value Type

ResortId HolidayTaxis Resort Id Int

ResortName Name of resort String (Max 50 characters)

Example XML Response for Bookings.GetSupplierResorts HTTP/1.1 200 OK Date: Mon, 11 Apr 2011 10:26:10 GMT Server: Apache X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 7743 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><ns1:GetSupplierResortsResponse xmlns:ns1="https://holidaytaxis.com/webservice"><SupplierResorts xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:SupplierResorts[10]"><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">4888</ResortId><ResortName xsi:type="xsd:string">Adele</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">222</ResortId><ResortName xsi:type="xsd:string">Aghia Galini</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">223</ResortId><ResortName xsi:type="xsd:string">Aghia Pelegia</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">254</ResortId><ResortName xsi:type="xsd:string">Agia Marina</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">224</ResortId><ResortName xsi:type="xsd:string">Agios Nikolaos</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">1588</ResortId><ResortName xsi:type="xsd:string">Almyrida</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">225</ResortId><ResortName xsi:type="xsd:string">Ammoudara</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">226</ResortId><ResortName xsi:type="xsd:string">Analypsis</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId xsi:type="xsd:int">227</ResortId><ResortName xsi:type="xsd:string">Anissara</ResortName></item><item xsi:type="tns:SupplierResorts"><ResortId

Page 32: Taxi XML

HolidayTaxis Development Guide Page 32 of 97

xsi:type="xsd:int">228</ResortId><ResortName xsi:type="xsd:string">Bali</ResortName></item></SupplierResorts></ns1:GetSupplierResortsResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>

BOOKINGS

Bookings.GetDepartureAirports Method

The Bookings.GetDepartureAirports method will return a list of all departure airports

and AirportId, however any valid AirportId returned from Products.GetAllDestinations

will be acceptable.

Bookings.GetDepartureAirports Request

Bookings.GetDepartureAirports Element Blocks

Credentials

Example XML Request for Bookings.GetDepartureAirports POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetDepartureAirports" Content-Length: 746 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetDepartureAirports xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

Page 33: Taxi XML

HolidayTaxis Development Guide Page 33 of 97

</Credentials> </tns:GetDepartureAirports> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetDepartureAirportsResponse

Bookings.GetDepartureAirportsResponse Element Blocks

DepartureAirports (ArrayOfDepartureAirports)

Element Name Value Type

AirportId HolidayTaxis airport Id Int

AirportName Name of airport String (Max 50 characters)

Example XML Response for Bookings.GetDepartureAirports HTTP/1.2 200 OK Date: Mon, 18 May 2009 16:53:32 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 6445 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetDepartureAirportsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <DepartureAirports xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:DepartureAirports[38 ]"> <item xsi:type="tns:DepartureAirports"> <AirportId xsi:type="xsd:int">40</AirportId> <AirportName xsi:type="xsd:string">Birmingham (UK)</AirportName> </item> ……………………………………………………………………………………………. <item xsi:type="tns:DepartureAirports"> <AirportId xsi:type="xsd:int">50</AirportId>

Page 34: Taxi XML

HolidayTaxis Development Guide Page 34 of 97

<AirportName xsi:type="xsd:string">Gatwick (UK)</AirportName> </item> </DepartureAirports> </ns1:GetDepartureAirportsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetCardTypes Method

Bookings.GetCardTypes returns cards that we currently support when making a

consumer direct booking.

Bookings.GetCardTypes Request

Bookings.GetCardTypes Element Blocks

Credentials

Example XML Request for Bookings.GetCardTypes POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetCardTypes" Content-Length: 735 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetCardTypes xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> </tns:GetCardTypes> </SOAP-ENV:Body>

Page 35: Taxi XML

HolidayTaxis Development Guide Page 35 of 97

</SOAP-ENV:Envelope>

Bookings.GetCardTypesResponse

Bookings.GetCardTypesResponse Element Blocks

CardTypes (ArrayOfCardTypes)

Element Name Value Type

CardType Visa, Mastercard etc String (Max 50 characters)

Example XML Response for Bookings.GetCardTypes HTTP/1.2 200 OK Date: Mon, 18 May 2009 20:09:31 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 921 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetCardTypesResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <CardTypes xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:CardTypes[4]">

<item xsi:type="tns:CardTypes"> <CardType xsi:type="xsd:string">Visa</CardType> </item> <item xsi:type="tns:CardTypes"> <CardType xsi:type="xsd:string">Mastercard</CardType> </item> <item xsi:type="tns:CardTypes"> <CardType xsi:type="xsd:string">Maestro</CardType> </item> <item xsi:type="tns:CardTypes"> <CardType xsi:type="xsd:string">Visa Debit card</CardType> </item>

Page 36: Taxi XML

HolidayTaxis Development Guide Page 36 of 97

</CardTypes> </ns1:GetCardTypesResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetBookingTypes Method

The Bookings.GetBookingTypes method returns a list of the booking types and

BookingTypeId we currently support.

Return only

Single Outbound Only

Single Inbound Only

You will need to pass one of these ids when you call the Products.GetProductPrice

method.

Bookings.GetBookingTypes Request

Bookings.GetBookingTypes Element Blocks

Credentials

Example XML Request for Bookings.GetBookingTypes POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetBookingTypes" Content-Length: 741 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetBookingTypes xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

Page 37: Taxi XML

HolidayTaxis Development Guide Page 37 of 97

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> </tns:GetBookingTypes> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetBookingTypesResponse

Bookings.GetBookingTypesResponse Element Blocks

BookingTypes (ArrayOfBookingTypes)

Element Name Value Type

BookingTypeId 1, 2, or 3 Int

BookingType 1 = Return Transfer 2 = Single outbound only 3 = Single inbound only

Int

Example XML Response for Bookings.GetBookingTypes HTTP/1.2 200 OK Date: Tue, 19 May 2009 08:58:01 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 1052 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetBookingTypesResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <BookingTypes xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:BookingTypes[3]">

<item xsi:type="tns:BookingTypes"> <BookingTypeId xsi:type="xsd:int">1</BookingTypeId> <BookingType xsi:type="xsd:string">Return transfer</BookingType>

Page 38: Taxi XML

HolidayTaxis Development Guide Page 38 of 97

</item> <item xsi:type="tns:BookingTypes"> <BookingTypeId xsi:type="xsd:int">2</BookingTypeId> <BookingType xsi:type="xsd:string">Single outbound only</BookingType> </item> <item xsi:type="tns:BookingTypes"> <BookingTypeId xsi:type="xsd:int">3</BookingTypeId> <BookingType xsi:type="xsd:string">Single inbound only</BookingType> </item>

</BookingTypes> </ns1:GetBookingTypesResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.CreateBooking Method

The Bookings.CreateBooking method varies depending on the type of booking you

are making and has the following Elements Blocks.

Credentials (Always required)

GeneralDetails (Required)

OutboundDetails (Required if BookingTypeId = 1 or 2)

InboundDetails (Required if BookingTypeId = 1 or 3)

PaymentDetails (Required if AgentReference is blank within the General

Details section)

Please note that all Elements Blocks should be parsed in the order above within the

request regardless of any nil values.

If the transfer is an Outbound only the InboundDetails Element Block request should

be parsed as;

<InboundDetails xsi:nil="true" xsi:type="tns:InboundDetails"/>

If the transfer is an Inbound only the OutboundDetails Element Block request should

be parsed as;

<OutboundDetails xsi:nil="true" xsi:type="tns:OutboundDetails"/>

If an AgentReference is entered within the GeneralDetails Element Block, the

PaymentDetails Parent Element request should be parsed as;

<PaymentDetails xsi:nil="true" xsi:type="tns:PaymentDetails"/>

Page 39: Taxi XML

HolidayTaxis Development Guide Page 39 of 97

Test payments can be made by using the card number: 1000350000000007 and

CV2: 547

Bookings.CreateBooking Request

Bookings.CreateBooking Element Blocks

Credentials

GeneralDetails

OutboundDetails

InboundDetails

PaymentDetails

Child Elements of GeneralDetails

Element Name Description Type Required

AgentReference The identifier of your agent you provided to HolidayTaxis

String (Max 50 characters)

No

OrderReference Your reference

String (Max 50 characters)

No

UnitPrice The per person or per vehicle price

Float Yes

TotalPrice The unit price multiplied by the number of passengers if per person = ‘True’ or number of vehicles

Float Yes

ProductId HolidayTaxis Product Id

Int Yes

BookingTypeId 1 = Return Transfer 2 = Single outbound only 3 = Single inbound only

Int Yes

Page 40: Taxi XML

HolidayTaxis Development Guide Page 40 of 97

NumberOfVehiclesRequired Number of vehicles required

Int Yes

NumberOfAdults Number of adults

Int Yes

NumberOfChildren Number of children between the ages of 2 and 12

Int No

NumberOfInfants Number of infants between the ages of 0 and 2

Int No

LeadPassengersTitle Mr, Mrs, Miss and Dr etc

String (Max 10 characters)

Yes

LeadPassengersForename First name String (Max 50 characters)

Yes

LeadPassengersSurname Last name String (Max 50 characters)

Yes

LeadPassengersEmailAddress Email address String (Max 100 characters)

Yes

LeadPassengersMobileTelephoneNumber Contact phone number

String (Max 50 characters)

No

Child Elements of OutboundDetails

Element Name Description Type Required

DepartureAirportId The departure AirportId of the airport you are flying from

Int Yes

FlightNumber The outbound flight number

String (Max 20 characters)

Yes

ArrivalDatetime The arrival date and time at the destination airport.

DateTime (ISO8601 format 2009-06-01T09:12:00.)

Yes

AccommodationName Name of accommodation

String (Max 50 characters)

Yes

Page 41: Taxi XML

HolidayTaxis Development Guide Page 41 of 97

AccommodationAddress1 Address 1. Only required when GetResortProducts returns ‘True’ for RequiresAddress

String (Max 50 characters)

Yes/ No

AccommodationAddress2 Address 2 String (Max 50 characters)

No

AccommodationAddress3 Address 3 String (Max 50 characters)

No

AccommodationTelephoneNumber Accommodation telephone number

String (Max 50 characters)

No

Child Elements of InboundDetails

Element Name Description Type Required

ArrivalAirportId The arrival AirportId of the airport you are flying to

Int Yes

FlightNumber The inbound flight number

String (Max 20 characters)

Yes

DepartureDatetime The departure date and time from the airport

DateTime (ISO8601 format 2009-06-08T09:00:00.)

Yes

PickupDatetime This must be at least 150 minutes plus the transfer time before the DepartureDateTime

DateTime (ISO8601 format 2009-06-08T12:00:00.)

Yes

AccommodationName Name of accommodation

String (Max 50 characters)

Yes

AccommodationAddress1 Address 1. Only required when GetResortProducts returns ‘True’ for RequiresAddress

String (Max 50 characters)

Yes/ No

AccommodationAddress2 Address 2 String (Max 50 characters)

No

AccommodationAddress3 Address 3 String (Max 50 characters)

No

Page 42: Taxi XML

HolidayTaxis Development Guide Page 42 of 97

AccommodationTelephoneNumber Accommodation telephone number

String (Max 50 characters)

No

Child Element of PaymentDetails

Element Name Description Type Required

CardHoldersTitle Mr, Mrs, Miss and Dr etc

String (Max 10 characters)

Yes

CardHoldersForename First name as on bank statement

String (Max 50 characters)

Yes

CardHoldersSurname Last name as on bank statement

String (Max 50 characters)

Yes

CardHoldersContactNumber Contact telephone number

String (Max 50 characters)

Yes

CardHoldersAddress1 Address 1 as on bank statement

String (Max 50 characters)

Yes

CardHoldersAddress2 Address 2 as on bank statement

String (Max 50 characters)

Yes

CardHoldersAddress3 Address 3 String (Max 50 characters)

No

CardHoldersPostalCode Postcode as on bank statement

String (Max 50 characters)

Yes

CardType As returned in GetCardTypes

String (Max 50 characters)

Yes

CardNumber Required String that must pass the Luhn Mod 10 credit card check

String Yes

CV2Number 3 or 4 digit security number on the back of the card

String (Max 4 characters)

Yes

NameOnCard Cardholders name String (Max 50 characters)

Yes

IssueNumber Required when card type is Switch/ Maestro

Int Yes

CardStartMonthYear must match /^([0-9]{2})\/([0-9]{2}|[0-9]{4})$/

String No

CardExpiryMonthYear must match /^([0-9]{2})\/([0-9]{2}|[0-9]{4})$/

String Yes

Example XML Request for Bookings.CreateBooking

Page 43: Taxi XML

HolidayTaxis Development Guide Page 43 of 97

POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#CreateBooking" Content-Length: 3213 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><tns:CreateBooking xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <GeneralDetails xsi:type="tns:GeneralDetails">

<AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <OrderReference xsi:type="xsd:string"></OrderReference> <UnitPrice xsi:type="xsd:float">19</UnitPrice> <TotalPrice xsi:type="xsd:float">76</TotalPrice> <ProductId xsi:type="xsd:int">234073</ProductId> <BookingTypeId xsi:type="xsd:int">1</BookingTypeId> <NumberOfVehiclesRequired xsi:type="xsd:int">1</NumberOfVehiclesRequired> <NumberOfAdults xsi:type="xsd:int">2</NumberOfAdults> <NumberOfChildren xsi:type="xsd:int">2</NumberOfChildren> <NumberOfInfants xsi:type="xsd:int"></NumberOfInfants> <LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle> <LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename> <LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname> <LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress> <LeadPassengersMobileTelephoneNumber xsi:type="xsd:string"></LeadPassengersMobileTelephoneNumber>

</GeneralDetails> <OutboundDetails xsi:type="tns:OutboundDetails">

<DepartureAirportId xsi:type="xsd:int">50</DepartureAirportId> <FlightNumber xsi:type="xsd:string">3456</FlightNumber> <ArrivalDatetime xsi:type="xsd:dateTime">2009-06-

Page 44: Taxi XML

HolidayTaxis Development Guide Page 44 of 97

01T15:00:00</ArrivalDatetime> <AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName> <AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1> <AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2> <AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3> <AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber>

</OutboundDetails> <InboundDetails xsi:type="tns:InboundDetails">

<ArrivalAirportId xsi:type="xsd:int">50</ArrivalAirportId> <FlightNumber xsi:type="xsd:string">1234</FlightNumber> <DepartureDatetime xsi:type="xsd:dateTime">2009-06-08T12:00:00</DepartureDatetime> <PickupDatetime xsi:type="xsd:dateTime">2009-06-08T08:00:00</PickupDatetime> <AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName> <AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1> <AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2> <AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3> <AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber>

</InboundDetails> <PaymentDetails xsi:nil="true" xsi:type="tns:PaymentDetails"/> </tns:CreateBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.CreateBookingResponse

Bookings.CreateBookingResponse Element Blocks

GeneralConfirmationDetails

OutboundConfirmationDetails

InboundConfirmationDetails

ReconfirmationDetails

Page 45: Taxi XML

HolidayTaxis Development Guide Page 45 of 97

Child Elements of GeneralConfirmationDetails

Element Name Value Type

BookingReference Always returned String

AgentReference Only returned if created in the request

String (Max 50 characters)

OrderReference Only returned if created in the request

String (Max 50 characters)

BookingStatus Returns ‘CONFIRMED’, ‘AMENDED’ or ‘CANCELLED’

String

CurrencyCode ISO4217 currency codes which is always returned

String (Max 3 characters)

UnitPrice Always returned Float

TotalPrice Always returned Float

DateBooked Always returned DateTime

BookingTypeId Always returned Int

NumberOfVehicles Always returned Int

PerPerson Returns ‘True’ if the price is based on PerPerson

Boolean

NumberOfAdults Always returned Int

NumberOfChildren Always returned Int

NumberOfInfants Always returned Int

MinimumNumberOfPassengers Always returned Int

MaximumNumberOfPassengers Always returned Int

AirportName Always returns the destination airport

String (Max 50 characters)

ResortName Always returns the resort name

String (Max 50 characters)

ProductType Always returns the name of the product, for example ‘Standard Taxi’

String (Max 50 characters)

TransferMinutes Always returned Int

BookingType Always returns the string value of the BookingTypeId. For example, Return, Outbound only or Inbound only

String (Max 50 characters)

LeadPassengersTitle Always returned String (Max 10 characters)

Page 46: Taxi XML

HolidayTaxis Development Guide Page 46 of 97

LeadPassengersForename Always returned String (Max 50 characters)

LeadPassengersSurname Always returned String (Max 50 characters)

LeadPassengersEmailAddress Always returned String (Max 100 characters)

LeadPassengersMobileTelephoneNumber Always returned if provided

String (Max 50 characters)

Child Elements of OutboundConfirmationDetails

Element Name Value Type

DepartureAirportName Always returned String (Max 50 characters)

FlightNumber Always returned String (Max 20 characters)

ArrivalDatetime Always returned DateTime

AccommodationName Always returned String (Max 50 characters)

AccommodationAddress1 Always returned if provided String (Max 50 characters)

AccommodationAddress2 Always returned if provided String (Max 50 characters)

AccommodationAddress3 Always returned if provided String (Max 50 characters)

AccommodationTelephoneNumber Always returned if provided String (Max 50 characters)

Instuctions Always returned Blob/ Text

Child Elements of InboundConfirmationDetails

Element Name Value Type

ArrivalAirportName Always returned String (Max 50 characters)

FlightNumber Always returned String (Max 20 characters)

DepartureDatetime Always returned DateTime

PickupDatetime Always returned DateTime

AccommodationName Always returned String (Max 50 characters)

AccommodationAddress1 Always returned if provided String (Max 50 characters)

Page 47: Taxi XML

HolidayTaxis Development Guide Page 47 of 97

AccommodationAddress2 Always returned if provided String (Max 50 characters)

AccommodationAddress3 Always returned if provided String (Max 50 characters)

AccommodationTelephoneNumber Always returned if provided String (Max 50 characters)

Instuctions Always returned Blob/ Text

Child Elements of ReconfirmationConfirmationDetails

Element Name Value Type

OverseasSupplier Always returned String (Max 50 characters)

EmergencyNumber Always returned String (Max 50 characters)

ReconfirmationNumber Always returned String (Max 50 characters)

OfficeHoursMonFri Always returned String (Max 50 characters)

OfficeHoursSat Always returned String (Max 50 characters)

OfficeHoursSun Always returned String (Max 50 characters)

Example XML Response for Bookings.CreateBooking HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Tue, 19 May 2009 17:13:30 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 6303 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><ns1:CreateBookingResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <GeneralConfirmationDetails xsi:type="tns:GeneralConfirmationDetails">

Page 48: Taxi XML

HolidayTaxis Development Guide Page 48 of 97

<BookingReference xsi:type="xsd:string">751008</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <OrderReference xsi:nil="true" xsi:type="xsd:string"/> <BookingStatus xsi:type="xsd:string">CONFIRMED</BookingStatus> <CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode> <UnitPrice xsi:type="xsd:float">19.00</UnitPrice> <TotalPrice xsi:type="xsd:float">76.00</TotalPrice> <DateBooked xsi:type="xsd:dateTime">2009-05-19T18:13:20</DateBooked> <BookingTypeId xsi:type="xsd:int">1</BookingTypeId> <NumberOfVehicles xsi:type="xsd:int">4</NumberOfVehicles> <PerPerson xsi:type="xsd:boolean">true</PerPerson> <NumberOfAdults xsi:type="xsd:int">2</NumberOfAdults> <NumberOfChildren xsi:type="xsd:int">2</NumberOfChildren> <NumberOfInfants xsi:nil="true" xsi:type="xsd:int"/> <MinimumNumberOfPassengers xsi:nil="true" xsi:type="xsd:int"/> <MaximumNumberOfPassengers xsi:nil="true" xsi:type="xsd:int"/> <AirportName xsi:type="xsd:string">Reus (Costa Dorada)</AirportName> <ResortName xsi:type="xsd:string">Cambrils</ResortName> <ProductType xsi:type="xsd:string">Shuttle Transfer</ProductType> <TransferMinutes xsi:type="xsd:int">30</TransferMinutes> <BookingType xsi:type="xsd:string">Return transfer</BookingType> <LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle> <LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename> <LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname> <LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress> <LeadPassengersMobileTelephoneNumber xsi:nil="true" xsi:type="xsd:string"/> </GeneralConfirmationDetails> <OutboundConfirmationDetails xsi:type="tns:OutboundConfirmationDetails"> <DepartureAirportName xsi:type="xsd:string">Gatwick(UK)</DepartureAirportName> <FlightNumber xsi:type="xsd:string">1234</FlightNumber> <ArrivalDatetime xsi:type="xsd:dateTime"> 2009-06-01T12:00:00</ArrivalDatetime> <AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName> <AccommodationAddress1 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationAddress2 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationAddress3 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationTelephoneNumber xsi:nil="true" xsi:type="xsd:string"/> <Instructions xsi:type="xsd:string"> Once you have collected your luggage, please make your way to the arrivals hall where your driver will be waiting holding a sign with your name and/or the Holiday Taxis / Viajes Anubis logo. Please identify yourself by showing him a copy of your booking voucher. KEY COLLECTION - Should you require a key collection or any other alternative journey other than the

Page 49: Taxi XML

HolidayTaxis Development Guide Page 49 of 97

airport transfer booked, you may be charged a supplemental amount locally. In the unlikely event you should have any difficulty in locating your designated driver: - please call our emergency helpline where an English speaking representative will help you. (If calling from a mobile, the international dialling code must be dialed. If calling from a land line there is no need.). Terms and Conditions: http://www.holidaytaxis.com/about/conditions/ </Instructions> </OutboundConfirmationDetails> <InboundConfirmationDetails xsi:type="tns:InboundConfirmationDetails"> <ArrivalAirportName xsi:type="xsd:string">Gatwick (UK)</ArrivalAirportName> <FlightNumber xsi:type="xsd:string">425364</FlightNumber> <DepartureDatetime xsi:type="xsd:dateTime"> 2009-06-08T12:00:00</DepartureDatetime> <PickupDatetime xsi:type="xsd:dateTime"> 2009-06-08T08:00:00</PickupDatetime> <AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName> <AccommodationAddress1 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationAddress2 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationAddress3 xsi:nil="true" xsi:type="xsd:string"/> <AccommodationTelephoneNumber xsi:nil="true" xsi:type="xsd:string"/> <Instructions xsi:type="xsd:string"> Please note that it is COMPULSORY and EXTREMELY important that you call to arrange your return pick up time at least 24 hours prior to your departure within office hours ONLY before your departure transfer. We cannot accept any responsibility for clients who are not collected on time and subsequently miss their return flight if details of the booking have changed and we have not been advised accordingly or if you have not called to arrange your pick up time. To ensure that you get in the correct vehicle, please make sure that the driver is aware of your name before you show your booking voucher. Terms and Conditions: http://www.holidaytaxis.com/about/conditions/ </Instructions> </InboundConfirmationDetails> <ReconfirmationDetails xsi:type="tns:ReconfirmationDetails"> <OverseasSupplier xsi:type="xsd:string"> Viajes Anubis SA - Costa Brava/Reus</OverseasSupplier> <EmergencyNumber xsi:type="xsd:string"> (0034) 902 11 29 27</EmergencyNumber> <ReconfirmationNumber xsi:type="xsd:string"> (0034) 90211 2927 / (0034) 66230 5999</ReconfirmationNumber> <OfficeHoursMonFri xsi:type="xsd:string"> 09:30 - 13:30 / 16:00 - 19:30</OfficeHoursMonFri> <OfficeHoursSat xsi:type="xsd:string"> 10:00 - 13:00 / 17:00 - 19:00</OfficeHoursSat> <OfficeHoursSun xsi:type="xsd:string">Closed</OfficeHoursSun> </ReconfirmationDetails>

Page 50: Taxi XML

HolidayTaxis Development Guide Page 50 of 97

</ns1:CreateBookingResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetBooking Method

The GetBooking method returns all the information of a booking that would be

returned in Bookings.CreateBookingResponse.

Bookings.GetBooking Request

Bookings.GetBooking Element Blocks

Credentials

GetBookingParameters

Child Elements of GetBookingParameters

Element Name Description Type Required

BookingReference Must be in the format /^.\w+\-.\d+?$/

String Yes

AgentReference An identifier that maps to an agency account

String (Max 50 characters)

No

Example XML Request for Bookings.GetBooking POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetBooking" Content-Length: 939 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetBooking xmlns:tns="https://holidaytaxis.com/webservice">

Page 51: Taxi XML

HolidayTaxis Development Guide Page 51 of 97

<Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <GetBookingParameters xsi:type="tns:GetBookingParameters">

<BookingReference xsi:type="xsd:string">751008</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference>

</GetBookingParameters> </tns:GetBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetBookingResponse

The GetBooking response is the same as the Bookings.CreateBookingResponse.

Bookings.CancelBooking Method

The Bookings.CancelBooking method will cancel the booking of the booking

reference entered.

Bookings.CancelBooking Request

Bookings.CancelBooking Element Blocks

Credentials

o BookingReference

Element Name Description Type Required

BookingReference Must be in the format /^.\w+\-.\d+?$/

String Yes

Example XML Request for Bookings.CancelBooking

Page 52: Taxi XML

HolidayTaxis Development Guide Page 52 of 97

POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#CancelBooking" Content-Length: 806 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:CancelBooking xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <BookingReference xsi:type="xsd:string">751008</BookingReference>

</tns:CancelBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.CancelBookingResponse

Bookings.CancelBookingResponse Element Blocks

o return

Element Name Value Type

return Returns ‘True’ if booking cancelled successfully or ‘False’ if booking already cancelled or already travelled

Boolean

Example XML Response for Bookings.CancelBooking HTTP/1.2 200 OK Date: Wed, 20 May 2009 10:45:15 GMT

Page 53: Taxi XML

HolidayTaxis Development Guide Page 53 of 97

Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 472 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body><ns1:CancelBookingResponse xmlns:ns1="https://holidaytaxis.com/webservice">

<return xsi:type="xsd:boolean">true</return> </ns1:CancelBookingResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Bookings.GetModifyParameters Method

The Bookings.GetModifyParameters method returns the majority of the booking

details required to modify a booking. It is similar to the Bookings.GetBooking method

except that it returns ModifyParameters instead of

ReconfirmationConfirmationDetails. These parameters can be used as input to the

ModifyBooking method to update the booking.

Bookings.GetModifyParameters Request

Bookings.GetModifyParameters Element Blocks

Credentials

GetBookingParameters

Example XML Request for Bookings.GetModifyParameters POST /SOAP/1.2/Bookings.php HTTP/1.0

Host: testserver.holidaytaxis.com:443

User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetModifyParameters" Content-Length: 953

Page 54: Taxi XML

HolidayTaxis Development Guide Page 54 of 97

<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><tns:GetModifyParameters xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <GetBookingParameters xsi:type="tns:GetBookingParameters"><BookingReference

xsi:type="xsd:string">HTX-751008</BookingReference><AgentReference

xsi:type="xsd:string">MyAgent</AgentReference></GetBookingParameters></tns:GetModifyParameters></SOAP-ENV:Body></SOAP-ENV:Envelope>

Bookings.ModifyParametersResponse

Bookings.ModifyParametersResponse Element Blocks

GeneralConfirmationDetails

OutboundConfirmationDetails

InboundConfirmationDetails

ModifyParameters

Child Elements of ModifyParameters

Element Name Value Type

AirportGroupId Always returned Int

AirportId Always returned Int

ResortId Always returned Int

ProductId Always returned Int

SupplierId Always returned Int

DepartureAirportId Returned if booking type is ‘Return Transfer’ or ‘Outbound only’

Int

ArrivalAirportId Returned if booking type is ‘Return Transfer’ or ‘Inbound only’

Int

Example XML Response for Bookings.GetModifyParameters HTTP/1.1 200 OK Date: Fri, 08 Apr 2011 14:04:18 GMT

Page 55: Taxi XML

HolidayTaxis Development Guide Page 55 of 97

Server: Apache X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 4518 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><ns1:GetModifyParametersResponse xmlns:ns1="https://holidaytaxis.com/webservice"><GeneralConfirmationDetails xsi:type="tns:GeneralConfirmationDetails"><BookingReference xsi:type="xsd:string">HTX-

751008</BookingReference><AgentReference

xsi:type="xsd:string">MyAgent</AgentReference><OrderReference xsi:nil="true" xsi:type="xsd:string"/><BookingStatus xsi:type="xsd:string">CONFIRMED</BookingStatus><CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode><UnitPrice xsi:type="xsd:float">41.00</UnitPrice><TotalPrice xsi:type="xsd:float">41.00</TotalPrice><DateBooked xsi:type="xsd:dateTime">2011-02-23T14:00:14</DateBooked><BookingTypeId xsi:type="xsd:int">3</BookingTypeId><NumberOfVehicles xsi:type="xsd:int">1</NumberOfVehicles><PerPerson xsi:type="xsd:boolean">false</PerPerson><NumberOfAdults xsi:type="xsd:int">2</NumberOfAdults><NumberOfChildren xsi:type="xsd:int">0</NumberOfChildren><NumberOfInfants xsi:type="xsd:int">0</NumberOfInfants><MinimumNumberOfPassengers xsi:type="xsd:int">1</MinimumNumberOfPassengers><MaximumNumberOfPassengers xsi:type="xsd:int">4</MaximumNumberOfPassengers><AirportName xsi:type="xsd:string">Crete Heraklion Airport</AirportName><ResortName xsi:type="xsd:string">Malia</ResortName><ProductType xsi:type="xsd:string">Private Transfer</ProductType><TransferMinutes xsi:type="xsd:int">45</TransferMinutes><BookingType xsi:type="xsd:string">Single return only</BookingType><LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle><LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename><LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname><LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress><LeadPassengersMobileTelephoneNumber xsi:nil="true" xsi:type="xsd:string"/></GeneralConfirmationDetails><OutboundConfirmationDetails xsi:nil="true" xsi:type="tns:OutboundConfirmationDetails"/><InboundConfirmationDetails xsi:type="tns:InboundConfirmationDetails"><ArrivalAirportName xsi:type="xsd:string">Aberdeen Airport</ArrivalAirportName><FlightNumber xsi:type="xsd:string">345</FlightNumber><DepartureDatetime xsi:type="xsd:dateTime">2011-05-01T20:00:00</DepartureDatetime><PickupDatetime xsi:type="xsd:dateTime">2011-05-01T12:00:00</PickupDatetime><AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName><AccommodationAddress1 xsi:type="xsd:string">Address 1</AccommodationAddress1><AccommodationAddress2 xsi:nil="true" xsi:type="xsd:string"/><AccommodationAddress3 xsi:nil="true" xsi:type="xsd:string"/><AccommodationTelephoneNumber

Page 56: Taxi XML

HolidayTaxis Development Guide Page 56 of 97

xsi:type="xsd:string">123</AccommodationTelephoneNumber><Instructions xsi:type="xsd:string"> Please note that it is &lt;span style=&quot;font-weight: bold;&quot;&gt;COMPULSORY &lt;/span&gt;and &lt;span style=&quot;font-weight: bold;&quot;&gt;EXTREMELY &lt;/span&gt;important to reconfirm your return transfer time at least 24 hours prior to your departure within office hours ONLY before your departure transfer to confirm your pick up. The pick up time is printed on your confirmation is estimated only and will be confirmed when you call. We cannot accept any responsibility for clients who are not collected on time and subsequently miss their return flight if details of the booking have changed and we have not been advised accordingly.&lt;br&gt;&lt;br&gt;To ensure that you get the correct vehicle please ensure your driver is aware of your name before you show him your booking voucher. &lt;p&gt;Terms and Conditions: &lt;a href=&quot;http://www2.holidaytaxis.com/about/terms.php&quot;&gt;www2.holidaytaxis.com/about/terms.php&lt;/a&gt;&lt;/p&gt;</Instructions></InboundConfirmationDetails><ModifyParameters xsi:type="tns:ModifyParameters"><AirportGroupId xsi:type="xsd:int">4</AirportGroupId><AirportId xsi:type="xsd:int">22</AirportId><ResortId xsi:type="xsd:int">244</ResortId><ProductId xsi:type="xsd:int">287903</ProductId><SupplierId xsi:type="xsd:int">10844</SupplierId><DepartureAirportId xsi:nil="true" xsi:type="xsd:int"/><ArrivalAirportId xsi:type="xsd:int">38</ArrivalAirportId></ModifyParameters></ns1:GetModifyParametersResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>

Bookings.ModifyBooking Method

The Bookings.ModifyBooking method is used to update a booking. Please note that

if the modification results in a price change, this method will only work for agents

paying by account or direct debit.

Making a modification is a two step process.

The first step is to call ModifyBooking with the details of the updated booking and

the NoUpdate flag set to true. This will return the total price for the modified booking

without saving the changes.

The second step is to repeat the call but this time with the NoUpdate flag set to false

and confirming the new price in the ConfirmTotalPrice parameter. If this value is

correct, the updates will then be saved.

If you wish to change the resort, you will need to call the GetSupplierResorts method

to get a list of available resorts.

To find valid products for these resorts, you will need to call the GetResortProducts

method including the SupplierId parameter.

Page 57: Taxi XML

HolidayTaxis Development Guide Page 57 of 97

Bookings.ModifyBooking Request

Bookings.ModifyBooking Element Blocks

Credentials

ModifyGeneralDetails

OutboundDetails (Required if BookingTypeId = 1 or 2)

InboundDetails (Required if BookingTypeId = 1 or 3)

Child Elements of ModifyGeneralDetails

Element Name Value Type

BookingReference Must be in the format /^.\w+\-.\d+?$/

String

AgentReference The identifier of your agent you provided to HolidayTaxis

String (Max 50 characters)

ResortId HolidayTaxis ResortId

Int

ProductId HolidayTaxis Product Id

Int

BookingTypeId 1 = Return Transfer 2 = Single outbound only 3 = Single inbound only

Int

NumberOfVehiclesRequired Number of vehicles required

Int

NumberOfAdults Number of adults Int

NumberOfChildren Number of children between the ages of 2 and 12

Int

NumberOfInfants Number of infants between the ages of 0 and 2

Int

LeadPassengersTitle Mr, Mrs, Miss and Dr etc

String (Max 10 characters)

LeadPassengersForename First name String (Max 50 characters)

LeadPassengersSurname Last name String (Max 50 characters)

Page 58: Taxi XML

HolidayTaxis Development Guide Page 58 of 97

LeadPassengersEmailAddress Email address String (Max 100 characters)

LeadPassengersMobileTelephoneNumber Contact phone number

String (Max 50 characters)

UserNotes Optional user notes on modification

String

ConfirmTotalPrice Total price for modified booking – this must match the new price before modifications will be saved.

Float

NoUpdate Set to true to obtain updated price without saving. Set to false and confirm total price to save changes.

Boolean

Example XML Request for Bookings.ModifyGeneralDetails POST /SOAP/1.2/Bookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#ModifyBooking" Content-Length: 3315 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><tns:ModifyBooking xmlns:tns="https://holidaytaxis.com/webservice"><Credentials xsi:type="tns:Credentials"><AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode><Password xsi:type="xsd:string">MyPassword</Password><Language xsi:type="xsd:string"></Language></Credentials><ModifyGeneralDetails xsi:type="tns:ModifyGeneralDetails"><BookingReference xsi:type="xsd:string">HTX-1479047</BookingReference><AgentReference xsi:type="xsd:string">MyAgent</AgentReference><Language xsi:type="xsd:string"></Language><ResortId xsi:type="xsd:int">254</ResortId><ProductId xsi:type="xsd:int">287913</ProductId><BookingTypeId xsi:type="xsd:int">1</BookingTypeId><NumberOfVehiclesRequired xsi:type="xsd:int">1</NumberOfVehiclesRequired><NumberOfAdults

Page 59: Taxi XML

HolidayTaxis Development Guide Page 59 of 97

xsi:type="xsd:int">2</NumberOfAdults><NumberOfChildren xsi:type="xsd:int">1</NumberOfChildren><NumberOfInfants xsi:type="xsd:int">0</NumberOfInfants><LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle><LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename><LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname><LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress><LeadPassengersMobileTelephoneNumber xsi:type="xsd:string">123456</LeadPassengersMobileTelephoneNumber><UserNotes xsi:type="xsd:string">test notes</UserNotes><ConfirmTotalPrice xsi:type="xsd:float"></ConfirmTotalPrice><NoUpdate xsi:type="xsd:boolean">true</NoUpdate></ModifyGeneralDetails><OutboundDetails xsi:type="tns:OutboundDetails"><DepartureAirportId xsi:type="xsd:int">39</DepartureAirportId><FlightNumber xsi:type="xsd:string">123</FlightNumber><ArrivalDatetime xsi:type="xsd:dateTime">2011-05-31T21:40:00</ArrivalDatetime><AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName><AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1><AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2><AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3><AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber></OutboundDetails><InboundDetails xsi:type="tns:InboundDetails"><ArrivalAirportId xsi:type="xsd:int">39</ArrivalAirportId><FlightNumber xsi:type="xsd:string">345</FlightNumber><DepartureDatetime xsi:type="xsd:dateTime">2011-06-14T22:40:00</DepartureDatetime><PickupDatetime xsi:type="xsd:dateTime">2011-06-14T19:10:00</PickupDatetime><AccommodationName xsi:type="xsd:string"> My Hotel </AccommodationName><AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1><AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2><AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3><AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber></InboundDetails></tns:ModifyBooking></SOAP-ENV:Body></SOAP-ENV:Envelope>

Bookings.ModifyBookingResponse

Bookings.ModifyBookingResponse Element Blocks

ModifyStatus

GeneralConfirmationDetails

OutboundConfirmationDetails

InboundConfirmationDetails

Child Elements of ModifyStatus

Element Name Value Type

Page 60: Taxi XML

HolidayTaxis Development Guide Page 60 of 97

Status Return status: 0 – not updated 1 - updated

Int

PriceChange Amount price has/will change due to modification.

Int

UserNotes User change notes String

ChangeNoteHTML Auto-generated note listing what has changed (as HTML)

String

Example XML Response for Bookings.ModifyBooking HTTP/1.1 200 OK Date: Fri, 08 Apr 2011 14:17:53 GMT Server: Apache X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 6135 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><ns1:ModifyBookingResponse xmlns:ns1="https://holidaytaxis.com/webservice"><ModifyStatus xsi:type="tns:ModifyStatus"><Status xsi:type="xsd:int">0</Status><PriceChange xsi:type="xsd:float">237.00</PriceChange><UserNotes xsi:type="xsd:string">test notes</UserNotes><ChangeNoteHTML xsi:type="xsd:string">Vehicle Type was &apos;Private Transfer (1 - 4)&apos; and is now &apos;Private Transfer (1 - 4)&apos;&lt;br /&gt;Resort was &apos;Malia&apos; and is now &apos;Agia Marina&apos;&lt;br /&gt;Children was &apos;0&apos; and is now &apos;1&apos;&lt;br /&gt;Mobile no was &apos;&apos; and is now &apos;123456&apos&lt;br /&gt;&amp;nbsp;&lt;br /&gt;Price Change -&lt;br /&gt;Old Price: &amp;pound;41.00, New Price: &amp;pound;278.00&lt;br /&gt;Old Net Price: &amp;pound;40.00, New Net Price: &amp;pound;278.00&lt;br /&gt;(Unit price recalculated to &amp;pound;278.00)&lt;br /&gt;</ChangeNoteHTML></ModifyStatus><GeneralConfirmationDetails xsi:type="tns:GeneralConfirmationDetails"><BookingReference xsi:type="xsd:string">HTX-1479047</BookingReference><AgentReference xsi:type="xsd:string">MyAgent</AgentReference><OrderReference xsi:nil="true" xsi:type="xsd:string"/><BookingStatus xsi:type="xsd:string">AMENDED</BookingStatus><CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode><UnitPrice xsi:type="xsd:float">278.00</UnitPrice><TotalPrice xsi:type="xsd:float">278.00</TotalPrice><DateBooked xsi:type="xsd:dateTime">2011-02-23T14:00:14</DateBooked><BookingTypeId xsi:type="xsd:int">1</BookingTypeId><NumberOfVehicles xsi:type="xsd:int">1</NumberOfVehicles><PerPerson

Page 61: Taxi XML

HolidayTaxis Development Guide Page 61 of 97

xsi:type="xsd:boolean">false</PerPerson><NumberOfAdults xsi:type="xsd:int">2</NumberOfAdults><NumberOfChildren xsi:type="xsd:int">1</NumberOfChildren><NumberOfInfants xsi:type="xsd:int">0</NumberOfInfants><MinimumNumberOfPassengers xsi:type="xsd:int">1</MinimumNumberOfPassengers><MaximumNumberOfPassengers xsi:type="xsd:int">4</MaximumNumberOfPassengers><AirportName xsi:type="xsd:string">Crete Heraklion Airport</AirportName><ResortName xsi:type="xsd:string">Agia Marina</ResortName><ProductType xsi:type="xsd:string">Private Transfer</ProductType><TransferMinutes xsi:type="xsd:int">120</TransferMinutes><BookingType xsi:type="xsd:string">Return transfer</BookingType><LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle><LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename><LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname><LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress><LeadPassengersMobileTelephoneNumber xsi:type="xsd:string">123456</LeadPassengersMobileTelephoneNumber></GeneralConfirmationDetails><OutboundConfirmationDetails xsi:type="tns:OutboundConfirmationDetails"><DepartureAirportName xsi:type="xsd:string">Belfast International Airport</DepartureAirportName><FlightNumber xsi:type="xsd:string">123</FlightNumber><ArrivalDatetime xsi:type="xsd:dateTime">2011-05-31T21:40:00</ArrivalDatetime><AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName><AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1><AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2><AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3><AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber></OutboundConfirmationDetails><InboundConfirmationDetails xsi:type="tns:InboundConfirmationDetails"><ArrivalAirportName xsi:type="xsd:string">Belfast International Airport</ArrivalAirportName><FlightNumber xsi:type="xsd:string">345</FlightNumber><DepartureDatetime xsi:type="xsd:dateTime">2011-06-14T22:40:00</DepartureDatetime><PickupDatetime xsi:type="xsd:dateTime">2011-06-14T19:10:00</PickupDatetime><AccommodationName xsi:type="xsd:string">My Hotel</AccommodationName><AccommodationAddress1 xsi:type="xsd:string"></AccommodationAddress1><AccommodationAddress2 xsi:type="xsd:string"></AccommodationAddress2><AccommodationAddress3 xsi:type="xsd:string"></AccommodationAddress3><AccommodationTelephoneNumber xsi:type="xsd:string"></AccommodationTelephoneNumber></InboundConfirmationDetails><ModifyParameters xsi:type="tns:ModifyParameters"><AirportId xsi:type="xsd:int">22</AirportId><ResortId xsi:type="xsd:int">254</ResortId><ProductId xsi:type="xsd:int">287913</ProductId><DepartureAirportId xsi:type="xsd:int">39</DepartureAirportId><ArrivalAirportId xsi:type="xsd:int">39</ArrivalAirportId></ModifyParameters></ns1:ModifyBookingResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>

Page 62: Taxi XML

HolidayTaxis Development Guide Page 62 of 97

DYNAMIC BOOKINGS

Dynamic bookings are based on the UK only and prices dynamically between the

pick-up and destination postcodes.

DynamicBookings.GetProductPrice

The DynamicBookings.GetProductPrice method is used to get a product price.

DynamicBookings.GetProductPrice Request

DynamicBookings.GetProductPrice Element Blocks

Credentials

ProductPriceParameters

Child Element of ProductPriceParameters

Element Name Description Type Required

AgentReference An identifier that maps to an agency account

String (Max 50 characters)

No

PickupAddress1 The pick-up address or airport etc

String (Max 50 characters)

Yes

PickupAddress2 Address 2 String (Max 50 characters)

No

PickupTown The pick-up town or city String (Max 50 characters)

Yes

PickupPostcode The pick-up postcode String (Max 50 characters)

Yes

DestinationAddress1 The destination address or airport etc

String (Max 50 characters)

Yes

DestinationAddress2 Address 2 String (Max 50 characters)

No

DestinationTown The destination town or city String (Max 50 characters)

Yes

DestinationPostcode The postcode of the destination

String (Max 50 characters)

Yes

PickupDatetime The date and time of the pick-up

DateTime (ISO8601 format 2009-06-01T09:00:00.)

Yes

Page 63: Taxi XML

HolidayTaxis Development Guide Page 63 of 97

ReturnDatetime Required if return journey DateTime (ISO8601 format 2009-06-08T09:00:00.)

No

NumberOfPassengers Total number of passengers travelling

Int Yes

Example XML Request for DynamicBookings.GetProductPrice POST /SOAP/1.2/DynamicBookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetCardTypes" Content-Length: 1629 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetProductPrice xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <ProductPriceParameters xsi:type="tns:ProductPriceParameters"> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <PickupAddress1 xsi:type="xsd:string">Gatwick Airport</PickupAddress1> <PickupAddress2 xsi:type="xsd:string"></PickupAddress2> <PickupTown xsi:type="xsd:string">Gatwick</PickupTown> <PickupPostcode xsi:type="xsd:string">RH6 0JH</PickupPostcode> <DestinationAddress1 xsi:type="xsd:string">1 The Test</DestinationAddress1> <DestinationAddress2 xsi:type="xsd:string">Test Street</DestinationAddress2> <DestinationTown xsi:type="xsd:string">Test</DestinationTown> <DestinationPostcode xsi:type="xsd:string">AB11AB</DestinationPostcode> <PickupDatetime xsi:type="xsd:dateTime">2009-06-01T09:00:00</PickupDatetime> <ReturnDatetime xsi:type="xsd:dateTime">2009-06-08T09:00:00</ReturnDatetime> <NumberOfPassengers xsi:type="xsd:int">2</NumberOfPassengers> </ProductPriceParameters> </tns:GetProductPrice>

Page 64: Taxi XML

HolidayTaxis Development Guide Page 64 of 97

</SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.GetProductPriceResponse

DynamicBookings.GetProductPriceResponse Element Blocks

ProductPrice (ArrayOfProductPrice)

Child Elements of ProductPrice

Element Name Value Type

VehicleTypeId Always returned Int

VehicleName Always returned String (Max 50 characters)

TotalPrice Always returned Float

CurrencyCode Always returned String

Example XML Response for DynamicBookings.GetProductPrice HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Wed, 20 May 2009 11:35:54 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 1097 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><ns1:GetProductPriceResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <ProductPrice xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:ProductPrice[2]"> <item xsi:type="tns:ProductPrice"> <VehicleTypeId xsi:type="xsd:int">2</VehicleTypeId> <VehicleName xsi:type="xsd:string">Standard saloon</VehicleName> <TotalPrice xsi:type="xsd:float">113.97</TotalPrice>

Page 65: Taxi XML

HolidayTaxis Development Guide Page 65 of 97

<CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode> </item> <item xsi:type="tns:ProductPrice"> <VehicleTypeId xsi:type="xsd:int">9</VehicleTypeId> <VehicleName xsi:type="xsd:string">VIP transfer</VehicleName> <TotalPrice xsi:type="xsd:float">172.01</TotalPrice> <CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode> </item> </ProductPrice> </ns1:GetProductPriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.GetGateways

The DynamicBookings.GetGateways method will return a list of UK airports, ports,

stations and hotels.

DynamicBookings.GetGateways Request

DynamicBookings.GetGateways Element Blocks

Credentials

Example XML Request for DynamicBookings.GetGateways POST /SOAP/1.2/DynamicBookings.php HTTP/1.0 Host: www.htxdev.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetGateways" Content-Length: 733 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetGateways xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password>

Page 66: Taxi XML

HolidayTaxis Development Guide Page 66 of 97

<Language xsi:nil="true" xsi:type="xsd:string"/> </Credentials> </tns:GetGateways> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.GetGatewaysResponse

DynamicBookings.GetGatewaysResponse Element Blocks

Gateways (ArrayOfGateways)

Child Elements of GatewayTypes

Element Name Value Type

GatewayTypeCode AIR = Airport STN = Station PRT = Port CTY = City HTL = Hotel

String (Max 10 characters)

GatewayTypeId 1 = Airport 3 = Station 2 = Port 4 = City 5 = Hotel

Int

GatewayId Unique identifier for the Gateway

Int

GatewayIdentifier IATA code if airport String (Max 10 characters)

Gateway Gateway name String (Max 150 characters)

Address1 Gateway address String (Max 150 characters)

Address2 Gateway address String (Max 150 characters)

Area Gateway town or city String (Max 150 characters)

AreaCode Postal code String (Max 150 characters)

Active Always returned Boolean

Page 67: Taxi XML

HolidayTaxis Development Guide Page 67 of 97

Example XML Response for DynamicBookings.GetGateways HTTP/1.2 200 OK Date: Wed, 20 May 2009 13:09:19 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 519917 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"><SOAP-ENV:Body><ns1:GetGatewaysResponse xmlns:ns1="https://holidaytaxis.com/webservice"><Gateways xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:ArrayOfGateways[6]"><item xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:Gateways[41]"> <item xsi:type="tns:Gateways

<GatewayTypeCode xsi:type="xsd:string">AIR</GatewayTypeCode> <GatewayId xsi:type="xsd:int">8</GatewayId> <GatewayTypeId xsi:type="xsd:int">1</GatewayTypeId> <GatewayIdentifier xsi:type="xsd:string">BRS</GatewayIdentifier> <Gateway xsi:type="xsd:string">Bristol Intl</Gateway> <Address1 xsi:type="xsd:string">Bristol Intl Airport</Address1> <Address2 xsi:type="xsd:string">Bristol</Address2> <Area xsi:type="xsd:string">Bristol</Area> <AreaCode xsi:type="xsd:string">BS48 3DY</AreaCode> <Active xsi:type="xsd:int">1</Active>

</item> <item xsi:type="tns:Gateways">

<GatewayTypeCode xsi:type="xsd:string">STN</GatewayTypeCode> <GatewayId xsi:type="xsd:int">124</GatewayId> <GatewayTypeId xsi:type="xsd:int">3</GatewayTypeId> <GatewayIdentifier xsi:nil="true" xsi:type="xsd:string"/> <Gateway xsi:type="xsd:string">Clapham Junction</Gateway> <Address1 xsi:type="xsd:string">Clapham Junction Station</Address1> <Address2 xsi:nil="true" xsi:type="xsd:string"/> <Area xsi:type="xsd:string">London</Area> <AreaCode xsi:type="xsd:string">SW11 2HT</AreaCode> <Active xsi:type="xsd:int">1</Active>

</item> <item xsi:type="tns:Gateways">

<GatewayTypeCode xsi:type="xsd:string">PRT</GatewayTypeCode> <GatewayId xsi:type="xsd:int">73</GatewayId>

Page 68: Taxi XML

HolidayTaxis Development Guide Page 68 of 97

<GatewayTypeId xsi:type="xsd:int">2</GatewayTypeId> <GatewayIdentifier xsi:nil="true" xsi:type="xsd:string"/> <Gateway xsi:type="xsd:string">Dover - Western Docks</Gateway> <Address1 xsi:type="xsd:string">Dover - Western Docks</Address1> <Address2 xsi:type="xsd:string">Western Docks</Address2> <Area xsi:type="xsd:string">Dover</Area> <AreaCode xsi:type="xsd:string">CT17 9TF</AreaCode> <Active xsi:type="xsd:int">1</Active>

</item> <item xsi:type="tns:Gateways">

<GatewayTypeCode xsi:type="xsd:string">CTY</GatewayTypeCode> <GatewayId xsi:type="xsd:int">134</GatewayId> <GatewayTypeId xsi:type="xsd:int">4</GatewayTypeId> <GatewayIdentifier xsi:nil="true" xsi:type="xsd:string"/> <Gateway xsi:type="xsd:string">Edinburgh City Centre</Gateway> <Address1 xsi:nil="true" xsi:type="xsd:string"/> <Address2 xsi:nil="true" xsi:type="xsd:string"/> <Area xsi:type="xsd:string">Edinburgh City Centre</Area> <AreaCode xsi:type="xsd:string">EH1</AreaCode> <Active xsi:type="xsd:int">1</Active>

</item> <item xsi:type="tns:Gateways">

<GatewayTypeCode xsi:type="xsd:string">HTL</GatewayTypeCode> <GatewayId xsi:type="xsd:int">164</GatewayId> <GatewayTypeId xsi:type="xsd:int">5</GatewayTypeId> <GatewayIdentifier xsi:nil="true" xsi:type="xsd:string"/> <Gateway xsi:type="xsd:string">Ambassadors Hotel</Gateway> <Address1 xsi:type="xsd:string">Ambassadors Hotel</Address1> <Address2 xsi:type="xsd:string">16 Collingham Road</Address2> <Area xsi:type="xsd:string">London</Area> <AreaCode xsi:type="xsd:string">SW5 0LX</AreaCode> <Active xsi:type="xsd:int">1</Active>

</item> </Gateways> </ns1:GetGatewaysResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.CreateBooking

The DynamicBookings.CreateBooking method has the following Element Blocks.

Credentials (Required)

PassengerDetails (Required)

GeneralDetails (Required)

Page 69: Taxi XML

HolidayTaxis Development Guide Page 69 of 97

PaymentDetails (Required if AgentReference is blank within the Passenger

Details section)

Please note that all Element Blocks should be parsed in the order above within the

request regardless of any nil values.

If an AgentReference is entered within the PassengerDetails Element Block, the

PaymentDetails Element Blocks request should be parsed as;

<PaymentDetails xsi:nil="true" xsi:type="tns:PaymentDetails"/>

Test payments can be made by using the card number: 1000350000000007 and

CV2: 547

DynamicBookings.CreateBooking Request

DynamicBookings.CreateBooking Element Blocks

Credentials

PassengerDetails

GeneralDetails

PaymentDetails

Child Elements of PassengerDetails

Element Name Description Type Required

NumberOfPassengers Total number of passengers travelling

Int Yes

LeadPassengersTitle Mr, Mrs, Miss and Dr etc

String (Max 10 characters)

Yes

LeadPassengersForename First name String (Max 50 characters)

Yes

LeadPassengersSurname Last name String (Max 50 characters)

Yes

Page 70: Taxi XML

HolidayTaxis Development Guide Page 70 of 97

Child Elements of GeneralDetails

Element Name Description Type Required

AgentReference The identifier of your agent you provided to HolidayTaxis

String (Max 50 characters)

No

OrderReference Your reference String (Max 50 characters)

No

TotalPrice The total price returned in Dynamic Bookings. GetProductPrice that matches the VehicleTypeId

Float Yes

VehicleTypeId As returned in DynamicBookings. GetProductPrice

Int Yes

PickupAddress1 The pick-up address or airport etc

String (Max 50 characters)

Yes

PickupAddress2 Address 2 String (Max 50 characters)

No

PickupTown The pick-up town or city String (Max 50 characters)

Yes

PickupPostcode The pick-up postcode String (Max 50 characters)

Yes

PickupAirport IATA Code as an alternative to the pick up address if an airport

String No

PickupTerminal Required if an airport pick up with a terminal

String No

PickupFlightNo Required if an airport pick up

String No

DestinationAddress1 The destination address or airport etc

String (Max 50 characters)

Yes

DestinationAddress2 Address 2 String (Max 50 characters)

No

DestinationTown The destination town or city String (Max 50 characters)

Yes

DestinationPostcode The postcode of the String (Max 50 Yes

LeadPassengersEmailAddress Email address String (Max 100 characters)

Yes

LeadPassengersMobileTelephoneNumber Contact phone number

String (Max 50 characters)

Yes

Page 71: Taxi XML

HolidayTaxis Development Guide Page 71 of 97

destination characters)

DestinationAirport IATA Code as an alternative to the destination address if an airport

String No

DestinationTerminal Required if an airport destination with a terminal

String No

DestinationFlightNo Required if an airport destination

String No

PickupDatetime The date and time of the pick-up

DateTime (ISO8601 format 2009-06-01T09:00:00.)

Yes

ReturnDatetime Required if return journey DateTime (ISO8601 format 2009-06-08T09:00:00.)

No

SpecialInstructions For example, extra luggage, child seats or wheelchairs etc

String (Max 250 characters)

No

Child Elements of PaymentDetails

Element Name Description Type Required

CardHoldersTitle Mr, Mrs, Miss and Dr etc

String (Max 10 characters)

Yes

CardHoldersForename First name as on bank statement

String (Max 50 characters)

Yes

CardHoldersSurname Last name as on bank statement

String (Max 50 characters)

Yes

CardHoldersContactNumber Contact telephone number

String (Max 50 characters)

Yes

CardHoldersAddress1 Address 1 as on bank statement

String (Max 50 characters)

Yes

CardHoldersAddress2 Address 2 as on bank statement

String (Max 50 characters)

Yes

CardHoldersAddress3 Address 3 String (Max 50 characters)

No

CardHoldersPostalCode Postcode as on bank statement

String (Max 50 characters)

Yes

CardType As returned in GetCardTypes

String (Max 50 characters)

Yes

CardNumber Required String that must pass the Luhn Mod 10 credit card check

String Yes

CV2Number 3 or 4 digit security number on the back of

String (Max 4 characters)

Yes

Page 72: Taxi XML

HolidayTaxis Development Guide Page 72 of 97

the card

NameOnCard Cardholders name String (Max 50 characters)

Yes

IssueNumber Required when card type is Switch/ Maestro

Int Yes

CardStartMonthYear must match /^([0-9]{2})\/([0-9]{2}|[0-9]{4})$/

String No

CardExpiryMonthYear must match /^([0-9]{2})\/([0-9]{2}|[0-9]{4})$/

String Yes

Example XML Request for DynamicBookings.CreateBooking POST /SOAP/1.2/DynamicBookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#CreateBooking" Content-Length: 2363 <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:CreateBooking xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <PassengerDetails xsi:type="tns:PassengerDetails"> <NumberOfPassengers xsi:type="xsd:int">4</NumberOfPassengers> <LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle> <LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename> <LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname> <LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress> <LeadPassengersMobileTelephoneNumber

Page 73: Taxi XML

HolidayTaxis Development Guide Page 73 of 97

xsi:type="xsd:string">123456789</LeadPassengersMobileTelephoneNumber> </PassengerDetails> <GeneralDetails xsi:type="tns:GeneralDetails"> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <OrderReference xsi:type="xsd:string"></OrderReference> <TotalPrice xsi:type="xsd:float">160.50</TotalPrice> <VehicleTypeId xsi:type="xsd:int">9</VehicleTypeId> <PickupAddress1 xsi:type="xsd:string">5 Test Street</PickupAddress1> <PickupAddress2 xsi:type="xsd:string"></PickupAddress2> <PickupTown xsi:type="xsd:string">Test Town</PickupTown> <PickupPostcode xsi:type="xsd:string">AB1 1AB</PickupPostcode> <PickupAirport xsi:type="xsd:string"></PickupAirport> <PickupTerminal xsi:type="xsd:string"></PickupTerminal> <PickupFlight xsi:type="xsd:string"></PickupFlight> <DestinationAddress1 xsi:type="xsd:string"></DestinationAddress1> <DestinationAddress2 xsi:type="xsd:string"></DestinationAddress2> <DestinationTown xsi:type="xsd:string"></DestinationTown> <DestinationPostcode xsi:type="xsd:string"></DestinationPostcode> <DestinationAirport xsi:type="xsd:string">LGW</DestinationAirport> <DestinationTerminal xsi:type="xsd:string">North</DestinationTerminal> <DestinationFlight xsi:type="xsd:string">1234</DestinationFlight> <PickupDatetime xsi:type="xsd:dateTime">2009-06-07T12:00:00</PickupDatetime> <ReturnDatetime xsi:type="xsd:dateTime">2009-06-12T12:00:00</ReturnDatetime> <SpecialInstructions xsi:type="xsd:string"></SpecialInstructions> </GeneralDetails> <PaymentDetails xsi:nil="true" xsi:type="tns:PaymentDetails"/> </tns:CreateBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.CreateBookingResponse

DynamicBookings.CreateBookingResponse Element Blocks

GeneralConfirmationDetails

PassengerConfirmationDetails

Child Elements of PassengerConfirmationDetails

Element Name Value Type

NumberOfPassengers Always returned Int

LeadPassengersTitle Always returned String (Max 10 characters)

LeadPassengersForename Always returned String (Max 50 characters)

Page 74: Taxi XML

HolidayTaxis Development Guide Page 74 of 97

Child Elements of GeneralConfirmationDetails

Element Name Value Type

BookingReference Always returned String

AgentReference Always returned if provided String (Max 50 characters)

OrderReference Always returned if provided String (Max 50 characters)

CurrencyCode ISO currency code String (Max 3 characters)

TotalPrice Always returned Float

DateBooked Always returned DateTime

VehicleTypeId Always returned Int

VehicleType Standard or executive etc String

PickupAddress1 Always returned String (Max 50 characters)

PickupAddress2 Always returned if provided String (Max 50 characters)

PickupTown Always returned String (Max 50 characters)

PickupPostcode Always returned String (Max 50 characters)

PickupAirport Always returned if provided String

PickupTerminal Always returned if provided an airport pick up with a terminal

String

PickupFlightNo Always returned if provided String

DestinationAddress1 Always returned String (Max 50 characters)

DestinationAddress2 Always returned if provided String (Max 50 characters)

DestinationTown Always returned String (Max 50 characters)

DestinationPostcode Always returned String (Max 50 characters)

DestinationAirport Always returned if provided String

DestinationTerminal Always returned if provided String

DestinationFlightNo Always returned if provided String

PickupDatetime Always returned DateTime (ISO8601 format 2009-06-

LeadPassengersSurname Always returned String (Max 50 characters)

LeadPassengersEmailAddress Always returned String (Max 100 characters)

LeadPassengersMobileTelephoneNumber Always returned String (Max 50 characters)

Page 75: Taxi XML

HolidayTaxis Development Guide Page 75 of 97

01T09:00:00.)

ReturnDatetime Always returned if provided DateTime (ISO8601 format 2009-06-08T09:00:00.)

SpecialInstructions Always returned if provided String (Max 250 characters)

BookingStatus Returns ‘CONFIRMED’, ‘AMENDED’ or ‘CANCELLED’

String

Example XML Response for DynamicBookings.CreateBooking HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Wed, 20 May 2009 17:01:13 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 2538 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:CreateBookingResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <PassengerConfirmationDetails xsi:type="tns:PassengerConfirmationDetails"> <NumberOfPassengers xsi:type="xsd:int">4</NumberOfPassengers> <LeadPassengersTitle xsi:type="xsd:string">Mr</LeadPassengersTitle> <LeadPassengersForename xsi:type="xsd:string">Test</LeadPassengersForename> <LeadPassengersSurname xsi:type="xsd:string">Test</LeadPassengersSurname> <LeadPassengersEmailAddress xsi:type="xsd:string">[email protected]</LeadPassengersEmailAddress> <LeadPassengersMobileTelephoneNumber xsi:type="xsd:string">123456789</LeadPassengersMobileTelephoneNumber> </PassengerConfirmationDetails> <GeneralConfirmationDetails xsi:type="tns:GeneralConfirmationDetails"> <BookingReference xsi:type="xsd:string">758812</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference> <OrderReference xsi:nil="true" xsi:type="xsd:string"/> <CurrencyCode xsi:type="xsd:string">GBP</CurrencyCode>

Page 76: Taxi XML

HolidayTaxis Development Guide Page 76 of 97

<TotalPrice xsi:type="xsd:float">160.50</TotalPrice> <DateBooked xsi:type="xsd:dateTime">2009-06-01T13:42:03</DateBooked> <VehicleTypeId xsi:type="xsd:int">9</VehicleTypeId> <VehicleType xsi:type="xsd:string">VIP transfer</VehicleType> <PickupAddress1 xsi:type="xsd:string">5 Test Street</PickupAddress1> <PickupAddress2 xsi:nil="true" xsi:type="xsd:string"/> <PickupTown xsi:type="xsd:string">Test Town</PickupTown> <PickupPostcode xsi:type="xsd:string">AB1 1AB</PickupPostcode> <PickupAirport xsi:nil="true" xsi:type="xsd:string"/> <PickupTerminal xsi:nil="true" xsi:type="xsd:string"/> <PickupFlight xsi:nil="true" xsi:type="xsd:string"/> <PickupDatetime xsi:type="xsd:dateTime">2009-06-07T12:00:00</PickupDatetime> <DestinationAddress1 xsi:type="xsd:string">London Gatwick Airport</DestinationAddress1> <DestinationAddress2 xsi:nil="true" xsi:type="xsd:string"/> <DestinationTown xsi:type="xsd:string">Gatwick</DestinationTown> <DestinationPostcode xsi:type="xsd:string">RH6 0JH</DestinationPostcode> <DestinationAirport xsi:type="xsd:string">LGW</DestinationAirport> <DestinationTerminal xsi:type="xsd:string">North Terminal</DestinationTerminal> <DestinationFlight xsi:type="xsd:string">1234</DestinationFlight> <ReturnDatetime xsi:type="xsd:dateTime">2009-06-12T12:00:00</ReturnDatetime> <SpecialInstructions xsi:nil="true" xsi:type="xsd:string"/> <BookingStatus xsi:type="xsd:string">CONFIRMED</BookingStatus> </GeneralConfirmationDetails> </ns1:CreateBookingResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.GetBooking

The DynamicBookings.GetBooking method returns all the information of a booking

that would be returned in DynamicBookings.CreateBookingResponse.

DynamicBookings.GetBooking Request

DynamicBookings.GetBooking Element Blocks

Credentials

GetBookingParameters

Page 77: Taxi XML

HolidayTaxis Development Guide Page 77 of 97

Child Elements of GetBookingParameters

Element Name Description Type Required

BookingReference Must be in the format /^.\w+\-.\d+?$/

String Yes

AgentReference An identifier that maps to an agency account

String (Max 50 characters)

No

Example XML Request for DynamicBookings.GetBooking POST /SOAP/1.2/DynamicBookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetBooking" Content-Length: 939 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><tns:GetBooking xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <GetBookingParameters xsi:type="tns:GetBookingParameters"> <BookingReference xsi:type="xsd:string">755338</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent</AgentReference> </GetBookingParameters> </tns:GetBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 78: Taxi XML

HolidayTaxis Development Guide Page 78 of 97

DynamicBookings.GetBookingResponse

The DynamicBookings.GetBooking response is the same as the

DynamicBookings.CreateBookingResponse.

DynamicBookings.CancelBooking

The DynamicBookings.CancelBooking method cancels the booking of the booking

reference entered.

DynamicBookings.CancelBooking Request

DynamicBookings.CancelBooking Element Blocks

Credentials

o BookingReference

Element Name Description Type Required

BookingReference Must be in the format /^.\w+\-.\d+?$/

String Yes

Example XML Request for DynamicBookings.CancelBooking POST /SOAP/1.2/DynamicBookings.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#CancelBooking" Content-Length: 806 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:CancelBooking xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

Page 79: Taxi XML

HolidayTaxis Development Guide Page 79 of 97

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <BookingReference xsi:type="xsd:string">755338</BookingReference> </tns:CancelBooking> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

DynamicBookings.CancelBookingResponse

DynamicBookings.CancelBookingResponse Element Blocks

PassengerDetails

o return

Element Name Value Type

return Returns ‘True’ if booking cancelled successfully or ‘False’ if booking already cancelled or already travelled

Boolean

Example XML Response for DynamicBookings.CancelBooking HTTP/1.2 200 OK Date: Thu, 21 May 2009 13:45:01 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 472 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:CancelBookingResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <return xsi:type="xsd:boolean">true</return> </ns1:CancelBookingResponse>

Page 80: Taxi XML

HolidayTaxis Development Guide Page 80 of 97

</SOAP-ENV:Body></SOAP-ENV:Envelope>

REPORTS

Reports.GetAgencyDetails

The Reports.GetAgencyDetails method will return all agencies registered under the

affiliate code.

Reports.GetAgencyDetails Request

Reports.GetAgencyDetails Element Blocks

Credentials

Example XML Request for Reports.GetAgencyDetails POST /SOAP/1.2/Reports.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetAgencyDetailsResults" Content-Length: 743 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><tns:GetAgencyDetails xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> </tns:GetAgencyDetails> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 81: Taxi XML

HolidayTaxis Development Guide Page 81 of 97

Reports.GetAgencyDetailsResponse

Reports.GetAgencyDetailsResponse Element Blocks

GetAgencyDetailsResults (ArrayOfGetAgencyDetailsResults)

Child Elements of GetAgencyDetailsResults

Element Name Value Type

AgentReference Always returned String (Max 50 characters)

Active True/ False Boolean

AgencyName Always returned String (Max 50 characters)

ContactName Always returned String (Max 50 characters)

ContactTelephone Always returned String (Max 50 characters)

ContactEmailAddress Always returned String (Max 100 characters)

MarkupMinimum Always returned Float

MarkupPercentage The percentage that products will be markup by. If used in conjunction with the MarkupMinimum it will use the higher of the two values

Float

Example XML Response for Reports.GetAgencyDetails HTTP/1.2 200 OK Date: Thu, 21 May 2009 13:54:35 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 122143 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetAgencyDetailsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <GetAgencyDetailsResults xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:GetAgencyDetailsResults[212]"> <item xsi:type="tns:GetAgencyDetailsResults"> <AgentReference xsi:type="xsd:string">MyAgent1</AgentReference>

Page 82: Taxi XML

HolidayTaxis Development Guide Page 82 of 97

<Active xsi:type="xsd:boolean">true</Active> <AgencyName xsi:type="xsd:string">MyTravelAgent1</AgencyName> <ContactName xsi:type="xsd:string">Mr Test1 </ContactName> <ContactTelephone xsi:type="xsd:string">01234567890</ContactTelephone> <ContactEmailAddress xsi:type="xsd:string">[email protected]</ContactEmailAddress> <MarkupMinimum xsi:type="xsd:float">0.00</MarkupMinimum> <MarkupPercentage xsi:type="xsd:float">0.00</MarkupPercentage> </item> <item xsi:type="tns:GetAgencyDetailsResults"> <AgentReference xsi:type="xsd:string">MyAgent2</AgentReference> <Active xsi:type="xsd:boolean">true</Active> <AgencyName xsi:type="xsd:string">MyTravelAgent2</AgencyName> <ContactName xsi:type="xsd:string">Mr Test2 </ContactName> <ContactTelephone xsi:type="xsd:string">01234567892</ContactTelephone> <ContactEmailAddress xsi:type="xsd:string">[email protected]</ContactEmailAddress> <MarkupMinimum xsi:type="xsd:float">0.00</MarkupMinimum> <MarkupPercentage xsi:type="xsd:float">0.00</MarkupPercentage> </item> </GetAgencyDetailsResults> </ns1:GetAgencyDetailsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Reports.GetBookings

The Reports.GetBookings method will return all bookings within the dates selected.

Reports.GetBookings Request

Reports.GetBookings Element Blocks

Credentials

BookingsSearch

Child Elements of BookingsSearch

Element Name Description Type Required

DateFrom DateTime (ISO8601 format 2009-06-01T09:00:00.)

DateTime Yes

DateTo DateTime (ISO8601 format 2009-06-08T09:00:00.)

DateTime Yes

DateBasedOn Booked/ Arrival/ Departure Date String Yes

BookingStatus Based on Live/ Cancelled String Yes

Page 83: Taxi XML

HolidayTaxis Development Guide Page 83 of 97

bookings or both

Example XML Request for Reports.GetBookings POST /SOAP/1.2/Reports.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetBookings" Content-Length: 1028 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetBookings xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <BookingsSearch xsi:type="tns:GetBookingsSearch"> <DateFrom xsi:type="xsd:dateTime">2009-01-31T00:00:00</DateFrom> <DateTo xsi:type="xsd:dateTime">2009-03-31T00:00:00</DateTo> <DateBasedOn xsi:type="xsd:string">BKD</DateBasedOn> <BookingStatusxsi:type="xsd:string"></BookingStatus> </BookingsSearch> </tns:GetBookings> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Reports.GetBookingsResponse

Reports.GetBookingsResponse Element Blocks

GetBookingsResults (ArrayOfGetBookingsResults)

Page 84: Taxi XML

HolidayTaxis Development Guide Page 84 of 97

Child Elements of GetBookingResults

Element Name Value Type

BookingReference Always returned String (Max 50 characters)

AgentReference Always returned String (Max 50 characters)

Status Always returned LIVE or CANX

String

LeadName Always returned String (Max 50 characters)

DateOfTravel Always returned String (Max 50 characters)

CostPrice Always returned Float

Example XML Response for Reports.GetBookings HTTP/1.2 100 Continue HTTP/1.2 200 OK Date: Thu, 21 May 2009 15:49:05 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 18482 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetBookingsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <GetBookingsResults xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:GetBookingsResults[45]"> <item xsi:type="tns:GetBookingsResults"> <BookingReference xsi:type="xsd:string">123456</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent1</AgentReference> <Status xsi:type="xsd:string">LIVE</Status> <Leadname xsi:type="xsd:string">Mr Test1</Leadname> <DateOfTravel xsi:type="xsd:dateTime">2009-02-01T19:05:00</DateOfTravel> <CostPrice xsi:type="xsd:float">16.00</CostPrice> </item> <item xsi:type="tns:GetBookingsResults"> <BookingReference xsi:type="xsd:string">123457</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent2</AgentReference> <Status xsi:type="xsd:string">LIVE</Status> <Leadname xsi:type="xsd:string">Mr Test2</Leadname> <DateOfTravel xsi:type="xsd:dateTime">2009-02-01T19:05:00</DateOfTravel> <CostPrice xsi:type="xsd:float">42.00</CostPrice> </item> </GetBookingsResults>

Page 85: Taxi XML

HolidayTaxis Development Guide Page 85 of 97

</ns1:GetBookingsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Reports.GetCommercialAgreements

The Reports.GetCommercialAgreements method will return the initial commercial

agreement dates and terms.

Reports.GetCommercialAgreements Request

Reports.GetCommercialAgreements Element Blocks

Credentials

Example XML Request for Reports.GetCommercialAgreements POST /SOAP/1.2/Reports.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetCommercialAgreementsResults" Content-Length: 757 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body><tns:GetCommercialAgreements xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> </tns:GetCommercialAgreements> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Page 86: Taxi XML

HolidayTaxis Development Guide Page 86 of 97

Reports.GetCommercialAgreementsResponse

Reports.GetCommercialAgreements Element Blocks

GetCommercialAgreementsResults

(ArrayOfGetCommercialAgreementsResults)

Child Elements of GetCommercialAgreements

Element Name Value Type

Description Always returned String (Max 50 characters)

StartDate DateTime (ISO8601 format 2008-06-08T09:00:00.)

DateTime

EndDate DateTime (ISO8601 format 2009-06-08T09:00:00.)

DateTime

AgreementPayment Always returned Float

AgreementFixed If true then the AgreementPayment is a fixed value else it is a percentage

Boolean

Example XML Response for Reports.GetCommercialAgreements HTTP/1.2 200 OK Date: Thu, 21 May 2009 16:54:55 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 1021 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetCommercialAgreementsResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <GetCommercialAgreementsResults xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:GetCommercialAgreementsResults[1]">

Page 87: Taxi XML

HolidayTaxis Development Guide Page 87 of 97

<item xsi:type="tns:GetCommercialAgreementsResults"> <Description xsi:type="xsd:string">Initial Agreement</Description> <StartDate xsi:type="xsd:dateTime">2004-07-01T00:00:00</StartDate> <EndDate xsi:type="xsd:dateTime">2009-12-31T23:59:59</EndDate> <AgreementPayment xsi:type="xsd:float">1.00</AgreementPayment> <AgreementFixed xsi:type="xsd:boolean">true</AgreementFixed> </item> </GetCommercialAgreementsResults> </ns1:GetCommercialAgreementsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Reports.GetCommissionSummary

The Reports.GetCommissionSummary method will return a commission summary for

all bookings within the month and year selected.

Reports.GetCommissionSummary Request

Reports.GetCommissionSummary Element Blocks

Credentials

o MonthYear

Element Name Description Type Required

MonthYear Must be MM/YYYY format

String Yes

Example XML Request for Reports.GetCommissionSummary POST /SOAP/1.2/Reports.php HTTP/1.0 Host: testserver.holidaytaxis.com:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=UTF-8 SOAPAction: "https://holidaytaxis.com/webservice#GetCommissionSummaryResults" Content-Length: 803 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-

Page 88: Taxi XML

HolidayTaxis Development Guide Page 88 of 97

ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetCommissionSummary xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials">

<AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:nil="true" xsi:type="xsd:string"/>

</Credentials> <MonthYear xsi:type="xsd:string">01/2009</MonthYear> </tns:GetCommissionSummary> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Reports.GetCommissionSummaryResponse

Reports.GetCommissionSummary Element Blocks

GetCommissionSummaryResults (ArrayOfGetCommissionSummaryResults)

Child Elements of GetCommissionSummary

Element Name Value Type

BookingReference HolidayTaxis booking reference

String (Max 50 characters)

AgentReference The reference of the agent that made the booking

String (Max 50 characters)

FullfillmentDate The date the booking was fulfilled

DateTime (ISO8601 format 2009-06-08T09:00:00.)

CommercialRate Always returned Float

Commission Agreed commission rate Float

Example XML Response for Reports.GetCommissionSummary HTTP/1.2 200 OK Date: Thu, 21 May 2009 17:11:22 GMT Server: Apache X-Powered-By: PHP/5.2.9-pl2-gentoo X-SOAP-Server: NuSOAP/0.7.3 (1.114) Content-Length: 115191 Content-Type: text/xml; charset=UTF-8 <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"

Page 89: Taxi XML

HolidayTaxis Development Guide Page 89 of 97

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <ns1:GetCommissionSummaryResponse xmlns:ns1="https://holidaytaxis.com/webservice"> <GetCommissionSummaryResults xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:GetCommissionSummaryResults[313]"> <item xsi:type="tns:GetCommissionSummaryResults"> <BookingReference xsi:type="xsd:string">577118</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent1</AgentReference> <FullfillmentDate xsi:type="xsd:dateTime">2009-02-10T16:30:00</FullfillmentDate> <CommercialDate xsi:nil="true" xsi:type="xsd:float"/> <Commission xsi:type="xsd:float">1.00</Commission> </item><item xsi:type="tns:GetCommissionSummaryResults"> <BookingReference xsi:type="xsd:string">582181</BookingReference> <AgentReference xsi:type="xsd:string">MyAgent2</AgentReference> <FullfillmentDate xsi:type="xsd:dateTime">2009-02-07T08:00:00</FullfillmentDate> <CommercialDate xsi:nil="true" xsi:type="xsd:float"/> <Commission xsi:type="xsd:float">1.00</Commission> </item> </GetCommissionSummaryResults> </ns1:GetCommissionSummaryResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

BOOKING VOUCHERS

Booking vouchers should be sent out by you to your agents and customers. The

information to send in the booking voucher is returned in

Bookings.CreateBookingResponse.

A sample booking voucher can be viewed at

https://testserver.holidaytaxis.com/SOAP/confirmation.html.

Page 90: Taxi XML

HolidayTaxis Development Guide Page 90 of 97

PHP EXAMPLES

Products.GetResortProducts Example

<?php $header[] = "SOAPAction: http://holidaytaxis.com"; $header[] = "MIME-Version: 1.0"; $header[] = "Content-type: text/xml; charset=utf-8"; $soap = '<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns: GetResortProducts xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:type="xsd:string">en</Language> </Credentials> <ResortProductParameters xsi:type="tns:ResortProductParameters"> <AgentReference xsi:type="xsd:string"></AgentReference> <AirportGroupId xsi:type="xsd:int">1</AirportGroupId> <AirportId xsi:type="xsd:int">1</AirportId> <ResortId xsi:type="xsd:int">1</ResortId> <DateRequired xsi:type="xsd:dateTime"></DateRequired> </ResortProductParameters> </tns:GetResortProducts> </SOAP-ENV:Body> </SOAP-ENV:Envelope>'; $ch = curl_init(); // initialize curl handle curl_setopt($ch, CURLOPT_URL, 'https://testserver.holidaytaxis.com/SOAP/1.2/Products.php'); // set url to post to curl_setopt($ch, CURLOPT_POSTFIELDS, utf8_encode($soap) ); // add request curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $result = curl_exec($ch); // run the whole process if (curl_errno($ch)) { echo '<h2>Error</h2><pre>' . curl_error($ch) . '</pre>'; }

Page 91: Taxi XML

HolidayTaxis Development Guide Page 91 of 97

else { // Display the request and response $return_str .= '<h2>SOAP Request</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($soap, ENT_QUOTES) . '</textarea>'; $return_str .= '<h2>SOAP Response</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($result, ENT_QUOTES) . '</textarea>'; echo $return_str; } curl_close($ch); ?>

Bookings.GetDepartureAirports Example

<?php $header[] = "SOAPAction: http://holidaytaxis.com"; $header[] = "MIME-Version: 1.0"; $header[] = "Content-type: text/xml; charset=utf-8"; $soap = '<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetDepartureAirports xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:type="xsd:string">en</Language> </Credentials> </tns:GetDepartureAirports> </SOAP-ENV:Body> </SOAP-ENV:Envelope>'; $ch = curl_init(); // initialize curl handle curl_setopt($ch, CURLOPT_URL, 'https://testserver.holidaytaxis.com/SOAP/1.2/Bookings.php'); // set url to post to curl_setopt($ch, CURLOPT_POSTFIELDS, utf8_encode($soap) ); // add request curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $result = curl_exec($ch); // run the whole process

Page 92: Taxi XML

HolidayTaxis Development Guide Page 92 of 97

if (curl_errno($ch)) { echo '<h2>Error</h2><pre>' . curl_error($ch) . '</pre>'; } else { // Display the request and response $return_str .= '<h2>SOAP Request</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($soap, ENT_QUOTES) . '</textarea>'; $return_str .= '<h2>SOAP Response</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($result, ENT_QUOTES) . '</textarea>'; echo $return_str; } curl_close($ch); ?>

Bookings.GetBookingTypes Example

<?php $header[] = "SOAPAction: http://holidaytaxis.com"; $header[] = "MIME-Version: 1.0"; $header[] = "Content-type: text/xml; charset=utf-8"; $soap = '<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetBookingTypes xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:type="xsd:string">en</Language> </Credentials> </tns:GetBookingTypes> </SOAP-ENV:Body> </SOAP-ENV:Envelope>'; $ch = curl_init(); // initialize curl handle curl_setopt($ch, CURLOPT_URL, 'https://testserver.holidaytaxis.com/SOAP/1.2/Bookings.php'); // set url to post to curl_setopt($ch, CURLOPT_POSTFIELDS, utf8_encode($soap) ); // add request curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

Page 93: Taxi XML

HolidayTaxis Development Guide Page 93 of 97

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $result = curl_exec($ch); // run the whole process if (curl_errno($ch)) { echo '<h2>Error</h2><pre>' . curl_error($ch) . '</pre>'; } else { // Display the request and response $return_str .= '<h2>SOAP Request</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($soap, ENT_QUOTES) . '</textarea>'; $return_str .= '<h2>SOAP Response</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($result, ENT_QUOTES) . '</textarea>'; echo $return_str; } curl_close($ch); ?>

DynamicBookings.GetGateways Example

<?php $header[] = "SOAPAction: http://holidaytaxis.com"; $header[] = "MIME-Version: 1.0"; $header[] = "Content-type: text/xml; charset=utf-8"; $soap = '<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://holidaytaxis.com/webservice"> <SOAP-ENV:Body> <tns:GetGateways xmlns:tns="https://holidaytaxis.com/webservice"> <Credentials xsi:type="tns:Credentials"> <AffiliateCode xsi:type="xsd:string">MyAffiliateCode</AffiliateCode> <Password xsi:type="xsd:string">MyPassword</Password> <Language xsi:type="xsd:string">en</Language> </Credentials> </tns:GetGateways> </SOAP-ENV:Body> </SOAP-ENV:Envelope>'; $ch = curl_init(); // initialize curl handle

Page 94: Taxi XML

HolidayTaxis Development Guide Page 94 of 97

curl_setopt($ch, CURLOPT_URL, 'https://testserver.holidaytaxis.com/SOAP/1.2/DynamicBookings.php'); // set url to post to curl_setopt($ch, CURLOPT_POSTFIELDS, utf8_encode($soap) ); // add request curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $result = curl_exec($ch); // run the whole process if (curl_errno($ch)) { echo '<h2>Error</h2><pre>' . curl_error($ch) . '</pre>'; } else { // Display the request and response $return_str .= '<h2>SOAP Request</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($soap, ENT_QUOTES) . '</textarea>'; $return_str .= '<h2>SOAP Response</h2>'; $return_str .= '<textarea cols="70" rows="12" readonly>' . htmlspecialchars($result, ENT_QUOTES) . '</textarea>'; echo $return_str; } curl_close($ch); ?>

Page 95: Taxi XML

HolidayTaxis Development Guide Page 95 of 97

PROCESS FLOW

GetAllDestinations

GetResortProducts

GetProductPrice

CreateBooking

AirportGroupId

AirportId

ResortId

Credentials (Required for all methods)

AffiliateCode

Password

Language (Optional)

AgentReference (Optional)

DateRequired (Optional)

Also returns

AirportGroupName

AirportName

AirportCode

ResortName

ProductId GetBookingTypes BookingTypeId

Also returns all product information for the airport and resort.

GetDepartureAirports

UnitPrice

TotalPrice

ProductId

DepartureAirportId

ArrivalAirportId

GeneralConfirmationDetails

OutboundConfirmationDetails

InboundConfirmationDetails

ReconfirmationDetails

NumberOfVehicles

NumberOfAdults

NumberOfChildren

NumberOfInfants

OutboundArrivalDateTime

InboundPickupDatetime

AgentReference (Optional)

GeneralDetails

AgentReference (Optional)

OrderReference (Optional)

BookingTypeId

NumberOfVehicles

NumberOfAdults

NumberOfChildren

NumberOfInfants

LeadPassengersTitle

LeadPassengersForename

LeadPassengersSurname

LeadPassengersEmailAddress

LeadPassengersMobileTelephone

Number

OutboundDetails

DepartureAirportId

FlightNumber

DepartureDatetime

ArrivalDatetime

AccommodationName

AccommodationAddress1

AccommodationAddress2

AccommodationAddress3

AccommodationTelephone

Number

OutboundDetails

ArrivalAirportId

FlightNumber

DepartureDatetime

PickupDatetime

AccommodationName

AccommodationAddress1

AccommodationAddress2

AccommodationAddress3

AccommodationTelephone

Number

PaymentDetails are required if no AgentReference is entered

Key:

Request

Response

Page 96: Taxi XML

HolidayTaxis Development Guide Page 96 of 97

TESTING REQUIREMENTS

When you have been set up with a test account, the minimum requirement for testing

the HolidayTaxis web service is as follows;

Products.GetAllDestinations o Please note that this method has the largest payload and we

recommend that this is cached locally. You will also need to map the HolidayTaxis destinations and resorts to your own. For more information, please email us on [email protected].

Products.GetResortProducts o Test the information returned from GetAllDestinations to return the

ProductId.

Products.GetProductPrice o Test for per person and per vehicle pricing with the ProductId’s

returned in GetResortProducts.

Bookings.CreateBooking o Test different product types and destinations as well as multiple pax

bookings.

Booking Voucher o Booking vouchers should be sent out by you to your agents and

customers. The information to send in the booking voucher is returned

in Bookings.CreateBookingResponse.

o A sample booking voucher can be viewed at

https://testserver.holidaytaxis.com/SOAP/confirmation.html.

o Please send a copy of your booking voucher to us on

[email protected].

Page 97: Taxi XML

HolidayTaxis Development Guide Page 97 of 97

APPENDICES

If you already have a HolidayTaxis XML web services account and wish to upgrade

to version 1.2, please email us on [email protected].

More information and sample clients can be found at; https://testserver.holidaytaxis.com/SOAP/1.2


Recommended