Download - Taxi XML
HolidayTaxis Development Guide Page 1 of 97
HolidayTaxis Development Guide
Version: 1.2 XML Web Services
Publication Date: 11th April 2011
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
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
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
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
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
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
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>
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
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
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
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>
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.
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>
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">
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">
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)
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>
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.
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">
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
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
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>
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
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"
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
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.
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>
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
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
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
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)
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
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"/>
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>
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>
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>
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">
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>
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"/>
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
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
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
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
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-
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
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)
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)
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">
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
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>
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">
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
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
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
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
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
HolidayTaxis Development Guide Page 56 of 97
xsi:type="xsd:string">123</AccommodationTelephoneNumber><Instructions xsi:type="xsd:string"> Please note that it is <span style="font-weight: bold;">COMPULSORY </span>and <span style="font-weight: bold;">EXTREMELY </span>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.<br><br>To ensure that you get the correct vehicle please ensure your driver is aware of your name before you show him your booking voucher. <p>Terms and Conditions: <a href="http://www2.holidaytaxis.com/about/terms.php">www2.holidaytaxis.com/about/terms.php</a></p></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.
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)
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
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
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 'Private Transfer (1 - 4)' and is now 'Private Transfer (1 - 4)'<br />Resort was 'Malia' and is now 'Agia Marina'<br />Children was '0' and is now '1'<br />Mobile no was '' and is now '123456&apos<br />&nbsp;<br />Price Change -<br />Old Price: &pound;41.00, New Price: &pound;278.00<br />Old Net Price: &pound;40.00, New Net Price: &pound;278.00<br />(Unit price recalculated to &pound;278.00)<br /></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
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>
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
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>
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>
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>
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
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>
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)
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
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
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
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
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)
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)
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>
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
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>
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">
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>
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>
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>
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
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)
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>
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>
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]">
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-
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"
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.
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>'; }
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
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);
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
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); ?>
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
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
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