Skip to main content

Vehicle Price Check Request API Definition Guide

The Vehicle Price Check is designed to be used after an original vehicle availability request.

It is particularly useful if the availability entry was done several minutes ago, as all Car Supplier’s vehicles and rates have limited availability and it is possible the vehicle is no longer available.

Vehicle Price Check should be used immediately prior to using one of the Car booking APIs, to reduce the likelihood of a booking failure or a price change.

VehPriceCheckRQ is used to request information about vehicle’s specific rate and verify if it is still available.

Vehicle Price Check allows for two types of inputs.

The preferred method is to return the ‘ratekey’ that is returned from the GetVehAvail version 2 or higher:

  1. RateKey
  2. Specific car supplier at a specific location

If using specific car supplier at a specific location, then all the optional items that apply must also be part of the request.

A list of all available optional items:

  • Return location city location code (if different than the pickup city location code)
  • Client ID numbers
  • Tour codes
  • Promotional Coupons
  • Corporate IDs
  • Frequent Traveler
  • Guaranteed/prepaid rates
  • Commission programs
  • Rate assured
  • Rate categories
  • Rate codes
  • Rate qualifiers
  • Rate assured
  • Commission
  • ConvertedRateInfoOnly
  • SupplierCurrencyOnly
  • Special equipment/Car Extra preferences

Below is the minimum complete structure for a VehPriceCheckRQ, with a single location, and a single car supplier.

<VehPriceCheckRQ>
    <VehRateInfoRef RateKey="lotsoflettersnumbersandsymbols"/>
</VehPriceCheckRQ>

This is the maximum complete structure for a VehPriceCheckRQ, with multiple locations, and multiple car suppliers.

<VehPriceCheckRQ>
    <VehRateInfoRef/>
    <POS>
        <Source PseudoCityCode="V9YI"/>
    </POS>
    <RateDetailsRef>
        <VehInfo PickUpDate="2020-11-13" PickUpTime="07:00" ReturnDate="2020-11-25" ReturnTime="07:00" VendorCode="ZE" VehTypeCode="ECAR">
            <PickUpLocation LocationCode="DFW" ExtendedLocationCode="C001"/>
            <ReturnLocation LocationCode="SFO" ExtendedLocationCode="SFO"/>
            <CarExtras>
                <CarExtrasPref Type="NAV"/>
            </CarExtras>
        </VehInfo>
        <VehRateInfo>
            <RatePrefs RateAssured="true" RateCategory="A" RatePlan="D" RateCode="A123" Commission="true" SupplierCurrencyOnly="true" ConvertedRateInfoOnly="false">
                <CustLoyalty MembershipType="IT" MembershipId="1234567" MembershipCode="ZE"/>
                <GuaranteePrepaid Type="GP"/>
            </RatePrefs>
            <RentalRate>
                <ApproximateTotalPrice Amount="1000.00" CurrencyCode="USD"/>
            </RentalRate>
            <ConvertedRentalRate>
                <ApproximateTotalPrice Amount="45454544" CurrencyCode="INR"/>
            </ConvertedRentalRate>
        </VehRateInfo>
    </RateDetailsRef>
</VehPriceCheckRQ>

XML Request Definitions

VehPriceCheckRQ

VehPriceCheckRQ is the beginning of the request for Vehicle Price Check to pass the parameters needed to check if the previously requested rate and vehicle are still available.

VehRateInfoRef

The VehRateInfoRef element contains details need to request a price check. The preferred input is the RateKey that is returned by GetVehAvail version 2.

RateKey

The RateKey attribute is Optional, but it is the preferred method of validating a previous rate's and vehicle's availability.

The RateKey is made of many alpha, numerics, and symbols that equals all the individual elements and attributes of manually inputted data of the previously requested response.

The RateKey is always returned in a request for each vehicle and rate combination returned. If this attribute is part of the Vehicle Price Check Request, then no other elements or attributes are allowed.

Sample request with RateKey:

