This task is used to request:
Transaction Name:
CarMatrix_3
Can this task be performed in a sessionless environment?
Sessioned and Sessionless are both supported.
Are the request and response identical on both the Apollo and Galileo systems?
Apollo and Galileo are identical.
Industry-specific knowledge required to understand this task in terms of the specific business process:
User must understand basic car availability and shopper functionality.
Explain any special limits or distinct restrictions t
No special limitations for the input data.
Request:
Unless otherwise specified, use ALL CAPS in any request data.
To request a matrix of car availability:
<CarMatrixAvailMods> (Data Record 7170), it is mandatory that a <CarMatrixAvailability> tag is sent. This tag contains the basic information required for the car search such as dates, times and locations for pick-up and drop-off of the car.
One or more (up to 10) <CarMatrixVndInfo> tags may be sent to specify information specific to car vendors such as location ID’s and discount codes.
Prerequisite tasks:
It may be necessary to resolve destination names prior to using this function. The transactions CarIndex and HotelCompleteAvailability can be used to assist in this. This function does not return alternate replies which assist in determining proper destination names. For example, if you wish to see particular city locations for particular vendors, a call to CarIndex will be necessary to determine the location codes required in this function.
Expected response(s):
The expected response of <CarMatrixAvail> consists of these tags: <CarMatrixStaticInfo>, <CarMatrixLocnInfo>, and <CarMatrixRateInfo>/<CarMatrixRateItem>.
The <CarMatrixStaticInfo> contains general information to the reply, such as text descriptions of the rate parameters. It also contains any errors or warnings that apply.
- One <CarMatrixLocnInfo> tag will be returned for each car vendor location returning rates to the request.
- The <CarMatrixLocnInfo> tag contains information describing the car location and a count of rates that that pertain to this location. It also contains a key that can be used to match the location to it’s rates in the <CarMatrixRateInfo> tag.
- The <CarMatrixRateInfo> contains the data pertaining to each rate. These will have a key that match the rate up to it’s corresponding location in <CarMatrixLocnInfo>.
- The rates will be returned in one of two elements: <CarMatrixRateInfo> or <CarMatrixRateItem>.
- The <CarMatrixAvailability> request element has a field for requesting extended rate items.
- <CarMatrixRateItem> elements are the extended version of the <CarMatrixRateInfo>.
- The <CarMatrixRateInfo>/<CarMatrixRateItem> contains the data pertaining to each rate. These elements have a key that match the rate up to it’s corresponding location element in <CarMatrixLocnInfo>. The matrix query can return up to 20 locations with <CarMatrixLocnInfo> and 20 cars with <CarMatrixRateInfo>, per location.
- If <CarMatrixRateItem> are being returned, it can return up to 20 locations and 15 cars per location.
If the <CarMatrixLocnInfo> indicates that the vendor has returned an error and no rate items, a single <CarMatrixRateError> will be returned which contains the vendor error text. These will have a key that match the rate up to it’s corresponding location element <CarMatrixLocnInfo>. See Error and warning responses below.
Error and warning responses:
See a complete list of car errors in the Car Error Messages table.
Follow-on requests:
The PNRBFManagement_# transaction can be used to sell any of the rates returned by this function. Follow the instructions for filling out a <CarSegSellMods> (7150 NWB) to accomplish this.
The CarRules_# transaction can be used to request rules for any of the rates returned by this function. Follow the instructions for filling out a <CarRulesMods> (7130 NWB) to accomplish this. Any discount codes used to obtain the rate via the CarMatrix_3 function (CD#, ID#, etc.) would also need to be sent along with the CarRules request.
The CarStandardAvail_# transaction can be used to ‘drill down’ for more details pertaining to a particular car rate item. Follow the instructions for filling our a <CarAvailMods> (7100 NWB) to accomplish this.
<CarMatrixAvailMods> |
Terminal Equivalents: |
Apollo: None. |
Galileo: None. |
Ordering |
KLR |
Min/Max |
XML Tag |
A |
CMA1 |
1 - 1 |
<CarMatrixAvailability> |
B, C, D, … |
CMA2 |
0 - 10 |
<CarMatrixVndInfo> |
<CarMatrixAvail> |
|
Ordering |
KLR |
Min/Max |
XML Tag |
A |
CMR1 |
1 – 1 |
<CarMatrixStaticInfo> |
B, C, … |
CMR2 |
0 – 20 |
<CarMatrixLocnInfo> |
B1, B2, B3, … C1, C2, C3, … |
CMR3 |
0 – 400 |
<CarMatrixRateInfo> |
B1, C1, … |
CMR4 |
0 – 20 |
<CarMatrixRateError> |
B1, B2, B3, … C1, C2, C3, …. |
CMR5 |
0 – 300 |
<CarMatrixRateItem> |
The order of the tags in request record <CarMatrixAvailMods>:
<CarMatrixAvailability>
<CarMatrixVndInfo>
<CarMatrixVndInfo>
<CarMatrixVndInfo>
...
The order of tags in the reply <CarMatrixAvail>:
<CarMatrixStaticInfo>
<CarMatrixLocnInfo>
<CarMatrixRateInfo>
<CarMatrixRateInfo>
<CarMatrixRateInfo>
…
<CarMatrixLocnInfo>
CMR4
<CarMatrixLocnInfo>
<CarMatrixRateInfo>
<CarMatrixRateInfo>
<CarMatrixRateInfo>
…
…
The order of tags in the reply <CarMatrixAvail> if the extended rate items are requested in <CarMatrixAvailability>:
<CarMatrixStaticInfo>
<CarMatrixLocnInfo>
CMR5
CMR5
CMR5
...
<CarMatrixLocnInfo>
CMR4
<CarMatrixLocnInfo>
CMR5
CMR5
CMR5
...
...