Table of Contents
Volatour XML (Java) WebSercies
Dear valuable partner, Welcome to the Volatour XML Interface Guide. We hope you will have a smooth and successful integration to our system.
Should you have any question or need any assistance, please contact:
webservices@teamamericany.com
Development Doclit WSDL: http://devxml40.volateam.com:8081/volatour/services/volatour?wsdl
- STEP 1: SEARCH
When you search for a product each one of the results might be either “Available” or “On Request”.
When you book an “Available” the item will become CF (Confirmed)
When you book a “On Request” the item will become RQ Cancellation is possible in this step. The system will cancel and disappear the item from the reservation. If there are Cancellation fees, the system will create a new item in the reservation with the total balance.
- STEP 2: BOOKING
PROCESSING → During this step we send a message to the provider with the new Item CF becomes PK during this process
RQ becomes PR during this process Important: Cancellation during this step is not possible. If a cancellation request is sent to our system regarding an item which is in PK or PR, the function will return an Error Message
CONFIRMATION → When the provider answers with their Confirmation Number PK becomes BK
PR becomes BK if the request gets approved and UC if it is not approved
- STEP 3: INFORMATION RETRIEVAL
Retrieve any information of existing bookings.
- STEP 4: CANCELLATION AFTER CONFIRMATION (Just if needed)
When an item has been confirmed and it needs to be cancelled we send a request of cancellation to the provider. The item can not be considered cancelled until the provider confirms the cancellation
BK becomes XB when we receive your cancellation request
XB becomes PX when we send the cancellation request
PX becomes CX when the Hotel confirms the cancellation
If there are Cancellation fees, the system will create a new item in the reservation with the total balance.
1.SEARCH
SEARCH FUNCTIONS: Everything needed to search and build a result is under this set of Functions. to enhance the response time we recommend having everything cached on a regular basis and only the newly designed PriceSearch function looking dynamically for prices within our system.
(v3)This newly designed Functions are the Core of the Version 3. We Guarantee Speed Increase if applied as specified.
✔ ServiceSearch
Description: Search for services for a particular date. Services are Sightseeing, Restaurant , Transfer, Tranfer /Tours .
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ServiceSearch | 1 | |||
| 1 | UserName | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | CityCode | string | 1 | Y | Use City Codes from ListCities |
| 1 | ProductCode | string | 1 | N | Optional, use to search a single product |
| 1 | ServiceDate | string | 1 | Y | |
| 1 | ServiceType | string | 1 | N | S = Sightseeing / Tour, R = Restaurant, T = Transfer, P = Packages, A = All types |
| 1 | DisplayClodeOut | string | 1 | N | |
| 1 | DisplayOnRequest | string | 1 | N |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:ServiceSearch>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:CityCode>NYC</xsd:CityCode>
<xsd:ProductCode>NYCSS</xsd:ProductCode>
<xsd:ServiceDate>2015-12-15</xsd:ServiceDate>
<xsd:ServiceType>S</xsd:ServiceType>
<xsd:DisplayClosedOut>N</xsd:DisplayClosedOut>
<xsd:DisplayOnRequest>N</xsd:DisplayOnRequest>
</xsd:ServiceSearch>
</soapenv:Body>
</soapenv:Envelope>
XML response
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ServiceSearchResponse | 1 | |||
| 1 | ProductCode | string | 1 | Y | |
| 1 | ProductType | string | 1 | Y | |
| 1 | TransferType | string | 1 | N/A | |
| 1 | MaximumOccupancy | string | 1 | ||
| 1 | ProductName | string | 1 | Y | MUST be shown to booking agent! Watch for Child specific ProductCodes |
| 1 | ProductDescription | string | 1 | Y | |
| 1 | VendorID | INT | 1 | Y | |
| 1 | CityName | string | 1 | ||
| 1 | Status | 1 | Y | 'OK' means Product will be immediately confirmed | |
| 1 | ProductDate | 1 | Y | ||
| 1 | Price | Float | 1 | Y | |
| 1 | ChildPrice | 1 | N/A | ||
| 1 | ChildAge | 1 | N/A | ||
| 1 | PromoMessage | string | 1 | ||
| 1 | WebPriority | 1 | N/A | ||
| 1 | NumPax | 1 | N/A | ||
| 1 | PackageDetails | 0/1 | Will only be displayed on Package searches | ||
| 2 | PullPriceFlag | 1 | N/A | ||
| 2 | DisplayNightsFlag | 1 | N/A | ||
| 2 | DefaultNights | 1 | N/A | ||
| 2 | ProductCode | 1 | Y | Required to book packages | |
| 2 | Description | 1 | Y | ||
| 1 | Latitude | Float | 1 | N/A | |
| 1 | Longitude | Float | 1 | N/A | |
| 1 | VendorImage | string | 1 | N/A | |
| 1 | VendorName | string | 1 | Y | |
| 1 | VendorDescription | string | 1 | ||
| 1 | VendorAddress1 | string | 1 | Y | |
| 1 | VendorAddress2 | string | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:ServiceSearchResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:serviceSearchResponse>
<xsd:body>
<xsd:ProductCode>NYCSCONTR</xsd:ProductCode>
<xsd:ProductType>TRANSFER</xsd:ProductType>
<xsd:TransferType>NOT SET</xsd:TransferType>
<xsd:MaximumOccupancy>0</xsd:MaximumOccupancy>
<xsd:ProductName>.TOUR OF CONTRAST ITALIAN 5 HRS</xsd:ProductName>
<xsd:ProductDescription>Tour of the BRONX, QUEENS & BROOKLYN....</xsd:ProductDescription>
<xsd:VendorID>228</xsd:VendorID>
<xsd:CityName>New York, NY</xsd:CityName>
<xsd:Status>OK</xsd:Status>
<xsd:ProductDate>2015-12-15</xsd:ProductDate>
<xsd:Price>52.0</xsd:Price>
<xsd:ChildPrice>0.0</xsd:ChildPrice>
<xsd:ChildAge>0</xsd:ChildAge>
<xsd:PromoMessage/>
<xsd:WebPriority>1</xsd:WebPriority>
<xsd:NumPax>0</xsd:NumPax>
<xsd:Latitude>0.0</xsd:Latitude>
<xsd:Longitude>0.0</xsd:Longitude>
<xsd:VendorImage>http://dream.teamamericany.com/soap/vendorImage.php?prodcode=NYCSCONTR</xsd:VendorImage>
<xsd:VendorName>VOLATOUR NY TOURS</xsd:VendorName>
<xsd:VendorDescription/>
<xsd:VendorAddress1>33 WEST 46 STREET</xsd:VendorAddress1>
<xsd:VendorAddress2/>
</xsd:body>
<xsd:body>
<xsd:ProductCode>NYCSCONTSP</xsd:ProductCode>
<xsd:ProductType>TRANSFER</xsd:ProductType>
<xsd:TransferType>NOT SET</xsd:TransferType>
<xsd:MaximumOccupancy>0</xsd:MaximumOccupancy>
<xsd:ProductName>.TOUR OF CONTRAST SPANISH 5HRS</xsd:ProductName>
<xsd:ProductDescription>Tour of Bronx, Queens and Brooklyn....</xsd:ProductDescription>
<xsd:VendorID>228</xsd:VendorID>
<xsd:CityName>New York, NY</xsd:CityName>
<xsd:Status>OK</xsd:Status>
<xsd:ProductDate>2015-12-15</xsd:ProductDate>
<xsd:Price>52.0</xsd:Price>
<xsd:ChildPrice>0.0</xsd:ChildPrice>
<xsd:ChildAge>0</xsd:ChildAge>
<xsd:PromoMessage/>
<xsd:WebPriority>1</xsd:WebPriority>
<xsd:NumPax>0</xsd:NumPax>
<xsd:Latitude>0.0</xsd:Latitude>
<xsd:Longitude>0.0</xsd:Longitude>
<xsd:VendorImage>http://dream.teamamericany.com/soap/vendorImage.php?prodcode=NYCSCONTSP</xsd:VendorImage>
<xsd:VendorName>VOLATOUR NY TOURS</xsd:VendorName>
<xsd:VendorDescription/>
<xsd:VendorAddress1>33 WEST 46 STREET</xsd:VendorAddress1>
<xsd:VendorAddress2/>
</xsd:body>
. . .
</xsd:serviceSearchResponse>
</xsd:ServiceSearchResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error - Invalid length for City Code - Use LiStCities City Code
- Error - Invalid date
PriceSearch
This function is not supported by Volatour
✔ ProductInfoV2
Description: ProductInfo returns not-dynamic, not-sensitive, stable information that should be cached in the client side on a regular basis (ideally every week, but once a month is acceptable).
This function should be used together with / after ServiceSearch
Request XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ProductInfo | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | ProductCode | string | 1 | Y | Mandatory if VendorName or VendorID is blank, Product code or part of it, will return 1 result for specific product |
| 1 | VendorID | INT | 1 | Y | Mandatory if ProductCode is blank, if you do not have a Vendor ID, use ListVendor to find it. |
| 1 | ProductDescription | attribute only | 1 | N | Include to return a HTML formatted product description. Set attribute encoding=“base64” or “CDATA” to specify how the description is returned. This tag is optional. |
Sample to return information on one product
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:ProductInfov2>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:ProductCode>NYCSS</xsd:ProductCode>
<xsd:VendorID></xsd:VendorID>
<xsd:ProductDescription encoding="base64"/>
</xsd:ProductInfov2>
</soapenv:Body>
</soapenv:Envelope>
Response XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ProductInfoResponse | 1 | You may find several products for the same Vendor | ||
| 1 | ProductCode | string | 1 | Y | |
| 1 | ProductType | string | 1 | N | |
| 1 | ProductName | string | 1 | N | |
| 1 | VendorName | string | 1 | N | The Vendor's name |
| 1 | TeamVendorID | int | 1 | Y | |
| 1 | CityName | string | 1 | Y | |
| 1 | ChildAge | int | 1 | Y | |
| 1 | Latitude | string | 1 | Y | |
| 1 | Longitude | string | 1 | Y | |
| 1 | VendorDescription | string | 1 | Y | |
| 1 | VendorAddress1 | string | 1 | Y | |
| 1 | VendorAddress2 | string | 1 | Y | |
| 1 | VendorState | string | 1 | Y | |
| 1 | VendorCity | string | 1 | Y | |
| 1 | VendorCountryISO | string | 1 | Y | Vendor's country code |
| 1 | VendorZip | string | 1 | Y | |
| 1 | VendorTel | string | 1 | Y | |
| 1 | VendorFax | string | 1 | Y | |
| 1 | VendorURL | string | 1 | Y | |
| 1 | WebPriority | string | 1 | Y | Internal Use Only |
| 1 | Promotion | string | 1 | Y | Here you will find promotion messages, if exist |
| 1 | ProductDetail | string | 1 | Y | |
| 1 | ProductDescription | string | 0 | Y | |
| 1 | NonRefundable | int | 1 | Y | “1” if this is a Non Refundable Product, “0” if refundable |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:ProductInfov2Response xmlns:xsd="http://www.wso2.org/php/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsd:response>
<xsd:body>
<xsd:ProductCode>NYCSGOS</xsd:ProductCode>
<xsd:ProductType>Service</xsd:ProductType>
<xsd:ProductName>.TOUR HARLEM & GOSPEL ITALIAN SUNDAY</xsd:ProductName>
<xsd:VendorName>VOLATOUR NY TOURS</xsd:VendorName>
<xsd:TeamVendorID>228</xsd:TeamVendorID>
<xsd:CityName>New York, NY</xsd:CityName>
<xsd:ChildAge>0</xsd:ChildAge>
<xsd:Latitude>0.0</xsd:Latitude>
<xsd:Longitude>0.0</xsd:Longitude>
<xsd:VendorDescription>All regular tours depart from VOLATOUR. Please check times and voucher instructions in the NEW YORK SERVICE DESCRIPTION.Additional charge on private tours between December 27 and January 2.</xsd:VendorDescription>
<xsd:VendorAddress1>33 WEST 46 STREET</xsd:VendorAddress1>
<xsd:VendorAddress2/>
<xsd:VendorState>NY</xsd:VendorState>
<xsd:VendorCity>NEW YORK</xsd:VendorCity>
<xsd:VendorCountryISO xsi:nil="true"/>
<xsd:VendorZip>10036</xsd:VendorZip>
<xsd:VendorTel>212 557 1654</xsd:VendorTel>
<xsd:VendorFax>917 464 8489</xsd:VendorFax>
<xsd:VendorURL/>
<xsd:WebPriority>1</xsd:WebPriority>
<xsd:ProductDetails>PICK UP MUST BE CONFIRMED BY VOLATOUR. . .</xsd:ProductDetails>
<xsd:ProductDescription>PHA+PHN0cm9uZz5EZXBhcnR1cmUgU2NoZWR1bGUgaW4gU3VtbWVyIDIwMTkgc3RheXMgdGhlIHNhbWUgYXMgdGhlIHJlc3Qgb2YgdGhlIHllYXIuPC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz5EdXJhdGlvbjo8L3N0cm9uZz4gNCBob3Vycy4gTWVldGluZyBhdCA5OjQ1IGFtLCBkZXBhcnR1cmUgYXQgMTA6MDAgYW0gZnJvbSBWT0xBVE9VUiAzMyBXZXN0IDQ2PHN1cD50aDwvc3VwPiBTdHJlZXQsIGJldHdlZW4gNTxzdXA+dGg8L3N1cD4gYW5kIDY8c3VwPnRoPC9zdXA+IEF2ZW51ZS4gRHVyaW5nIFN1bW1lciBtb250aHMsIGRlcGFydHVyZSB0aW1lIG1pZ2h0IGNoYW5nZS48L3A+DQo8cD48c3Ryb25nPkJsYWNrIE91dCBEYXRlOjwvc3Ryb25nPiBFYXN0ZXIgU3VuZGF5LjwvcD4NCjxwPjxzdHJvbmc+RGVzY3JpcHRpb248L3N0cm9uZz46IE1lbW9yYWJsZSB2aXNpdCBvZiBIYXJsZW0gZHVyaW5nIHdoaWNoIHlvdSB3aWxsIGF0dGVuZCBhbiBhdXRoZW50aWMgcmVsaWdpb3VzIHNlcnZpY2UgaW4gYSBCYXB0aXN0IENodXJjaCwgYW5kIGxpc3RlbiB0byBncmVhdCBHb3NwZWwgbXVzaWMuIFlvdSB3aWxsIGRpc2NvdmVyIGFuIHVua25vd24gSGFybGVtLCBhIG5laWdoYm9yaG9vZCBvZiBncmVhdCBjb250cmFzdHMgdGhhdCBpcyBzdGlsbCB0aGUgY2FwaXRhbCBvZiB0aGUgQWZyby1BbWVyaWNhbiBjdWx0dXJlLjwvcD4NCjxwPjxzdHJvbmc+Vm91Y2hlciA8L3N0cm9uZz5tdXN0IGJlIGFkZHJlc3NlZCB0byBWT0xBVE9VUiBJbmMuIDMzIFdlc3QgNDY8c3VwPnRoPC9zdXA+IFN0cmVldCAmbmRhc2g7IE5ldyBZb3JrLCBOWSAxMDAzNi4gVm91Y2hlciBtdXN0IG1lbnRpb24gdGhhdCZuYnNwOyA8c3Ryb25nPjx1PnByb3BlciBhdHRpcmUgaXMgcmVxdWlyZWQ8L3U+PC9zdHJvbmc+PHU+ICg8c3Ryb25nPm5vIHNob3J0cyBvciB0YW5rIHRvcHMpIGFuZCB0aGF0IG5vIGNhbWVyYXMgYW5kIHJlY29yZGluZyBkZXZpY2VzIGFyZSBnb2luZyB0byBiZSBhZG1pdHRlZCBpbiB0aGUgY2h1cmNoPC9zdHJvbmc+PC91PjwvcD4NCjxwPlRoaXMgcHJvZHVjdCBpcyBhdmFpbGFibGUgaW4gPHN0cm9uZz5GUkVFIFNFTEwgPC9zdHJvbmc+ZXhjZXB0IEFwcmlsIDEyLCAyMDIwIChTUEVDSUFMIEhJR0hFUiBSQVRFKS48L3A+</xsd:ProductDescription>
<xsd:NonRefundable>0</xsd:NonRefundable>
</xsd:body>
</xsd:response>
</xsd:ProductInfov2Response>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
Request XML Sample to see ALL products offered by 1 vendor (Volatour NYC tours)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:ProductInfov2>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:ProductCode></xsd:ProductCode>
<xsd:VendorID>228</xsd:VendorID>
</xsd:ProductInfov2>
</soapenv:Body>
</soapenv:Envelope>
ListMealPlan
This function is not supported by Volatour
✔ ListCities
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ListCities | 1 | |||
| 1 | UserName | string | 1 | Y | |
| 1 | Password | string | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:ListCities>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
</xsd:ListCities>
</soapenv:Body>
</soapenv:Envelope>
XML response
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ListCitiesResponse | 1 | |||
| 1 | CityCode | string | 1 | Y | |
| 1 | CityName | string | 1 | Y | |
| 1 | Country | string | 1 | Y | |
| 1 | DisplayGroup | string | 1 | N |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:ListCitiesResponse xmlns:xsd="http://www.wso2.org/php/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsd:cityResp>
<xsd:body>
<xsd:CityCode>ABB</xsd:CityCode>
<xsd:CityName>*Abbotsford, BC, CANADA</xsd:CityName>
<xsd:Country>CANADA</xsd:Country>
<xsd:DisplayGroup xsi:nil="true"/>
</xsd:body>
.
.
<xsd:body>
<xsd:CityCode>ZXR</xsd:CityCode>
<xsd:CityName>Carmel Valley</xsd:CityName>
<xsd:Country>USA</xsd:Country>
<xsd:DisplayGroup xsi:nil="true"/>
</xsd:body>
</xsd:cityResp>
</xsd:ListCitiesResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
Description:
Retrieve List of cities. the list includes City code , country and Display Group
✔ ListPickUpLocations
Display a list of Pick Up (also Drop Off) Locations, for booking Transfers. On inbound transfers this is Drop Off location, usually the hotel of the passengers are staying. If the exact location is not listed use the next closest PULoc and note the actual location with the ItemRemarks tag.
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ListPickUpLocation | 1 | |||
| 1 | UserName | string | 1 | Y | |
| 1 | Password | string | 1 | Y |
XML response
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ListPickUpLocationResponse | 1 | |||
| 1 | PickUpLocation | string | 1 | Y | |
| 1 | PickUpLocationDescription | string | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns1:ListPickUpLocationsResponse xmlns:ns1="http://www.wso2.org/php" xmlns:ns2="http://www.wso2.org/php/xsd">
<return>
<ns2:body>
<ns2:PickUpLocation>NYCG</ns2:PickUpLocation>
<ns2:PickUpLocationDescription>.NYC G E N E R I C HOTEL</ns2:PickUpLocationDescription>
</ns2:body> .
.
</ns2:body>
</return>
</ns1:ListPickUpLocationsResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error - Invalid length for City Code - Maximum of 4 allowed
Description: List pick locations in a city.
✔ List Vendor
Description: List Vendor returns id and number of all Vendors
Request XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | ListVendor | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | CityCode | string | 1 | Y | Use ListCities to get City Codes from all available Cities |
| 1 | Type | string | 1 | Y | Use 'Service' or 'Hotel' as parameters |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:ListVendor>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:CityCode>NYC</xsd:CityCode>
<xsd:Type>Service</xsd:Type>
</xsd:ListVendor>
</soapenv:Body>
</soapenv:Envelope>
Response XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 1 | VendorID | INT | 1 | Unique Hotel ID | |
| 1 | VendorName | string | 1 | Y | |
| 1 | City | int | 1 | Y | |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:ListVendorResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:vendorResponse>
<xsd:body>
<xsd:VendorID>158</xsd:VendorID>
<xsd:VendorName>ACADEMY BUS</xsd:VendorName>
<xsd:City>HOBOKEN</xsd:City>
</xsd:body
.
.
.
<xsd:body>
<xsd:VendorID>1</xsd:VendorID>
<xsd:VendorName>VOLATOUR-NEW YORK</xsd:VendorName>
<xsd:City>NEW YORK</xsd:City>
</xsd:body>
</xsd:vendorResponse>
</xsd:ListVendorResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error - Invalid City Code Length
- Error - Invalid Type
2. BOOK
BOOKING FUNCTION: NewMultiItemReservation is our new and easy to integrate booking solution. Instead of different functions for adding passengers, adding different items and confirming the booking we simplify the process in this all in one comprehensible function.
✔ Book Services using NewMultiItemReservation Method:
Description for the amount of people associated with this reservation please use Quantity; not Occupancy
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | NewMultiItemReservation | 1 | |||
| 1 | UserName | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | AgentName | string | 1 | Y | |
| 1 | AgentEmail | string | 1 | Y | |
| 1 | ClientReference | string | 1 | Y | |
| 1 | Items | 1 | Y | ||
| 2 | NewItem | 1 | Y | The <NewItem> element can be used for 1 or more repetitions You may book several different items under the same reservation. | |
| 3 | ProductCode | string | 1 | Y | |
| 3 | ProductDate | string | 1 | Y | Service date |
| 3 | Occupancy | string | 1 | Y | ALWAYS SET 'Single' |
| 3 | NumberOfNights | int | 1 | Y | It must always be 1 for services. |
| 3 | Language | string | 1 | N | Required for Tours, ENG/ITA/GER/SPA/FRE/POR (Also used with transfers for New York Airport codes: JFK, EWR, LGA) |
| 3 | PickUpLocation | string | 1 | N | Required for Transfers - You must use the ListPickUpLocations function for possible values, otherwise Optional |
| 3 | PickUpTime | string | 1 | N | Required for Transfers, in HH:MM format |
| 3 | FlightInfo | string | 1 | N | Required for Transfers. 10 Chars max in AZ1234 format |
| 3 | Quantity | int | 1 | Y | Number people being booked for Service. Used in place of <Occupancy> |
| 3 | ItemRemarks | string | 1 | N | Free text, remarks for the Vendor |
| 3 | Passengers | string | 1 | Y | The < Passengers > element can be used for 1 or more repetitions. You may assign 1 or more pax per the specific item which you are currently booking |
| 3 | NewPassenger | string | 1 | Y | |
| 4 | Salutation | string | 1 | Y | |
| 4 | FamilyName | string | 1 | Y | |
| 4 | FirstName | string | 1 | Y | |
| 4 | PassengerType | string | 1 | Y | Always use 'AD', even for children |
| 4 | PassengerAge | string | 1 | Y | |
| 3 | BelongsToPackage | int | 1 | Y | Use 0, unless a packaged item, then use 1 |
| 3 | PackageCode | string | 1 | N | For Packages, the Product Code of that package must be entered here |
| 3 | RateExpected | float | 1 | Y | Average Rate as Returned by Service Search, otherwise use 0 |
Request XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:NewMultiItemReservation>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:AgentName>alex</xsd:AgentName>
<xsd:AgentEmail>achan@teamamericany.com</xsd:AgentEmail>
<xsd:ClientReference></xsd:ClientReference>
<!--1 or more repetitions:-->
<xsd:Items>
<!--1 or more repetitions:-->
<xsd:NewItem>
<xsd:ProductCode>NYCTIB</xsd:ProductCode>
<xsd:ProductDate>2015-08-17</xsd:ProductDate>
<xsd:Occupancy>Double</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language></xsd:Language>
<xsd:PickUpLocation></xsd:PickUpLocation>
<xsd:PickUpTime></xsd:PickUpTime>
<xsd:FlightInfo></xsd:FlightInfo>
<xsd:Quantity>1</xsd:Quantity>
<xsd:ItemRemarks>test</xsd:ItemRemarks>
<xsd:Passengers>
<!--1 or more repetitions:-->
<xsd:NewPassenger>
<xsd:Salutation>Mr</xsd:Salutation>
<xsd:FamilyName>Test</xsd:FamilyName>
<xsd:FirstName>A</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
<xsd:NewPassenger>
<xsd:Salutation>Mr</xsd:Salutation>
<xsd:FamilyName>Test</xsd:FamilyName>
<xsd:FirstName>B</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
</xsd:Passengers>
<xsd:BelongsToPackage>0</xsd:BelongsToPackage>
<xsd:PackageCode></xsd:PackageCode>
<xsd:RateExpected>0</xsd:RateExpected>
</xsd:NewItem>
</xsd:Items>
</xsd:NewMultiItemReservation>
</soapenv:Body>
</soapenv:Envelope>
Sample Response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:NewMultiItemReservationResponse xmlns:xsd="http://www.wso2.org/php/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsd:newMultiItemReservationResponse>
<xsd:ReservationInformation>
<xsd:ReservationNumber>673840</xsd:ReservationNumber>
<xsd:BookingAgentReferenceNumber/>
<xsd:DateBooked>2015-07-23</xsd:DateBooked>
<xsd:ReservationStatus>OK</xsd:ReservationStatus>
<xsd:FaxStatus>RW</xsd:FaxStatus>
<xsd:ReservationStatusDescription/>
<xsd:GeneralComments xsi:nil="true"/>
<xsd:AgencyCommissionAmount>0.0</xsd:AgencyCommissionAmount>
<xsd:BookingAgentInfo>
<xsd:AgencyName>*TEAMTEST</xsd:AgencyName>
<xsd:Address1>33 West 46th st 3rd floor</xsd:Address1>
<xsd:Address2/>
<xsd:City>New York</xsd:City>
<xsd:State>NY</xsd:State>
<xsd:PostalCode>10036</xsd:PostalCode>
<xsd:Country>SPAIN</xsd:Country>
<xsd:AgentUserName>achan</xsd:AgentUserName>
<xsd:AgentEmail/>
</xsd:BookingAgentInfo>
<xsd:Items>
<xsd:UniqueItemID>1369062</xsd:UniqueItemID>
<xsd:ProductCode>NYCTIB</xsd:ProductCode>
<xsd:ItemDate>2015-08-17</xsd:ItemDate>
<xsd:Description>NYCT TRSFR IN-SEAT ON COACH MIN 2PAX</xsd:Description>
<xsd:Occupancy>Double</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language/>
<xsd:PickUpLocation/>
<xsd:PickUpTime/>
<xsd:FlightInfo/>
<xsd:AverageNetPricePerNight>39.96</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>79.91</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks>test</xsd:ItemRemarks>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>1</xsd:ItemCommissionable>
<xsd:ItemComments>flights landing btwn 10:00 pm & 6:00 am must be BKD AS PVT TRFS. $110 FEE XTRF BFORE 9AM ON P/UP TIME /Flight # /M1 MIN. 2 PAX RATE $25 EACH 12/24; 12/25 & 1/1; 12/ 31 AFT 7P</xsd:ItemComments>
<xsd:SubTotal>79.91</xsd:SubTotal>
<xsd:MealPlan>EP-NO MEALS</xsd:MealPlan>
<xsd:MealPlanID>1</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Passengers>
<xsd:UniquePassengerID>11838419</xsd:UniquePassengerID>
<xsd:FamilyName>TEST</xsd:FamilyName>
<xsd:FirstName>A</xsd:FirstName>
<xsd:Type>AD</xsd:Type>
<xsd:Age>30</xsd:Age>
</xsd:Passengers>
<xsd:Passengers>
<xsd:UniquePassengerID>11838420</xsd:UniquePassengerID>
<xsd:FamilyName>TEST</xsd:FamilyName>
<xsd:FirstName>B</xsd:FirstName>
<xsd:Type>AD</xsd:Type>
<xsd:Age>30</xsd:Age>
</xsd:Passengers>
<xsd:TotalResNetPrice>79.91</xsd:TotalResNetPrice>
<xsd:gross_total>0.0</xsd:gross_total>
<xsd:paid>0.0</xsd:paid>
<xsd:gross_due>0.0</xsd:gross_due>
<xsd:ag_comm_level>0.0</xsd:ag_comm_level>
<xsd:ag_comm_amt>0.0</xsd:ag_comm_amt>
<xsd:net_due>79.91</xsd:net_due>
<xsd:cc_fees>0.0</xsd:cc_fees>
<xsd:ttl_expenses>0.0</xsd:ttl_expenses>
<xsd:ttl_expenses_paid>0.0</xsd:ttl_expenses_paid>
<xsd:commission_amt>0.0</xsd:commission_amt>
<xsd:commission_rcvd>0.0</xsd:commission_rcvd>
<xsd:amt_comm_amt>0.0</xsd:amt_comm_amt>
</xsd:ReservationInformation>
</xsd:newMultiItemReservationResponse>
</xsd:NewMultiItemReservationResponse>
</soapenv:Body>
</soapenv:Envelope>
NewMultiItemReservation with Packages
Description This Function also allows booking of Packages, with multiple items, under the same reservation with just one call
Placing a new Reservation
After choosing the desired Package you wish to book, we allow you to call just 1 function to book all the items of a package with this function.
The output of this call will be one reservation, with a unique reservation ID, and if you chose to place many items so each one of them will have a unique item ID.
Some explanations about the different occupancies you may use, when booking:
In PriceSearchExt () response, there are max 4 occupancies available for each product: Single/Double/Triple/Quad.
However, when adding items in NewMultiItemReservation(), you may put some more options.
The available Occupancies you may use in NewMultiItemReservation() request are as follow:
Single, Double, Triple, Quad , SGL+1CH, DBL+1CH, DBL+2CH, TPL+1CH
How to book them
All the items (Product Codes) of a package must be listed underneath the Package Code with:
- <PackageCode> set to the package desired, and
- <BelongsToPackage> set to 1
Request XML
Sample request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:NewMultiItemReservation>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:AgentName></xsd:AgentName>
<xsd:AgentEmail>agentname@agency.com</xsd:AgentEmail>
<xsd:ClientReference>Test_180910b</xsd:ClientReference>
<xsd:Items>
<xsd:NewItem>
<xsd:ProductCode>NYCPLEAST</xsd:ProductCode>
<xsd:ProductDate>2018-11-01</xsd:ProductDate>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation></xsd:PickUpLocation>
<xsd:PickUpTime></xsd:PickUpTime>
<xsd:FlightInfo></xsd:FlightInfo>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemRemarks></xsd:ItemRemarks>
<xsd:Passengers>
<xsd:NewPassenger>
<xsd:Salutation>Mr.</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Test</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
<xsd:NewPassenger>
<xsd:Salutation>Mrs</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Wife</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
</xsd:Passengers>
<xsd:BelongsToPackage>0</xsd:BelongsToPackage>
<xsd:PackageCode></xsd:PackageCode>
<xsd:RateExpected>0</xsd:RateExpected>
</xsd:NewItem>
<xsd:NewItem>
<xsd:ProductCode>NYCTIB</xsd:ProductCode>
<xsd:ProductDate>2018-11-01</xsd:ProductDate>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>NYCROO</xsd:PickUpLocation>
<xsd:PickUpTime>1620</xsd:PickUpTime>
<xsd:FlightInfo>KL0643</xsd:FlightInfo>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemRemarks></xsd:ItemRemarks>
<xsd:Passengers>
<xsd:NewPassenger>
<xsd:Salutation>Mr.</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Test</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
<xsd:NewPassenger>
<xsd:Salutation>Mrs</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Wife</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
</xsd:Passengers>
<xsd:BelongsToPackage>1</xsd:BelongsToPackage>
<xsd:PackageCode>NYCPLEAST</xsd:PackageCode>
<xsd:RateExpected>0</xsd:RateExpected>
</xsd:NewItem>
<xsd:NewItem>
<xsd:ProductCode>NYCSS</xsd:ProductCode>
<xsd:ProductDate>2018-11-03</xsd:ProductDate>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>NYCVOLA</xsd:PickUpLocation>
<xsd:PickUpTime></xsd:PickUpTime>
<xsd:FlightInfo></xsd:FlightInfo>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemRemarks></xsd:ItemRemarks>
<xsd:Passengers>
<xsd:NewPassenger>
<xsd:Salutation>Mr.</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Test</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
<xsd:NewPassenger>
<xsd:Salutation>Mrs</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Wife</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
</xsd:Passengers>
<xsd:BelongsToPackage>1</xsd:BelongsToPackage>
<xsd:PackageCode>NYCPLEAST</xsd:PackageCode>
<xsd:RateExpected>0</xsd:RateExpected>
</xsd:NewItem>
<xsd:NewItem>
<xsd:ProductCode>NYCTOB</xsd:ProductCode>
<xsd:ProductDate>2018-11-07</xsd:ProductDate>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>NYCROO</xsd:PickUpLocation>
<xsd:PickUpTime>1820</xsd:PickUpTime>
<xsd:FlightInfo>KL0644</xsd:FlightInfo>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemRemarks></xsd:ItemRemarks>
<xsd:Passengers>
<xsd:NewPassenger>
<xsd:Salutation>Mr.</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Test</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
<xsd:NewPassenger>
<xsd:Salutation>Mrs</xsd:Salutation>
<xsd:FamilyName>Tester</xsd:FamilyName>
<xsd:FirstName>Wife</xsd:FirstName>
<xsd:PassengerType>AD</xsd:PassengerType>
<xsd:PassengerAge>30</xsd:PassengerAge>
</xsd:NewPassenger>
</xsd:Passengers>
<xsd:BelongsToPackage>1</xsd:BelongsToPackage>
<xsd:PackageCode>NYCPLEAST</xsd:PackageCode>
<xsd:RateExpected>0</xsd:RateExpected>
</xsd:NewItem>
</xsd:Items>
</xsd:NewMultiItemReservation>
</soapenv:Body>
</soapenv:Envelope>
If you would like to add new items to an existing reservation, you may do it using AddItem() method. However it is not possible to add new passengers, but use only existing ones. So, if you would like to add new items to an existing reservation with new passengers, you first have to call the AddPassenger() method, and only then take the new passengers ID’s into the AddItem() method.
Response XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | NewMultiItemReservationResponse | 1 | |||
| 1 | ReservationNumber | int | 1 | Y | |
| 1 | BookingAgentReferenceNumber | string | 1 | Y | |
| 1 | DateBooked | string | 1 | Y | |
| 1 | ReservationStatus | string | 1 | Y | |
| 1 | FaxStatus | string | 1 | Y | |
| 1 | ReservationStatusDescription | string | 1 | Y | |
| 1 | GeneralComments | string | 1 | Y | |
| 1 | AgencyCommissionAmount | float | 1 | Y |
Errors
Description:
Sample Response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:NewMultiItemReservationResponse xmlns:xsd="http://www.wso2.org/php/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsd:newMultiItemReservationResponse>
<xsd:ReservationInformation>
<xsd:ReservationNumber>388345</xsd:ReservationNumber>
<xsd:BookingAgentReferenceNumber>Test_180910b</xsd:BookingAgentReferenceNumber>
<xsd:DateBooked>2018-09-10</xsd:DateBooked>
<xsd:ReservationStatus>OK</xsd:ReservationStatus>
<xsd:FaxStatus>RW</xsd:FaxStatus>
<xsd:ReservationStatusDescription/>
<xsd:GeneralComments xsi:nil="true"/>
<xsd:AgencyCommissionAmount>0.0</xsd:AgencyCommissionAmount>
<xsd:BookingAgentInfo>
<xsd:AgencyName>VOLATOUR</xsd:AgencyName>
<xsd:Address1>33 WEST 46 STREET</xsd:Address1>
<xsd:Address2/>
<xsd:City>NEW YORK</xsd:City>
<xsd:State>NY</xsd:State>
<xsd:PostalCode>10036</xsd:PostalCode>
<xsd:Country>USA</xsd:Country>
<xsd:AgentUserName>arie</xsd:AgentUserName>
<xsd:AgentEmail/>
</xsd:BookingAgentInfo>
<xsd:Items>
<xsd:UniqueItemID>1038033</xsd:UniqueItemID>
<xsd:ProductCode>NYCPLEAST</xsd:ProductCode>
<xsd:ItemDate>2018-11-01</xsd:ItemDate>
<xsd:Description>PK PACKAGE AT LEAST IN+OUT+CITY TOUR ITA</xsd:Description>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language/>
<xsd:PickUpLocation/>
<xsd:PickUpTime/>
<xsd:FlightInfo/>
<xsd:AverageNetPricePerNight>155.0</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>310.0</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks/>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>0</xsd:ItemCommissionable>
<xsd:ItemComments></xsd:ItemComments>
<xsd:SubTotal>310.0</xsd:SubTotal>
<xsd:MealPlan xsi:nil="true"/>
<xsd:MealPlanID>0</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Items>
<xsd:UniqueItemID>1038034</xsd:UniqueItemID>
<xsd:ProductCode>NYCTIB</xsd:ProductCode>
<xsd:ItemDate>2018-11-01</xsd:ItemDate>
<xsd:Description>TRNSF IN SEAT ON COACH ANY APT MIN 2 PAX</xsd:Description>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>ROOSVELT HTL - MADISON @ 45 ST -212 661 9600 (8)</xsd:PickUpLocation>
<xsd:PickUpTime>16:20:00</xsd:PickUpTime>
<xsd:FlightInfo>KL0643</xsd:FlightInfo>
<xsd:AverageNetPricePerNight>0.0</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>0.0</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks/>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>1</xsd:ItemCommissionable>
<xsd:ItemComments></xsd:ItemComments>
<xsd:SubTotal>0.0</xsd:SubTotal>
<xsd:MealPlan xsi:nil="true"/>
<xsd:MealPlanID>0</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Items>
<xsd:UniqueItemID>1038035</xsd:UniqueItemID>
<xsd:ProductCode>NYCSS</xsd:ProductCode>
<xsd:ItemDate>2018-11-03</xsd:ItemDate>
<xsd:Description>.TOUR CITY NEW YORK 4 HOURS ITALIAN</xsd:Description>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>NYC VOLATOUR OFFICE 33W 46ST, between 5 & 6 Avenue</xsd:PickUpLocation>
<xsd:PickUpTime/>
<xsd:FlightInfo/>
<xsd:AverageNetPricePerNight>0.0</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>0.0</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks/>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>0</xsd:ItemCommissionable>
<xsd:ItemComments>PICK UP TO BE CONFIRMED WITH VOLATOUR 24 HR PRIOR</xsd:ItemComments>
<xsd:SubTotal>0.0</xsd:SubTotal>
<xsd:MealPlan xsi:nil="true"/>
<xsd:MealPlanID>0</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Items>
<xsd:UniqueItemID>1038036</xsd:UniqueItemID>
<xsd:ProductCode>NYCTOB</xsd:ProductCode>
<xsd:ItemDate>2018-11-07</xsd:ItemDate>
<xsd:Description>TRNSF OUT SEAT ON COACH ANY APT MIN 2PAX</xsd:Description>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language>ITA</xsd:Language>
<xsd:PickUpLocation>ROOSVELT HTL - MADISON @ 45 ST -212 661 9600 (8)</xsd:PickUpLocation>
<xsd:PickUpTime>18:20:00</xsd:PickUpTime>
<xsd:FlightInfo>KL0644</xsd:FlightInfo>
<xsd:AverageNetPricePerNight>0.0</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>0.0</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks/>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>1</xsd:ItemCommissionable>
<xsd:ItemComments>PICK UP TIME MUST BE CONFIRMED IN ADVANCE WITH VOLATOUR</xsd:ItemComments>
<xsd:SubTotal>0.0</xsd:SubTotal>
<xsd:MealPlan xsi:nil="true"/>
<xsd:MealPlanID>0</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Passengers>
<xsd:UniquePassengerID>834801</xsd:UniquePassengerID>
<xsd:FamilyName>TESTER</xsd:FamilyName>
<xsd:FirstName>TEST</xsd:FirstName>
<xsd:Type>AD</xsd:Type>
<xsd:Age>30</xsd:Age>
</xsd:Passengers>
<xsd:Passengers>
<xsd:UniquePassengerID>834802</xsd:UniquePassengerID>
<xsd:FamilyName>TESTER</xsd:FamilyName>
<xsd:FirstName>WIFE</xsd:FirstName>
<xsd:Type>AD</xsd:Type>
<xsd:Age>30</xsd:Age>
</xsd:Passengers>
<xsd:TotalResNetPrice>310.0</xsd:TotalResNetPrice>
<xsd:gross_total>310.0</xsd:gross_total>
<xsd:paid>0.0</xsd:paid>
<xsd:gross_due>310.0</xsd:gross_due>
<xsd:ag_comm_level>0.0</xsd:ag_comm_level>
<xsd:ag_comm_amt>0.0</xsd:ag_comm_amt>
<xsd:net_due>310.0</xsd:net_due>
<xsd:cc_fees>0.0</xsd:cc_fees>
<xsd:ttl_expenses>0.0</xsd:ttl_expenses>
<xsd:ttl_expenses_paid>0.0</xsd:ttl_expenses_paid>
<xsd:commission_amt>0.0</xsd:commission_amt>
<xsd:commission_rcvd>0.0</xsd:commission_rcvd>
<xsd:amt_comm_amt>0.0</xsd:amt_comm_amt>
</xsd:ReservationInformation>
</xsd:newMultiItemReservationResponse>
</xsd:NewMultiItemReservationResponse>
</soapenv:Body>
</soapenv:Envelope>
3. RETRIEVE
RETRIEVE FUNCTIONS: This functions allows to get information regarding any existing reservation.
RetrieveReservation
Request XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | RetrieveReservation | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | ReservationNumber | INT | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:RetrieveReservation>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:ReservationNumber>333333</xsd:ReservationNumber>
</xsd:RetrieveReservation>
</soapenv:Body>
</soapenv:Envelope>
Response XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | RetrieveReservation | ||||
| 1 | ReservationInformation | ||||
| 2 | ReservationNumber | int | |||
| 2 | BookingAgentReferenceNumber | string | |||
| 2 | DateBooked | string | |||
| 2 | ReservationStatus | string | |||
| 2 | GeneralComments | string | |||
| 2 | AgencyCommissionAmount | float | |||
| 2 | BookingAgentInfo | ||||
| 3 | AgencyName | string | |||
| 3 | Address1 | string | |||
| 3 | Address2 | string | |||
| 3 | City | string | |||
| 3 | State | string | |||
| 3 | PostalCode | string | |||
| 3 | Country | string | |||
| 3 | AgentUserName | string | |||
| 3 | AgentEmail | string | |||
| 2 | Items | ||||
| 3 | UniqueItemID | int | |||
| 3 | ProductCode | string | |||
| 3 | ItemDate | string | |||
| 3 | Description | string | |||
| 3 | Occupancy | string | |||
| 3 | NumberOfNights | int | |||
| 3 | Language | string | |||
| 3 | PickUpLocation | string | |||
| 3 | PickUpTime | string | |||
| 3 | FlightInfo | string | |||
| 3 | AverageNetPricePerNight | float | |||
| 3 | TotalItemNetPrice | float | |||
| 3 | Quantity | int | |||
| 3 | ItemSupplierConfirmationNumber | string | |||
| 3 | ItemStatusCode | string | |||
| 3 | ItemStatusDescription | string | |||
| 3 | ItemRemarks | string | |||
| 3 | ItemInformation | string | |||
| 3 | ItemCommissionable | string | |||
| 3 | ItemPassengers | ||||
| 4 | UniquePassengerID | ||||
| 4 | FamilyName | string | |||
| 4 | FirstName | string | |||
| 4 | Type | string | |||
| 4 | Age | int | |||
| 3 | TotalResNetPrice | float | |||
| 3 | gross_total | float | |||
| 3 | paid | float | |||
| 3 | gross_due | float | |||
| 3 | ag_comm_level | float | |||
| 3 | ag_comm_amt | float | |||
| 3 | net_due | float | |||
| 3 | cc_fees | float | |||
| 3 | ttl_expenses | float | |||
| 3 | ttl_expenses_paid | float | |||
| 3 | commission_amt | float | |||
| 3 | commission_rcvd | float | |||
| 3 | amt_comm_amt | float |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:RetrieveReservationResponse xmlns:xsd="http://www.wso2.org/php/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsd:retrievelReservationResp>
<xsd:ReservationInformation>
<xsd:ReservationNumber>388344</xsd:ReservationNumber>
<xsd:BookingAgentReferenceNumber>TEST_180910a</xsd:BookingAgentReferenceNumber>
<xsd:DateBooked>2018-09-10</xsd:DateBooked>
<xsd:ReservationStatus>OK</xsd:ReservationStatus>
<xsd:FaxStatus>RW</xsd:FaxStatus>
<xsd:ReservationStatusDescription/>
<xsd:GeneralComments>-</xsd:GeneralComments>
<xsd:AgencyCommissionAmount>0.0</xsd:AgencyCommissionAmount>
<xsd:BookingAgentInfo>
<xsd:AgencyName>VOLATOUR</xsd:AgencyName>
<xsd:Address1>33 WEST 46 STREET</xsd:Address1>
<xsd:Address2/>
<xsd:City>NEW YORK</xsd:City>
<xsd:State>NY</xsd:State>
<xsd:PostalCode>10036</xsd:PostalCode>
<xsd:Country>USA</xsd:Country>
<xsd:AgentUserName>ARIE</xsd:AgentUserName>
<xsd:AgentEmail/>
</xsd:BookingAgentInfo>
<xsd:Items>
<xsd:UniqueItemID>1038032</xsd:UniqueItemID>
<xsd:ProductCode>NYCSGERMAG</xsd:ProductCode>
<xsd:ItemDate>2018-11-12</xsd:ItemDate>
<xsd:Description>TOUR MANHATTAN MAGIC WALK GERMA MO/WE/SA</xsd:Description>
<xsd:Occupancy>Single</xsd:Occupancy>
<xsd:NumberOfNights>1</xsd:NumberOfNights>
<xsd:Language/>
<xsd:PickUpLocation>Hyatt Place New York/Midtown-South 52 West 36th</xsd:PickUpLocation>
<xsd:PickUpTime>00:00:00</xsd:PickUpTime>
<xsd:FlightInfo/>
<xsd:AverageNetPricePerNight>65.0</xsd:AverageNetPricePerNight>
<xsd:TotalItemNetPrice>130.0</xsd:TotalItemNetPrice>
<xsd:Quantity>2</xsd:Quantity>
<xsd:ItemSupplierConfirmationNumber xsi:nil="true"/>
<xsd:ItemStatusCode>CF</xsd:ItemStatusCode>
<xsd:ItemRemarks xsi:nil="true"/>
<xsd:ItemInformation/>
<xsd:ItemCommissionable>0</xsd:ItemCommissionable>
<xsd:ItemComments></xsd:ItemComments>
<xsd:SubTotal>130.0</xsd:SubTotal>
<xsd:MealPlan xsi:nil="true"/>
<xsd:MealPlanID>0</xsd:MealPlanID>
<xsd:RoomType/>
</xsd:Items>
<xsd:Passengers>
<xsd:UniquePassengerID>834799</xsd:UniquePassengerID>
<xsd:FamilyName>TESTER</xsd:FamilyName>
<xsd:FirstName>TEST</xsd:FirstName>
<xsd:Type xsi:nil="true"/>
<xsd:Age>0</xsd:Age>
</xsd:Passengers>
<xsd:Passengers>
<xsd:UniquePassengerID>834800</xsd:UniquePassengerID>
<xsd:FamilyName>TESTER</xsd:FamilyName>
<xsd:FirstName>WIFE</xsd:FirstName>
<xsd:Type xsi:nil="true"/>
<xsd:Age>0</xsd:Age>
</xsd:Passengers>
<xsd:TotalResNetPrice>130.0</xsd:TotalResNetPrice>
<xsd:gross_total>130.0</xsd:gross_total>
<xsd:paid>0.0</xsd:paid>
<xsd:gross_due>130.0</xsd:gross_due>
<xsd:ag_comm_level>0.0</xsd:ag_comm_level>
<xsd:ag_comm_amt>0.0</xsd:ag_comm_amt>
<xsd:net_due>130.0</xsd:net_due>
<xsd:cc_fees>0.0</xsd:cc_fees>
<xsd:ttl_expenses>0.0</xsd:ttl_expenses>
<xsd:ttl_expenses_paid>0.0</xsd:ttl_expenses_paid>
<xsd:commission_amt>0.0</xsd:commission_amt>
<xsd:commission_rcvd>0.0</xsd:commission_rcvd>
<xsd:amt_comm_amt>0.0</xsd:amt_comm_amt>
</xsd:ReservationInformation>
</xsd:retrievelReservationResp>
</xsd:RetrieveReservationResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error – Invalid length for Client Reference – Maximum of 14 allowed
Description
RetrieveResByReference
Request XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | RetrieveResByReference | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | Reference | string | 1 | N | YOUR booking locator, Max 14 char |
| 1 | ShowCX | int | 1 | Y | Used to display a Cancelled Reservation |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:RetrieveResByReference>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:Reference>TEST_180910a</xsd:Reference>
<xsd:ShowCX>1</xsd:ShowCX>
</xsd:RetrieveResByReference>
</soapenv:Body>
</soapenv:Envelope>
Response XML
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | RetrieveResByReferenceResponse | 1 | |||
| 1 | ReservationNumber | int | 1 | Y | |
| 1 | LastName | string | 1 | Y | |
| 1 | FirstName | string | 1 | Y | |
| 1 | DepDate | string | 1 | Y | |
| 1 | ReservationStatus | string | 1 | Y | |
| 1 | Product | string | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:RetrieveResByReferenceResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:retrievelReservationResp>
<xsd:ReservationInformation>
<xsd:ReservationNumber>388344</xsd:ReservationNumber>
<xsd:LastName>TESTER</xsd:LastName>
<xsd:FirstName>TEST</xsd:FirstName>
<xsd:DepDate>2018-11-12</xsd:DepDate>
<xsd:ReservationStatus>OK</xsd:ReservationStatus>
<xsd:Product>NYCSGERMAG</xsd:Product>
</xsd:ReservationInformation>
</xsd:retrievelReservationResp>
</xsd:RetrieveResByReferenceResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error – Invalid length for Client Reference – Maximum of 14 allowed
Description Retrieve Reservation Number and other Information based on your Client Reference Number.
4. CANCEL
CANCEL FUNCTIONS: Cancel existing reservations and show Cancellation Policies.
- CancellationPolicy (Just Show Information)
CancellationPolicy
Description: This function returns the cancellation policy for a given product code and arrival date. Please always use this function and advise your users.
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | CancellationPolicy | ||||
| 1 | UserName | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | ProductCode | string | 1 | N | e.g. BKLHALOFTD |
| 1 | ArrivalDate | date | 1 | Y | ISO YYYY-MM-DD |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:CancellationPolicy>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:ProductCode>NYCSNIA</xsd:ProductCode>
<xsd:ArrivalDate>2018-09-25</xsd:ArrivalDate>
</xsd:CancellationPolicy>
</soapenv:Body>
</soapenv:Envelope>
XML response
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | CancellationPolicyResponse | 1 | |||
| 1 | NumberDaysPrior | int | 1 | Y | Number of days prior to the travel date after which the cancellation policy applies |
| 1 | PenaltyType | string | 1 | Y | There are 3 types of penalty types: Nights, Percent and Dollars. |
| 1 | PenaltyAmount | float | 1 | Y | Depending on the PenaltyType, it may return either a number of nights, a percentage or a cancellation fee in dollars |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:CancellationPolicyResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:cancellationPolicyResp>
<xsd:body>
<xsd:NumberDaysPrior>100</xsd:NumberDaysPrior>
<xsd:PenaltyType>Dollars</xsd:PenaltyType>
<xsd:PenaltyAmount>100.0</xsd:PenaltyAmount>
</xsd:body>
<xsd:body>
<xsd:NumberDaysPrior>30</xsd:NumberDaysPrior>
<xsd:PenaltyType>Percent</xsd:PenaltyType>
<xsd:PenaltyAmount>100.0</xsd:PenaltyAmount>
</xsd:body>
</xsd:cancellationPolicyResp>
</xsd:CancellationPolicyResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error - Invalid date
CancelReservation
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | CancelReservation | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | ReservationNumber | int | 1 | Y |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:CancelReservation>
<xsd:UserName>username</xsd:UserName>
<xsd:Password>password</xsd:Password>
<xsd:ReservationNumber>388344</xsd:ReservationNumber>
</xsd:CancelReservation>
</soapenv:Body>
</soapenv:Envelope>
XML response EXAMPLE 1 (when cancelling 7 days before, you pay 1 night cxl fee.) *Please note that if your cancellation results in a cancellation fee, the reservation will remain open (Status OK) until cancellation fee (CXLFEE) has been paid*
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:CancelReservationResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:cancelReservationResp>
<xsd:ReservationStatusCode>CX</xsd:ReservationStatusCode>
<xsd:Items>
<xsd:ItemId>1038032</xsd:ItemId>
<xsd:Description>TOUR MANHATTAN MAGIC WALK GERMA MO/WE/SA</xsd:Description>
<xsd:Status>CX</xsd:Status>
<xsd:PenaltyAmount>0.0</xsd:PenaltyAmount>
<xsd:ItemDate>2018-11-12</xsd:ItemDate>
</xsd:Items>
</xsd:cancelReservationResp>
</xsd:CancelReservationResponse>
</soapenv:Body>
</soapenv:Envelope>
Errors
- Error - Login Invalid
- Error - Reservation not found
Description:
DeleteItem
Delete item from a reservation
XML request
| Level | Name | Type | Occurs | Required | Comments |
|---|---|---|---|---|---|
| 0 | DeleteItem | 1 | |||
| 1 | Username | string | 1 | Y | |
| 1 | Password | string | 1 | Y | |
| 1 | ItemID | int | 1 | Y | |
| 1 | BKGSrc | int | 1 | N |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.wso2.org/php/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:DeleteItem>
<xsd:UserName>achan</xsd:UserName>
<xsd:Password>yourpasswordhere</xsd:Password>
<xsd:ItemID>1199644</xsd:ItemID>
<xsd:BKGSrc></xsd:BKGSrc>
</xsd:DeleteItem>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<xsd:DeleteItemResponse xmlns:xsd="http://www.wso2.org/php/xsd">
<xsd:deleteItemResp>
<xsd:ItemStatusCode>CX</xsd:ItemStatusCode>
<xsd:Message>Item has been deleted</xsd:Message>
</xsd:deleteItemResp>
</xsd:DeleteItemResponse>
</soapenv:Body>
</soapenv:Envelope>
Description: Delete a Item from a Reservation . To retrieve item id in a reservation use retrieve reservation to get the item id.