<VehPriceCheckRQ>
    <VehRateInfoRef RateKey="9UOWEqZEawN2kcHjG13iBEybBKAOrkyrCG7J01xWuzgX5ztgGE76L03abkKquPKv7KfLL8QZ6elJeHAEZsAEIrWu8KYobV14MUIyjSL4r+6IcuporLOFfzkORodtspu/Mz0mUkWRfsCZrYadWPrCL2hOg5ejiVVgy6Gv/LJu+bYR1ke9N2d+BI2AKMKvcLG2zibS7CXRXB1fDkHDyPuvsDZ+7E9MRyCMaeFKZDh4j32Z3ZATtK1cEmhHgS8h2jJG9MaxFtViRcaT7mMJPBbGI9INtQVUW0w/nWnTdfSCtbZsGijizaQZO5mjpZnw+zqnW2InkIXlItTQQyoqU231z5kPzh7GmonaYG6wLqrFgQIRhIDXo9KML7tpeSfEYtbO"/>
</VehPriceCheckRQ>

POS

The Point of Sale element is optional. It allows the user to change their Point of Sale to other locations that they have authorized access to. If used, the Source PseudoCityCode field must follow.

<Source PseudoCityCode="abcd"/>

The Source element is mandatory, if POS is present. The value is 4 alphanumeric characters. This attribute is used to change the Pseudo City Code to other Agencies.

Rate Key

The Rate Key element is used when the price check is validating the continued availability of a rate/car type from a request. Use the rate key for the specific rate/car type that was returned in the response. If Rate Key was used, then SearchCriteria and all other element and attributes are not used.

Search Criteria

The Search Criteria element and all below element and attributes are used to validate the continued availability of a rate/car type when the Rate Key is not available.

If Rate Key is used, then SearchCriteria and all other element and attributes are not used.

The Search Criteria element is used to describe the pickup and return date/time as well as any sort criteria.

PickUpDate="yyyy-mm-dd"

The pickup date attribute is mandatory and must be in year month day format

Sample Pick Up Date: PickUpDate="2019-01-11" for 2019 January 11th

PickUpTime="00:00"

The pickup time attribute is mandatory and must be in the 24-hour clock format.

Sample Pick Up Time: PickUpTime="08:15" for 8:15 am

ReturnDate="yyyy-mm-dd"

The return date attribute is mandatory and must be in year month day format.

Sample Return Date: ReturnDate="2019-01-12" for 2019 January 12th

ReturnTime="00:00"

The return time attribute is mandatory and must be in the 24-hour clock format.

Sample Return Time: ReturnTime="23:59" for 11:59 pm

Sample of Service Criteria Element:

<SearchCriteria PickUpDate="2019-01-11" PickUpTime="08:15" ReturnDate="2019-01-12" ReturnTime="23:59">

<RentalLocRef>

Rental Location Reference Element is used when a single rental location code and car supplier is known.

<PickUpLocation>

The pick-up location element is the location of the car's pickup, and is mandatory.

LocationCode

The Location Code attribute is mandatory, must be 3 alphabetic characters, and is the 3 character code of the car pickup's location, e.g. DFW.

ExtendedLocationCode

The Extended Location Code attribute is optional. If extended location code is used 1 alphabetic character and 1-3 numeric characters. The 1 alphabetic character designates the type location by a direction or type code. N-north, S-south, E-east, W-west, R-resort, X-rail, P-port, or C-city

Example: ExtendedLocationCode=”C123"

Samples of Pickup Location Element:

<PickUpLocation LocationCode="DFW"/>
<PickUpLocation LocationCode="DFW" ExtendedLocationCode="C123"/>

ReturnLocation

The Return location element is the location of the car's return at the end of its renting period, and it is optional.

Samples of RentalLocRef:

<RentalLocRef>
    <PickUpLocation LocationCode="DFW"/>
</RentalLocRef>

RentalLocRef

Samples of RentalLocRef:

<PickUpLocation LocationCode="DFW" ExtendedLocationCode="C123" />
<ReturnLocation LocationCode="LAX" ExtendedLocationCode="N987" />
</RentalLocRef>

<VendorPrefs>

The vendor preferences element is mandatory.

Code

The code attribute is mandatory if VendorPref is present. The code is 2 alphabetic characters assigned to each car supplier/vendor.

</VendorPrefs>

End of Vendor Preferences.

Examples of common requests for Vendor Preferences

The most common request if VendorPrefs is present, is to request specific car suppliers.

