Professional Documents
Culture Documents
Version 1.76
Table of Contents
Change control............................................................................................................................................
Introduction - Purpose of this Document....................................................................................................
1. Order API.............................................................................................................................................
1.1 Summary............................................................................................................................4
1.2 Properties..........................................................................................................................4
1.3 Experiences........................................................................................................................4
1.4 Car hire..............................................................................................................................4
CreateOrderRQ from Shopping Cart..................................................................................................5
RetrieveOrderRQ...............................................................................................................................9
ChangeOrderRQ.................................................................................................................................9
CreateOrderRS.................................................................................................................................10
OrderListRQ....................................................................................................................................16
OrderListRS......................................................................................................................................16
Description of individual objects.................................................................................................20
AuthenticatedSenders.....................................................................................................20
Person.............................................................................................................................21
Bundle.............................................................................................................................22
Media..............................................................................................................................33
ProductAttributes..........................................................................................................33
Price................................................................................................................................35
Payment..........................................................................................................................37
OfficeLocation................................................................................................................39
CreateOrderRQ and OrderViewRS – Mapping with Cybersource attributes....................................41
OrderViewRS – Mapping with Cybersource attributes....................................................................43
Introduction - Purpose of this Document....................................................................................................
1. Order API.............................................................................................................................................
1.1 Summary............................................................................................................................5
1.2 Properties..........................................................................................................................5
1.3 Experiences........................................................................................................................5
1.4 Car hire..............................................................................................................................5
CreateOrderRQ from Shopping Cart..................................................................................................6
CreateOrderRQ from ShoppingRS....................................................................................................10
RetrieveOrderRQ.............................................................................................................................13
ChangeOrderRQ...............................................................................................................................13
CreateOrderRS.................................................................................................................................15
OrderListRQ.....................................................................................................................................21
OrderListRS......................................................................................................................................22
Description of individual objects.................................................................................................26
Person..............................................................................................................................26
Bundle..............................................................................................................................26
Media...............................................................................................................................38
ProductAttributes............................................................................................................39
Price.................................................................................................................................41
Payment...........................................................................................................................42
OfficeLocation..................................................................................................................44
CreateOrderRQ and OrderViewRS – Mapping with Cybersource attributes....................................46
OrderViewRS – Mapping with Cybersource attributes....................................................................48
Change control
Name Date Changes summary Version
Maria v0.1-
Initial versions
Psaraki v1.5
Updated info:
Efsevia 15th November
Fee waivers v1.6
Kotsifaki 2022
Adjustments, adjust per product
Updated info:
Viator – move startTime in addToCart
Maria 13th February
Remove OrderCreate from ShoppingRS
Psaraki 2023
Viator markup
v1.7
Update party (authenticatedSenders)
Updated Info:
Efsevia 17th February
Avis tax details
Kotsifaki 2023
Avis new attribute type “size”
For each of the ancillary types (Properties, Experiences & Car Hire), we list all the information that
will be available as part of the order creation request and response.
1. Order API
1.1 Summary
The following methods defines the generic Order API and are independent of the type of the
ancillary:
o CreateOrder
returns the details of the order, containing a list of ordered bundles (order
items) with the respective products as provided in the request
o RetrieveOrder
returns the details of the requested order, containing a list of ordered
bundles (order items) with the respective products as provided in the
request
o ListOrders
returns a list of orders according to the search criteria; each order contains
only a summary information
The following three Sections describe the information that will be available as part of the order
create response for each ancillary type (Property, Experience, Car hire).
1.2 Properties
In the case of Expedia, the above APIs leverage the following Expedia APIs:
o priceCheck
o createBooking
1.3 Experiences
In the case of Viator, the above APIs leverage the following Viator V2 APIs:
o checkAvailability
o holdBooking
o bookBooking
selectedCartOffers.selectionGroup. Free text to send any special requests to the property (not guaranteed) for this
(Expedia only)
ssrQualifier.remark room. Used only for properties.
Specifies if the guest would prefer a smoking room. This field is only a request
and the property is not guaranteed to honor it, it will not override any non-
selectedCartOffers.selectionGroup.
* (Expedia only) smoking policies by the hotel.
ssrQualifier.specialRequest
The array will always contain one single item.
Used only for properties.
selectedCartOffers.selectionGroup.
* (Expedia only) Expected value: “smoking”. Used only for properties.
ssrQualifier.specialRequest.attribute
selectedCartOffers.selectionGroup.
* (Expedia only) Values: “true” or “false”. Used only for properties.
ssrQualifier.specialRequest.value
Array of objects to define the travelers. Apart from the personId, ptc,
familyName and firstName fields that are mandatory for all travelers, the rest
paxList *
of the fields specified as mandatory should be present only for the person that
creates the booking (as indicated by the primaryInd).
An identifier for a particular traveler. Must be unique inside a request
paxList.personId *
message.
The PTC of the traveler. E.g. ADT, CHD, INF
* (Expedia and
paxList.ptc Values: {ADT, CHD, INF, SRC, YTH, TRA}
Avis only)
The array will always contain one single item for ancillaries.
paxList.familyName * Last name of the traveler.
paxList.firstName * First name of the traveler. One item is expected for ancillaries.
paxList.dateOfBirth.
The date of birth of the driver – used only in car hire. E.g. "1990-09-10"
formattedDateTime
paxList.age The age of the traveler
paxList.nameTitle The title of the driver – used only in car hire.
* (Expedia and
paxList.phone Phone details. The array will always contain one single item for ancillaries.
Viator only)
Country code for the phone number. Should not include the leading ‘+’
paxList.phone.countryCode * (Expedia only)
character.
Phone number. Required by Expedia and Viator; optional for Avis.
* (Expedia and
paxList.phone.phoneNumber For Avis and Viator, if the countryCode is provided in the request it will be
Viator only)
concatenated with the phoneNumber before sent to the vendor.
paxList.address * (Expedia only) Address details. The array will always contain one single item for ancillaries.
bookingQNAsList.paxRef
deliveryInstructions. Unit in which the answer is provided as returned in the
bookingQNAsList.unit getTravelOfferDetailsRS.
Array of payment objects. One payment object is expected for each ancillary
type, when paying with loyalty points. One payment object is expected for
Payments *
card payments.
Each Payment object is defined in the individual objects below (ref Payment)
Array of feewaiver objects. One feeWaiver object is expected for each
feeWaivers
ancillary.
Refers to the bundle selection of previous shoppingcartRS in order to indicate
feeWaivers.bundleSelectionId
the fee of a specific ancillary.
feeWaivers.feeCode Fee designator
feeWaivers.isWaived Boolean indicating whether the fee will be waived or not.
String indicating the fee waiver reason. It must be set if “isWaived” parameter
feeWaivers.waiverReason
is true.
Specifies if the guest would prefer a smoking room. This field is only a request
and the property is not guaranteed to honor it, it will not override any non-
selectedOffers.serviceQualifier.
* (Expedia only) smoking policies by the hotel.
ssrQualifier.specialRequest
The array will always contain one single item.
Used only for properties.
selectedOffers.serviceQualifier.
* (Expedia only) Expected value: “smoking”. Used only for properties.
ssrQualifier.specialRequest.attribute
selectedOffers.serviceQualifier.
* (Expedia only) Values: “true” or “false”. Used only for properties.
ssrQualifier.specialRequest.value
Array of objects to define the travelers. Apart from the personId and the ptc
fields that are mandatory for all travelers, the rest of the fields specified as
paxList *
mandatory should be present only for the person that creates the booking (as
indicated by the primaryInd).
An identifier for a particular traveler. Must be unique inside a request
paxList.personId *
message.
The PTC of the traveler. E.g. ADT, CHD, INF
* (Expedia and
paxList.ptc Values: {ADT, CHD, INF, SRC, YTH, TRA}
Avis only)
The array will always contain one single item for ancillaries.
Last name of the traveler.
paxList.familyName *
For properties, this information is required for each room.
First name of the traveler. One item is expected for ancillaries.
paxList.firstName *
For properties, this information is required for each room.
paxList.dateOfBirth.
The date of birth of the driver – used only in car hire. E.g. "1990-09-10"
formattedDateTime
paxList.age The age of the traveler
paxList.nameTitle The title of the driver – used only in car hire.
* (Expedia and
paxList.phone Phone details. The array will always contain one single item for ancillaries.
Viator only)
Country code for the phone number. Should not include the leading ‘+’
paxList.phone.countryCode * (Expedia only)
character.
Phone number. Required by Expedia and Viator; optional for Avis.
* (Expedia and
paxList.phone.phoneNumber For Avis and Viator, if the countryCode is provided in the request it will be
Viator only)
concatenated with the phoneNumber before sent to the vendor.
paxList.address * (Expedia only) Address details. The array will always contain one single item for ancillaries.
bookingQNAsList.paxRef
deliveryInstructions. Unit in which the answer is provided as returned in the
bookingQNAsList.unit getTravelOfferDetailsRS.
Array of payment objects. One payment object is expected for each ancillary
type, when paying with loyalty points. One payment object is expected for
payments *
card payments.
Each Payment object is defined in the individual objects below (ref Payment)
RetrieveOrderRQ
RetrieveOrderRQ Required Description
ChangeOrderRQ
ChangeOrderRQ Required Description
payloadAttributes.correlationId * The correlationId as returned by a previous viewShoppingCartRS.
payloadAttributes.echoToken When a request message includes an echo token, the corresponding
parameter is true.
Specifies the adjustment amount for the order. Relevant fields for this
adjustments message:
totalAmount, surcharges
adjustments.totalAmount Adjusted total amount
adjustments.surcharges Adjusted surcharges (array)
Array of adjustPerProduct objects.Sepcifies the adjusted amount Per
adjustPerProduct
Product
Refers to the group price of previous shoppingcartRS in order to
adjustPerProduct.groupPriceRef
indicate the adjusted loyaltyAmount of a specific ancillary.
adjustPerProduct.loyaltyAmount Details of loyaltyAmount
adjustPerProduct.loyaltyAmount.currencyCode For Amounts expressed in Miles 999 will be used as currency code
adjustPerProduct.loyaltyAmount.amount.intValue Adjusted Amount expressed in Miles
Decimal points, e.g. 12035:
adjustPerProduct.loyaltyAmount.amount.scale amount = 12035
scale = 0
CreateOrderRS
The table covers the CreateOrderRS for properties, car hire and experiences.
order.recipients.messageSender.
Currency code as provided in the request
pos.posCurrency
order.recipients.messageSender.
Airline code as provided in the request
pos.iataNumber
order.creationDate.formattedDateTime * Timestamp of the creation time of the order, e.g. "2021-06-23T20:27:04"
Status of the order. Values:
"OPENED" - order is created on OMS side; no communication has
taken place to create a reservation
"HELD" - book and hold; order and reservation have been created, no
payment has been authorized -> NOT USED
"CONFIRMED" - order and reservation have been created. All order
items with a confirmed status have been fully paid. Cancelled or
order.status * pending order items may exist
"FAILED" - order exists but reservation has failed, booking ref does not
exist
"CANCELLED" - order and reservation have been cancelled
"SUSPENDED" - when a cancellation was requested, but the outcome
is unknown
"CLOSED" - when all the items of an order have been consumed
(reached a “final” service status) -> NOT USED
The total price of the order. The Price object is defined in the individual objects
order.orderTotal * below (ref Price). Relevant fields for this message:
totalAmount, loyaltyAmount, earnedPoints
Array of payment objects.
order.payments *
Each Payment object is defined in the individual objects below (ref Payment)
Items (array) that multiple persons purchase as a group. It is used in two use
cases:
1. For properties, to indicate travalers that are staying in the same room
groupOrder
2. For experiences, to indicate travelers that buy a product as a
group/unit (applicable to specific products as defined by Viator)
Each order should contain at least one personalOrder or groupOrder.
Array of objects to define the travelers of this group.
groupOrder.personsInGroup *
Each Person object is defined in the individual objects below (ref Person)
Attribute type.
vendors.hotel.attibuteList.type
o “general”, “pets”, “location”, “attractions”
vendors.hotel.attibuteList.attribute List of attributes
vendors.hotel.amenityList Property amenities (property level)
vendors.hotel.amenityList.id Amenity id
vendors.hotel.amenityList.name Amenity name
vendors.hotel.amenityList.category Amenity category
vendors.hotel.amenityList.ranking Amenity ranking
Array of property images
vendors.hotel.media
Each Media object is defined in the individual objects below (ref Media)
vendors.hotel.address Address information.
vendors.hotel.address.streetAddress Array of street addresses
vendors.hotel.address.cityName City
vendors.hotel.address.stateOrProvince State or province
vendors.hotel.address.zipCode Postal/zip code
vendors.hotel.address.countryCode Country code
vendors.hotel.checkInDetails The property’s check-in information.
vendors.hotel.checkInDetails.
The time at which a property begins to allow check-ins, e.g. "3:00 PM"
checkinStartTime
vendors.hotel.checkInDetails.
The time at which a property stops allowing check-ins.
checkinEndTime
vendors.hotel.checkInDetails.
The time by which a guest must check out.
checkoutTime
vendors.hotel.checkInDetails.
The property’s check-in policy.
instructions
vendors.hotel.checkInDetails. Any special instructions for checking into this property that may be specific to
specialInstructions this property.
vendors.hotel.checkInDetails.
The minimum age for a customer to be able to check-in at a property.
minCheckInAge
vendors.hotel.nearbyAirport The preferred airport of the property.
vendors.hotel.spokenLanguages Languages spoken at the property. Array of items.
vendors.hotel.feeList Information related to a property’s fees. Array of items.
vendors.hotel.feeList.type Type of fee, values: {“mandatory”, “optional”}
OrderListRQ
OrderListRQ Required Description
authenticatedSenders. Specifies the airline that this customer is a loyalty member of; 2-character IATA
*
messageSender.iataNumber airline code, e.g. “BA”
Specifies the device that the request was sent from. Values:
• AGENT_TERMINAL
• WEB_BROWSER
authenticatedSenders.messageSender. • AIRPORT_KIOSK
*
pos.device.deviceName • MOBILE_WEB
• MOBILE_APP
• OTHER
• UNKNOWN
Message participant. The array will contain one single item when the
Customer is the direct message participant or two items when the Customer
authenticatedSenders.msgParticipants *
Service Agent is the direct message participant. In the latter case, both the
Agent and the Customer’s info should be provided.
authenticatedSenders.
* The membership Id of the LAH user.
msgParticipants.agentId
Values:
authenticatedSenders.
* LAH : Loyalty Account Holder
msgParticipants.senderType
CSR : Customer Service Agents and Representatives
Provide specific search criteria. If the object is omitted, all the orders of the
queryBy
user will be returned.
queryBy.creationDate * Request to view all the orders of the user that were created within a specific
date range.
queryBy.creationDate.
* Start date of the date range, e.g. "2022-02-08"
startDate.formattedDateTime
queryBy.creationDate.
* End date of the date range, e.g. "2022-02-08"
endDate.formattedDateTime
OrderListRS
OrderListRS Required Description
payloadAttributes.correlationId * End-to-end correlation of application logs
payloadAttributes.messageDatetime.
* Timestamp of the response message
formattedDateTime
When a request message includes an echo token, the corresponding response
payloadAttributes.echoToken
message will include the same echo token.
listOfOrders * Array of items; each object contains the summary information of the order.
listOfOrders.orderId * Unique OrderId, e.g. "BAIAGLPCNYU4QY"
listOfOrders.recipients * Recipient details of the order. Ref AuthenticatedSenders
listOfOrders.recipients.
* The senderId of the request
authenticatedSenderId
listOfOrders.recipients.messageSender Details of the message sender
listOfOrders.recipients.
Airline code
messageSender. pos.iataNumber
Message participant. The array will contain one single item when the Customer
listOfOrders.recipients. is the direct message participant or two items when the Customer Service
*
msgParticipants Agent is the direct message participant. In the latter case, both the Agent and
the Customer’s info should be provided.
listOfOrders.recipients.
* The membership Id of the LAH user.
msgParticipants.agentId
Values:
listOfOrders.recipients.
* LAH : Loyalty Account Holder
msgParticipants.senderType
CSR : Customer Service Agents and Representatives
listOfOrders.creationDate.
* Timestamp of the creation time of the order, e.g. "2021-06-23T20:27:04"
formattedDateTime
3: Avis
4: Budget
listOfOrders.ancillaryList.
* Trip details pertaining to this item.
serviceSummary.trip
Start date of the trip, that is:
o Check-in date for properties,
listOfOrders.ancillaryList. with format YYYY-MM-DD. E.g. 2021-09-08
serviceSummary.trip.tripStartDate. * o Date to check for available experiences,
formattedDateTime with format YYYY-MM-DD. E.g. 2021-09-08
Pickup date and time for car hire, with format YYYY-MMM-
DDTHH:MM:SS E.g. 2021-09-08T10:00:00
End date of the trip, that is:
listOfOrders.ancillaryList. o Check-out date for properties,
* (Expedia and
serviceSummary.trip.tripEndDate. with format YYYY-MM-DD. E.g. 2021-09-08
Avis only)
formattedDateTime Drop off date and time for car hire, with format YYYY-MMM-DDTHH:MM:SS
E.g. 2021-09-08T10:00:00
listOfOrders.ancillaryList.
serviceSummary.trip.startLocation. * The destination name of the trip
name
listOfOrders.ancillaryList.
serviceSummary.trip.startLocation. * (Avis only) The destination id of the trip (office location code)
externalId.locationId
listOfOrders.ancillaryList.
serviceSummary.trip.endLocation. * (Avis only) The drop off location name
name
listOfOrders.ancillaryList.
serviceSummary.trip.endLocation. * (Avis only) The drop off location id (office location code)
externalId.locationId
listOfOrders.ancillaryList. * (Viator and Avis Array of objects to define the travelers of the trip. In the case of Avis, only one
serviceSummary.trip.travelers only) traveler is expected, that is the driver.
listOfOrders.ancillaryList. * (Viator and Avis
Refers to listOfOrders.passengerList.personId.
serviceSummary.trip.travelers.personId only)
listOfOrders.ancillaryList. Contains the pricedPTC of the traveler. Used only for experiences. Only one
* (Viator only)
serviceSummary.trip.travelers.ptc item is expected for ancillaries.
Representatives
msgParticipants.senderName * (only for TAP) Airline code of the CSR.
Mantadory for TAP flows and IAGL-white-label Avis flows.
msgParticipants.user.residenceCountryCode Residence country code of LAH
Person
Person Required Description
An identifier for a particular traveler. If a traveler appears multiple times in the response
personId *
(e.g. in a personalOrder and in a groupOrder), then the same id is expected.
The PTC of the traveler. E.g. ADT, CHD, INF
* (Expedia and
ptc Values: {ADT, CHD, INF, SRC, YTH, TRA}
Avis only)
The array will always contain one single item for ancillaries.
familyName Last name of the traveler.
firstName First name of the traveler. One item is expected for ancillaries.
dateOfBirth.formattedDateTime The date of birth of the driver – used only in car hire. E.g. "1990-09-10"
age The age of the traveler
nameTitle The title of the driver – used only in car hire.
phone Phone details. The array will always contain one single item for ancillaries.
phone.countryCode Country code for the phone number. Should not include the leading ‘+’ character.
Phone number. Required by Expedia and Viator; optional for Avis.
phone.phoneNumber For Avis and Viator, if the countryCode is provided in the request it will be concatenated
with the phoneNumber before sent to the vendor.
address Address details. The array will always contain one single item for ancillaries.
address.streetAddress Street addresses array. Used in Expedia and Avis.
address.cityName City name. Used in Expedia and Avis.
address.zipCode Zip or postal code. Used in Expedia and Avis.
address.countryCode Country code. Used in Expedia and Avis.
address.stateOrProvince State or province. Used in Expedia and Avis.
email.emailAddress Email address. Required by Expedia; optional for Avis and Viator.
Indicates if this is the traveler that creates the booking. One traveler is required to
primaryInd
contain this field with a “true” value.
Bundle
Bundle Required Description
bundleId * Unique identifier of this order item; unique within the order
References to the vendor of this order item.
For Expedia, this is the propertyId
vendorRef * For Avis&Budget, this is the vendorBrandId (that is Avis or
Budget id)
For Viator, this is the supplier’s identifier
References to the respective recommendationId of the shopping
recommendationRef *
response
Specifies the priced PTC of the traveler that selected this order
* (Viator
pricedPTC.code item.
only)
Used only for Viator.
Contains the details of the ordered service. The array will always
serviceItem *
contain one single item for ancillaries.
serviceItem.serviceId * Unique identifier of this service instance; unique within the order
serviceItem.serviceType * Specifies the type of the service: {“Hotel”, “Car”, “Activity”}
The status of this service. Values:
"READY TO PROCEED" - when the service is created (that is
the booking is created to the vendor)
serviceItem.deliveryStatus * "REMOVED" - when the service is cancelled
"SUSPENDED" - when cancellation of the service was
requested, but the outcome is unknown
"DELIVERED" -when the service is consumed -> NOT USED
Contains the booking reference of the external system. The array
serviceItem.bookingReference *
will always contain one single item for ancillaries.
serviceItem.bookingReference. recordLocator * The booking identifier in the external system
Identifier of the external system
1: Expedia
serviceItem.bookingReference. source * 2: Viator
3: Avis
4: Budget
serviceItem.media Array of room images (for properties).
structured data
serviceItem.experience. experienceDetails.description Description of this product's itinerary
serviceItem.experience. experienceDetails.duration Duration information for this service
serviceItem.experience. experienceDetails. Duration of this service in the case that it takes a fixed amount of
duration.duration time
serviceItem.experience. experienceDetails. Lower limit of the duration of this service in the case that this
duration.minDuration product's duration varies
serviceItem.experience. experienceDetails. Upper limit of the duration of this service in the case that this
duration.maxDuration product's duration varies
serviceItem.experience. experienceDetails. Duration information for this service returned as a free text, used
duration.freeText only in UNSTRUCTURED products
serviceItem.experience. experienceDetails. duration.uom Unit of measurement. E.g. “min”
Each item in the list describes a particular day, used only in
serviceItem.experience. experienceDetails. STANDARD
experienceDayList UNSTRUCTURED (with one DayItem) and
MULTI_DAY_TOUR (with multiple DayItems) products
serviceItem.experience. experienceDetails. Title of this day of the tour.
experienceDayList.name Used only in MULTI_DAY_TOUR (with multiple DayItems) products.
serviceItem.experience. experienceDetails. Number of this day.
*
experienceDayList. dayNumber Used only in MULTI_DAY_TOUR (with multiple DayItems) products.
Details about the places that this product visits or passes through
on this day; used only in
serviceItem.experience. experienceDetails. STANDARD
experienceDayList. itineraryItems MULTI_DAY_TOUR and
UNSTRUCTURED products
Array of items.
serviceItem.experience. experienceDetails.
Description of this product's itinerary.
experienceDayList. itineraryItems.description
serviceItem.experience. experienceDetails.
Duration information for this day item.
experienceDayList. itineraryItems.duration
serviceItem.experience. experienceDetails. Duration of this day item in the case that it takes a fixed amount of
experienceDayList. itineraryItems.duration.duration time.
serviceItem.experience. experienceDetails.
Unit of measurement. E.g. “min”
experienceDayList. itineraryItems.duration.uom
foodMenus.dishDescription
* (Expedia
serviceQualifier As provided in the CreateOrderRQ. Used only for properties.
only)
* (Expedia
serviceQualifier. serviceTypeIdentifier Specifies the selected bedGroupId.
only)
Free text to send any special requests to the property (not
serviceQualifier.ssrQualifier. remark
guaranteed).
Specifies if the guest would prefer a smoking room. This field is
only a request and the property is not guaranteed to honor it, it
* (Expedia
serviceQualifier.ssrQualifier. specialRequest will not override any non-smoking policies by the hotel.
only)
The array will always contain one single item.
Used only for properties.
* (Expedia
serviceQualifier.ssrQualifier. specialRequest.attribute Expected value: “smoking”.
only)
* (Expedia
serviceQualifier.ssrQualifier. specialRequest.value Values: “true” or “false”.
only)
The price applicability details. The array will always contain one
priceDetail *
single item for ancillaries.
priceDetail.priceApplicabilityId * Unique Price Applicability Id within the same message
Reference to the serviceId within this bundle. The array will always
priceDetail.serviceRef *
contain one single item for ancillaries.
Individual price for a person or a group of persons. The Price is the
priceDetail.passengerPrice * total price for the group. The array will always contain one single
item for ancillaries.
priceDetail. passengerPrice.groupPriceId * Unique Group Price Id within an offer
References to a person object defined either as an individual
priceDetail. passengerPrice.personRefs *
person or within the personsInGroup. Array of items.
Price breakdown per unit. Array of items.
Used only for properties and experiences.
* (Expedia
priceDetail. passengerPrice.unitPrices For experiences it will be returned only if the unit is
only)
“PER_PERSON”, otherwise the price represents a group price and
no unit price info is returned.
priceDetail. passengerPrice.unitPrices.unitId * Unique Unit Id within a group price
priceDetail. passengerPrice.unitPrices.unit * Unit designator, e.g. “night”
Media
Media Required Description
ProductAttributes
ProductAttributes Required Description
Attribute type
for experiences: {“additionalInfo”, “itinerary”, “bookingRequirements”,
inclusions”, “exclusions”}
type
for properties: “amenity”
under path /packageAttributes: rate level
for vehicles: {“features”, “capacity”, “size”}
attribute List of attributes
Experiences:
for type “additionalInfo”: List of additional info descriptions
for type “inclusions”: List of inclusions
for type “exclusions”: List of exclusions
Properites:
for type “amenity”: List of amenities
Vehicles:
for type “features”: "Smoke Free", "Air Conditioned", "Bluetooth Equipped",
"Internet/Network Access"
for type “capacity” e.g. : "4 Doors", "7/8 Seats", "2 Large Suitcase(s)", "4 Small
Suitcase(s)"
for type “size”:
“Small”, “Mid Size”, “Large”,”People Carriers”
List of attribute pairs (key-value)
Experiences:
for type “itinerary”: contains attribute pairs for attributes “skipTheLine” and
“privateTour” with values “true”, “false”
for type “bookingRequirements”: contains attribute pairs for attributes
"minTravelersPerBooking", "maxTravelersPerBooking",
"requiresAdultForBooking" with their respective values
attributePairs
under path /itineraryItems: "passByWithoutStopping", "admissionIncluded"
under path /packageAttributes: "cancelIfBadWeather",
"cancelIfInsufficientTravelers", "ticketInfo", "pickupIncluded"
Vehicles:
under path /packageAttributes: "unlimited_distance", "distance_unit",
“under_age_fee_applied”, "distance_covered", "distance_overage"
Attribute key
Experiences:
for type “itinerary”: “skipTheLine” and “privateTour”
attributePairs.attribute for type “bookingRequirements: "minTravelersPerBooking",
"maxTravelersPerBooking", "requiresAdultForBooking"
Price
Price Required Description
priceId Unique Price Id for this object
Total amount.
totalAmount.amount.intValue *
Sum of netAmount + taxes + markup + fees.
Decimal points, e.g. 120.35:
totalAmount.amount.scale * amount = 12035
scale = 2
totalAmount.currencyCode * Currency code
baseAmount.amount.intValue Base amount
Decimal points, e.g. 120.35:
baseAmount.amount.scale amount = 12035
scale = 2
baseAmount. currencyCode Currency code
totalTaxAmount.amount.intValue Total tax amount
Decimal points, e.g. 120.35:
totalTaxAmount.amount.scale amount = 12035
scale = 2
totalTaxAmount.amount. currencyCode Currency code
Net amount. Cost of goods, without markup.
netAmount.amount.intValue
Used only for experiences.
netAmount.amount.scale Decimal points, e.g. 120.35:
amount = 12035
scale = 2
Used only for experiences.
Currency code
netAmount.currencyCode
Used only for experiences.
Markup amount. Calculation: netAmount*markupPercent
markup.amount.intValue
Used only for experiences.
Decimal points, e.g. 120.35:
amount = 12035
markup.amount.scale
scale = 2
Used only for experiences.
Currency code
markup.currencyCode
Used only for experiences.
surcharges Any additional surcharges (array)
surcharges. feeCode Fee designator
surcharges. amount.amount.intValue Fee amount
surcharges.amount.amount.scale Decimal points, e.g. 120.35:
amount = 12035
scale = 2
surcharges.amount.currencyCode Currency code
surcharges.isWaived Boolean indicating whether the fee will be waived or not.
earnedPoints.currencyCode For Amounts expressed in Miles 999 will be used as currency code
Payment
Payment Required Description
Payment method (mandatory in the request). Values:
typeCode * RW: for loyalty
CC: for credit card
paymentId Unique payment identifier
Payment status code. Values:
INITIALIZED: payment initialization was successful
SUSPENDED: payment authorization was successful, step up is
required
statusCode
AUTHORIZED: payment authorization and capture was successful
FAILED: payment transaction failed
REFUNDED: payment refund was successful
Used only in the response.
paymentApplicabilities.
References to the offers that this payment object pays for
bundleSelectionRefs
Used only in the 3DS-StepUp flow (in the OrderChangeRQ) to indicate that the
is3DS
StepUp was successful (with value “true”).
vendorTrxId Vendor’s transaction Id. Used only in the response.
processor Payment processor. Used only in the response.
payWithMiles Mandatory if typeCode is RW.
payWithMiles.loyaltyAccount.
* Membership id of the LAH user.
accountNumber
Total amount.
payWithMiles amount.amount.intValue * If it is positive, then loyalty points will be debided.
If it is negative, then loyalty points will be credited.
Decimal points, e.g. 12035:
payWithMiles amount.amount.scale * amount = 12035
scale = 0
payWithMiles amount.currencyCode * Currency code. 999 is for loyalty points
payWithCC Mandatory if typeCode is CC.
OfficeLocation
OfficeLocation Required Description
address Address details
address.stateOrProvince State or province
address.streetAddress Street addresses array
address.cityName City name or administrative area
address.zipCode Zip or postal code
address.countryName Country name
address.countryCode Country code
location.name * Name of this location
location.code Unique location code (of Avis/Budget)
phone.phoneNumber Phone number of the office
workingHours Operating hours of the office
type If this is an airport location, the type will be “airport”; otherwise it will not be returned
Geographic coordinates (lattitude/longitude) for this location. The array will always
geoLocation
contain one single item for ancillaries.
geoLocation.latitude.intValue * Latitude of this location
geoLocation.latitude.scale * Decimal points
geoLocation.longitude.intValue * Longitude of this location
geoLocation.longitude.scale * Decimal points
description Description of the location
typeCode
paymentId
statusCode
paymentApplicabilities.
bundleSelectionRefs
is3DS
vendorTrxId
processor
payWithMiles
payWithMiles.loyaltyAccount.
accountNumber
payWithMiles
amount.amount.intValue
payWithMiles amount.amount.scale
payWithMiles amount.currencyCode
payWithCC
payWithCC.cardType (internal paymentInformation.
mapping) card.type
tokenInformation.
payWithCC.cardToken
transientToken
paymentInformation.
payWithCC.expiryDate.year
card.
payWithCC.expiryDate. paymentInformation.
monthNumeric card.
payWithCC.secureInstruction.
terminationUrl
payWithCC.secureInstruction.
payerAythRequest
payWithCC.secureInstruction.
redirectionUrl
payWithCC.secureTrxResult.trxId
payWithCC.
amount.amount.intValue
payWithCC. amount.amount.scale
payWithCC. amount.currencyCode
payWithCC.person
payWithCC.person.firstName
payWithCC.person.familyName
payWithCC.person.email.emailAddr
ess
payWithCC.person.phone
payWithCC.person.phone.countryCo
de
payWithCC.person.phone.
phoneNumber
payWithCC.person.address
payWithCC.person.address.cityNam
e
payWithCC.person.address.
countryCode
payWithCC.person.address.zipCode
payWithCC.person.address.
stateOrProvince
payWithCC.person.address.streetAd
dress
typeCode
paymentId
statusCode
paymentApplicabilities.
bundleSelectionRefs
is3DS
vendorTrxId
processor
payWithMiles
payWithMiles.loyaltyAccount.
accountNumber
payWithMiles
amount.amount.intValue
payWithMiles amount.amount.scale
payWithMiles amount.currencyCode
payWithCC
payWithCC.cardType (internal
mapping)
payWithCC.cardToken
payWithCC.expiryDate.year
payWithCC.expiryDate.
monthNumeric
payWithCC.secureInstruction.
terminationUrl
payWithCC.secureInstruction.
payerAythRequest
payWithCC.secureInstruction.
redirectionUrl
payWithCC.secureTrxResult.trxId
payWithCC.
amount.amount.intValue
payWithCC. amount.amount.scale
payWithCC. amount.currencyCode
payWithCC.person
payWithCC.person.firstName
payWithCC.person.familyName
payWithCC.person.email.emailAddr
ess
payWithCC.person.phone
payWithCC.person.phone.countryCo
de
payWithCC.person.phone.
phoneNumber
payWithCC.person.address
payWithCC.person.address.cityNam
e
payWithCC.person.address.
countryCode
payWithCC.person.address.zipCode
payWithCC.person.address.
stateOrProvince
payWithCC.person.address.streetAd
dress