<VendorPrefs>
    <VendorPref Code=”XX“/>
</VendorPrefs>

<RatePrefs Commission=" " RateCategory=" " RatePlan=" " CurrencyCode=" " ConvertedRateInfoOnly=" " SupplierCurrencyOnly=" " >

The rate preferences element is mandatory. The attributes ConvertedRateInfoOnly and SupplierCurrencyOnly are required if it is used.

Commission

The commission attribute is optional. The commission attribute is supported by some car suppliers. It is a Boolean, and can only be the true or false values. If the false value is used, then this attribute is usually ommitted.

  • “true” is used to request only suppliers that return commission information.
  • “false”, or if the attribute as a whole is omitted, the response will contain vehicles and rates from both car suppliers that return commission information and those that do not.

Note: Just because a supplier does not return displayable commission does not mean they do not have commissions.

RateCategory=" "

The rate category is optional. The value is 1 alphabetic character.

  • N: Negotiated
  • L: Inclusive
  • V: Convention
  • C: Corporate
  • G: Government
  • K: Package (X=bilaterally agreed indicator)
  • P: Promotional
  • A: Association
  • B: Business Standard
  • U: Consortium
  • R: Credential
  • I: Industry
  • S: Standard

RatePrefs rate category is used to request types of a rate. For example, Government is G, while Associate is A.

This field is rarely used, as most category of rates now use more detailed identifiers. These are used in the RatePrefs listed below in the children.

To request this input, use one of the category codes:

<RatePrefs RateCatagory=”G”>

RatePlan=" "

The rate plan is optional. The value is a 1 alphabetic character:

  • D – daily
  • E – weekend
  • W – weekly
  • M – monthly

RatePrefs rate plans are used to request the length of rental rates. For example, Daily rates D, Weekly rates W.

This field is rarely used. Most plans are determined by the length of the car rental based on the number of days and hours; the difference between pickup date/time and return date/time.

When used, it's most likely used to force a 5 day long rental to be returned using a daily plan instead of defaulting to a weekly plan that a car supplier would normally return. This is mostly used by business travelers that are not sure how long they will rent.

CurrencyCode=" "

The currency code is optional. The value is 3 alphabetic characters.

The Currency Info Code element is VERY important; although it is optional, it effectively is mandatory when ConvertedRateInfoOnly is set to "true".

When ConvertedRateInfoOnly is true, the CurrencyCode needs to contain the currency the user would like to see rates returned. Usually it will be the agency location’s country currency.

If a Currency Code is NOT entered, and ConvertedRateInfoOnly is "true", you'll get the error:

**Warning:** CURRENCY_INFO_REQUIRED="Invalid RatePrefs - CurrencyCode required when ConvertedRateInfoOnly is set to true";

To request this input, use the following code:

<CurrencyInfo Code=”EUR”>

ConvertedRateInfoOnly=" "

Converted Rate Info Only is a mandatory boolean field. The value is true or false.

Converted Rate Info Only Settings
  • If false, the information will be returned in the VehRentalRate, unless SupplierCurrencyOnly is also false, then information will be returned in both VehRentalRate and ConvertedVehRentalRate.
  • If true, all the information will be returned in the ConvertedVehRentalRate.

The Currency Info Code element is effectively mandatory due to its widespread usage.

When ConvertedRateInfoOnly is set to true, the API expects CurrencyInfoCode to be populated with the currency you would like to see rates returned in. This will usually be the agency location’s country currency.

It is strongly recommended that if ConvertedRateInfoOnly is populated, then SupplierCurrencyOnly also be populated. This will remove any chance of an unexpected result due to default values.

For the request, all attributes should be combined into one string if being used:

<RatePrefs Commission="true" RateAssured="true" RateCategory="S" RatePlan="D" ConvertedRateInfoOnly="true" SupplierCurrencyOnly="false">

Note: ConvertedRateInfoOnly and SuplierRateOnly cannot both be set to true. They are mutually exclusive and will return the following error:

**Warning message:** INVALID_RATE_PREFS="Invalid RatePrefs - SupplierCurrencyOnly and ConvertedRateInfoOnly cannot both be set to true"

SupplierCurrencyOnly=" "

Supplier Currency Only is optional. If not inputted, then true is assumed.

The Supplier Currency Only if used, must contain true or false.

  • If ‘true’, all the information will be returned in the VehRentalRate.
  • If ‘false’, all the information will be returned in the ConvertedRentalRate.

However, it is strongly recommended if SupplierCurrencyOnly is inputted, then ConvertedRateInfoOnly also be inputted. This will remove any chance of an unexpected result due to default values.

In the request, all attributes should be combined into one string if being used:

<RatePrefs Commission="true" RateCategory="S" RatePlan="D" ConvertedRateInfoOnly="false" SupplierCurrencyOnly="true">

CurrencyInfo Code ConvertedRateInfoOnly SupplierCurrencyOnly Response
AUD TRUE TRUE Warning message: INVALID_RATE_PREFS="Invalid RatePrefs - SupplierCurrencyOnly and ConvertedRateInfoOnly cannot both be set to true"
AUD TRUE FALSE Rate returns in AUD in ConvertedRentalRate
AUD FALSE TRUE Supplier rental rate returned in VehRentalRate
AUD FALSE FALSE Rate returns in both currencies: ConvertedRentalRate and VehRentalRate
none TRUE TRUE Warning message: INVALID_RATE_PREFS="Invalid RatePrefs - SupplierCurrencyOnly and ConvertedRateInfoOnly cannot both be set to true"
Default value none Default Value FALSE Default Value TRUE Supplier rental rate returned in VehRentalRate
none FALSE FALSE Rates return in both currencies: ConvertedRentalRate and VehRentalRate
none TRUE FALSE Warning: CURRENCY_INFO_REQUIRED="Invalid RatePrefs - CurrencyInfo required when ConvertedRateInfoOnly is set to true";

<CustLoyalty MembershipType=" " MembershipCode=" " MembershipId=" "/>

The Customer Loyalty element is optional, but if used, all of the above attributes are mandatory. The customer loyalty element contains the information necessary to get special rates, discounts, promotions, and frequent flyer points. The membership code is the car supplier or airline code(for FT only). This data may be repeated for each membership type and membership code (car supplier, except FT it is an airline code).

MembershipType=" "

The membership type attribute is the type of membership used, and it is mandatory. The value is 2 alphabetic characters.

The value is one of the following:

  • CD: corporate discount, identifies agreements between a company car supplier.
  • IT: tour code, usually a package that includes more than just car supplier
  • ID: identity number – car supplier frequent renter.
  • PC: Promotional coupon – a temporary discount/upgrade offered by car supplier
  • FT: frequent traveler number – airline frequent flyer – usually car supplier adds points to the user’s airline’s card.

MembershipCode=" "

The membership code attribute is the code of the membership used in in MembershipType is mandatory. The value is 2 alphabetic characters. The value is 2 alphabetic characters assigned to the car supplier.

Note: The value is the same as the VendorPref Code value, if RentalLocRef is used.

MembershipId=" "

The membership ID attribute is mandatory. The membership ID varies in length depending on the MembershipType:

  • CD, IT, ID, FT - 1-25 alphabetic numeric characters
  • PC - 1-10 alphabetic numeric characters

To request this, input one of the membership types:

<CustLoyalty MembershipType=”CD” MembershipCode=”VV” MembershipId=”123456

<GuaranteePrepaid Type="P"/>

The guarantee prepaid element is optional. If omitted, guarantee and prepay rates may be returned, but usually only retail rates are returned. If used, the guarantee prepaid element must be one of the following:

  • G: guaranteed only rates
  • P: prepaid only rates

The GuaranteePrepaid attribute is used when requesting a relatively new type of rate from car suppliers. These rates provide detailed information of refundable amounts when a car is being paid at the time of booking.

This optional field returns only the Enhanced Guarantee Required or Prepay rates from participating car suppliers. Note that very few suppliers participate.

To request prepaid rates and only prepaid rates, use:

<GuaranteePrepaid Type=’P’/>

To request guarantee rates and only guarantee rates, use:

<GuaranteePrepaid Type=’G’/>

<RateRule Vendor=" " RateCode=" "/>

The rate rule element is mandatory.

Vendor=" "

The vendor code (car supplier code) attribute is mandatory. The value is 2 alphabetic characters assigned to the car supplier.

RateCode=" "

The rate code name is a car supplier’s specific 2-6 alpha numeric character code that is tied to the rate available.

To request this, input one of the rate codes:

<RateRule Vendor=”XX” RateCode=”ABC123”>

</RatePrefs>

The RatePrefs element signals the end of rate preferences.

<VehPrefs>

The Vehicle Preferences element is mandatory.

<VehPref>

The Vehicle Preference element is mandatory.

<VehType> </VehType>

The Vehicle Type element is mandatory if VehPref is inputted and consists of 4 alphabetic characters.

Below is an extensive table of all possible input values:

Category Type Trans /Drive Aircon/ Fuel
M Mini B 2-3 Door M Manual Unspecified Drive R Unspecified Fuel/Power With Air (N. American use)
N Mini Elite C 2/4 Door N Manual 4WD N Unspecified Fuel/Power Without Air (N. American use)
E Economy D 4-5 Door C Manual AWD D Diesel Air
H Economy Elite W Wagon/Estate A Auto Unspecified Drive Q Diesel No Air
C Compact V Passenger Van B Auto 4WD H Hybrid Air
D Compact Elite L Limousine D Auto AWD I Hybrid No Air
I Intermediate S Sport E Electric Air
J Intermediate Elite T Convertible C Electric No Air
S Standard F SUV L LPG/Compressed Gas Air
R Standard Elite J Open Air All Terrain S LPG/Compressed Gas No Air
F Fullsize X Special A Hydrogen Air
G Fullsize Elite P Pick up Regular Cab B Hydrogen No Air
P Premium Q Pick up Extended Cab M Multi Fuel/Power Air
U Premium Elite Z Special Offer Car F Multi fuel/power No Air
L Luxury E Coupe V Petrol Air (European use)
W Luxury Elite M Monospace (European use) Z Petrol No Air (European use)
O Oversize R Recreational Vehicle U Ethanol Air
X Special H Motor Home X Ethanol No Air
Y 2 Wheel Vehicle
N Roadster
G Crossover
K Commercial Van/Truck
Passenger Van Coding SUV Coding
IV = 6+ Seats MV to be phased out and GDS's to map to IV EF = 2 - 4 Seats
JV = Elite 6+ Seats HF = Elite 2 - 4 Seats
SV = 8+ Seats CF = 4 - 5 Seats
RV = Elite 8+ Seats DF = Elite 4-5 Seats
FV = 10+ Seats IF = 5+ Seats
GV = Elite 10+ Seats JF = Elite 5+ Seats
PV = 15+ Seats SF = 5 - 6 Seats
UV = Elite 15+ Seats RF = Elite 5-6 Seats
LV = Luxury no seat req. FF = 6+ Seats
WV = Luxury Elite no seat req. GF = Elite 6+ Seats
PF = 7 + Seats
UF = Elite 7+ Seats
LF = Luxury no seat req.
WF = Luxury Elite no seat req

Type

  • J (All Terrain) - Open air all terrain

  • E (Coupe) - 2-door 2-seater

  • N (Roadster) - Sporty, open air, 2-door 2-seater

  • M (Monospace) - 4-5 Seater with Extra Interior Dimensions

  • O (Special Offer Car) - New product introduction vehicle offered for a limited time (ideally 6 months or less) - must be specifically requested

  • R (Recreational Vehicle) - a candidate for phase out / currently used for SUV's

  • H (Motor Home) - defer to phase II

  • G (Crossover) – Hybrid (e.g. station wagon/SUV mix - Chrysler Pacifica, truck/SUV mix - Chevy Avalanche)

Transmission/Drive

  • M/A (Unspecified Drive) - 2WD, 4WD, AWD

  • N/B (4WD) - Must be engaged or disengaged by driver (may also include AWD)

  • C/D (AWD) - 4WD is always engaged

Fuel/Aircon

  • R/N (Unspecified Fuel/Power) - Any type of fuel/power

  • H/I (Hybrid) – Gasoline and electric powered

  • (Multi Fuel) - multiple (two or more) fuel/power sources other than what is defined in hybrid

To request this input and the applicable vehicle types, use:

<VehType>SCAR</VehType>

</VehPref>

End of Vehicle Preference.

To request this input, use:

<VehPref> <VehType>SCAR</VehType> </VehPref>

<CarExtrasPrefs>

The Car Extras Preferences is optional.

<CarExtrasPref Type=" "/>

The Car Extras Preference element is mandatory if CarExtrasPrefs is used.

Type=" "

  • This element is mandatory if CarExtrasPref is used.
  • The CarExtrasPref EquipType may have 1-10 occurrences.
  • Some suppliers do not support this element. Most support up to 4 repeats of Car Extra type and a few support up to 10.
  • Car Extras includes items like child seat, but also includes services and surcharges.
  • All car suppliers support equipment items, CST – Child Seat, NAV – Navigation.
  • Some support service ‘items’, TOL – toll road tags, PAI – Insurance code.
  • A few support surcharge ‘items’, A18 – age 18 driver surcharge.
  • All are potentially valid.
  • They are edited against the car supplier car rental location policy for AirportRef and GeoRef requests. Only codes that are valid for that car supplier’s location are sent to that specific car supplier.
Below is the Sabre standard special equipment codes:
CODE DESCRIPTION
A18 RENTER AGE 18 DATE OF RENTAL
A19 RENTER AGE 19 DATE OF RENTAL
A20 RENTER AGE 20 DATE OF RENTAL
A21 RENTER AGE 21 DATE OF RENTAL
A22 RENTER AGE 22 DATE OF RENTAL
A23 RENTER AGE 23 DATE OF RENTAL
A24 RENTER AGE 24 DATE OF RENTAL
A25 RENTER AGE 25 DATE OF RENTAL
ADD ADDITIONAL DRIVER
BBS BABY STROLLER
BST CHILD SEAT/BOOSTER
BYC BICYCLE RACK
CBB CARGO BARRIER BACK
CBF CARGO BARRIER FRONT
CBS BOOSTER SEAT/UP TO AGE 12
CDW COLLISION DAMAGE WAIVER
CSB CHILD SEAT/UP TO AGE 3
CSI CHILD SEAT/INFANT
CSR SATELLITE RADIO
CST CHILD SEAT/TODDLER
DVD REAR SEAT DVD PLAYER
FLH FLAG HOLDER
HCL HAND CONTROL/LEFT
HCR HAND CONTROL/RIGHT
HEL MOTORCYCLE HELMET
JAC SECURITY DEVICES
JRC JERRY CAN
LDW LOSS DAMAGE WAIVER
LRC LUGGAGE ROOF CASE
LTR LUGGAGE TRAILER
LUG LUGGAGE RACK
NAV NAVIGATIONAL SYSTEM
NVS NAVIGATIONAL SYSTEM/BUILT IN
PAI PERSONAL ACCIDENT INSURANCE
PHN MOBILE PHONE
RPS ROAD/CONGESTION PAYMENT SCHEME
SBE SEAT BELT EXTENSION
SBR SNOW BOARD RACKS
SKB SKI BOX
SKI SKI RACK ONLY
SKR SKI RACK OR BOX
SKV SKI EQUIPPED VEHICLE
SNO SNOW CHAINS
SNP SNOW PACKS
SNT SNOW TIRES
SPN SPINNER KNOB
SRK SURF RACK
STC SCOOTER TOP CASE
STR SNOW/WINTER TIRES
TOL TOLL PAYMENT TAG/PASS
TYR SPARE TIRE
WAR WHEEL CHAIR ACCESS RAMP
WHC WHEEL CHAIR
WIF WIFI ACCESS

Car suppliers are allowed their own custom codes. For example, some countries allow surcharges on overage drivers, so a car supplier may have added A75 – Renter Age 75 at time of rental.

To request this, input the appropriate equipment type:

<CarExtrasPrefs>
    <CarExtrasPref EquipType=”CST“/>
    <CarExtrasPref EquipType=”NAV“/>
</CarExtrasPrefs>

</CarExtrasPrefs>

End of Car Extras Preferences.

</SearchCriteria>

End of Search Criteria.

</VehPriceCheckRQ>

End of Get Vehicle availability.