You are on page 1of 51

Ancillaries Order APIs

Version 1.76

Copyright © 2024 JR Technologies


All Rights Reserved.
Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 2 of


51
Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 3 of


51
Confidential - Not for distribution

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”

Introduction - Purpose of this


Document
This document provides a first high-level overview of the Aerostream Ancillaries Order APIs.

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 4 of


51
Confidential - Not for distribution

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

1.4 Car hire


In the case of Avis&Budget, the above APIs leverage the following Avis&Budget APIs:
o createReservation

Copyright © 2024 JR Technologies, All Rights Reserved. Page 5 of


51
Confidential - Not for distribution

CreateOrderRQ from Shopping Cart


CreateOrderRQ Required Description
payloadAttributes.correlationId * The correlationId as returned by a previous viewShoppingCartRS.
When a request message includes an echo token, the corresponding response
payloadAttributes.echoToken
message will include the same echo token.
authenticatedSenders. An agreed senderId that must be present in all the requests. Ref
*
authenticatedSenderId AuthenticatedSenders
authenticatedSenders.
* (Expedia only) IP address of the customer (IPV4).
messageSender.pos.device.ipAddress
authenticatedSenders.
* (Avis only) Customer’s country code.
messageSender.pos.posCountry
authenticatedSenders.
* Language code. Values: “en-US”, “es-ES”
messageSender.pos.posLanguage
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
selectedCartOffers * The selected offers (array) from the shopping cart.
selectedCartOffers.bundleSelectionId * The bundleSelectionId of the offer from the viewShoppingCartRS.
selectedCartOffers.selectedOption * The selected price option for the offer from the viewShoppingCartRS.
Array of objects to specify the groups of travelers. For properties, there should
selectedCartOffers.selectionGroup * be one object per room. For experiences, there should be one object per
priced PTC.
selectedCartOffers.selectionGroup. Array of strings to specify the travelers of this group.
*
shopperRef Refers to travelers in the paxList.personId within ths message.
selectedCartOffers.selectionGroup. Specifies the priced PTC of the traveler that selects this offer.
* (Viator only)
pricedPTC.code Used only for Viator.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 6 of 51


Confidential - Not for distribution

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 7 of 51


Confidential - Not for distribution

paxList.address.streetAddress Street addresses array. Used in Expedia and Avis.


paxList.address.cityName City name. Used in Expedia and Avis.
paxList.address.zipCode Zip or postal code. Used in Expedia and Avis.
paxList.address.countryCode * (Expedia only) Country code. Used in Expedia and Avis.
paxList.address.stateOrProvince State or province. Used in Expedia and Avis.
paxList.email.emailAddress * (Expedia only) Email address. Required by Expedia; optional for Avis and Viator.
Indicates if this is the traveler that creates the booking. One traveler is
paxList.primaryInd
required to contain this field with a “true” value.
Additional information that should be captured with the creation of the order.
deliveryInstructions
Used in Avis and Viator.
deliveryInstructions.flightNumber Information of the arrival flight. Used only in Avis.
deliveryInstructions.flightNumber.
Airline code, e.g. “BA”.
airline.iataCode
deliveryInstructions.flightNumber.
Flight number of the arrival flight.
flightNumber
Specifies which language and what type of language guide to include if
deliveryInstructions.languageGuide
language guides are available for this product. Used only in Viator.
The type of language guide; one of:
deliveryInstructions.languageGuide.  GUIDE – human tour guide
* (Viator only)
attribute  AUDIO – audio guide
 WRITTEN – printed guide
deliveryInstructions.languageGuide.
* (Viator only) Language code of the language for this guide, e.g. “en”
value
Starting time for the item in the case that the product has multiple start times,
deliveryInstructions.startTime.
e.g. “10:00”
formattedDateTime
Used only in Viator.
Array of the answers to the booking questions that were returned in the
deliveryInstructions.bookingQNAsList
getTravelOfferDetailsRS. Used only in Viator.
deliveryInstructions.
* (Viator only) Booking question id as returned in the getTravelOfferDetailsRS.
bookingQNAsList.id
deliveryInstructions.
* (Viator only) Answer to this booking question.
bookingQNAsList.answer
deliveryInstructions. Refers to the passenger that this answer pertains to.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 8 of 51


Confidential - Not for distribution

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 9 of 51


Confidential - Not for distribution

CreateOrderRQ from ShoppingRS


CreateOrderRQ Required Description
payloadAttributes.correlationId * The correlationId as returned by a previous getTravelOfferDetailsRS.
When a request message includes an echo token, the corresponding response
payloadAttributes.echoToken
message will include the same echo token.
authenticatedSenders.
* An agreed senderId that must be present in all the requests.
authenticatedSenderId
authenticatedSenders.
* (Expedia only) IP address of the customer (IPV4).
messageSender.pos.device.ipAddress
authenticatedSenders.
* (Avis only) Customer’s country code.
messageSender.pos.posCountry
authenticatedSenders. Specifies the airline that this customer is a loyalty member of; 2-character IATA
*
messageSender.iataNumber airline code, e.g. “BA”
selectedOffers * The selected offers (array) from one or more previous offer response(s).
The recommendationId from the respective getTravelOfferDetailsRS.
selectedOffers.recommendationId *
The array will always contain one single item for ancillaries.
selectedOffers.bundleId * The bundleId from the respective getTravelOfferDetailsRS.
selectedOffers.selectionList * The selected priceApplicabilityId from the respective getTravelOfferDetailsRS.
Specifies the traveler that selects this offer.
selectedOffers.paxRef Refers to a traveler within this message.
Each selectedOffer must contain either a paxRef or a shopperGroup.
Specifies a group of travelers that select this offer. Array of items.
It is used for:
selectedOffers.shopperGroup.  properties, when multiple travelers are staying in the same room
shopperRef  experiences, when selecting a product as a unit
Refers to travelers within this message.
Each selectedOffer must contain either a paxRef or a shopperGroup.
Specifies the priced PTC of the traveler that selects this offer.
selectedOffers.pricedPTC.code * (Viator only)
Used only for Viator.
selectedOffers.serviceQualifier. Specifies the selected bedGroupId from the respective
* (Expedia only)
serviceTypeIdentifier getTravelOfferDetailsRS. Used only for properties.
selectedOffers.serviceQualifier. Free text to send any special requests to the property (not guaranteed). Used
ssrQualifier.remark only for properties.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 10 of 51


Confidential - Not for distribution

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 11 of 51


Confidential - Not for distribution

paxList.address.streetAddress Street addresses array. Used in Expedia and Avis.


paxList.address.cityName City name. Used in Expedia and Avis.
paxList.address.zipCode Zip or postal code. Used in Expedia and Avis.
paxList.address.countryCode * (Expedia only) Country code. Used in Expedia and Avis.
paxList.address.stateOrProvince State or province. Used in Expedia and Avis.
paxList.email.emailAddress * (Expedia only) Email address. Required by Expedia; optional for Avis and Viator.
Indicates if this is the traveler that creates the booking. One traveler is
paxList.primaryInd
required to contain this field with a “true” value.
Additional information that should be captured with the creation of the order.
deliveryInstructions
Used in Avis and Viator.
deliveryInstructions.flightNumber Information of the arrival flight. Used only in Avis.
deliveryInstructions.flightNumber.
Airline code, e.g. “BA”.
airline.iataCode
deliveryInstructions.flightNumber.
Flight number of the arrival flight.
flightNumber
Specifies which language and what type of language guide to include if
deliveryInstructions.languageGuide
language guides are available for this product. Used only in Viator.
The type of language guide; one of:
deliveryInstructions.languageGuide.  GUIDE – human tour guide
* (Viator only)
attribute  AUDIO – audio guide
 WRITTEN – printed guide
deliveryInstructions.languageGuide.
* (Viator only) Language code of the language for this guide, e.g. “en”
value
Starting time for the item in the case that the product has multiple start times,
deliveryInstructions.startTime.
e.g. “10:00”
formattedDateTime
Used only in Viator.
Array of the answers to the booking questions that were returned in the
deliveryInstructions.bookingQNAsList
getTravelOfferDetailsRS. Used only in Viator.
deliveryInstructions.
* (Viator only) Booking question id as returned in the getTravelOfferDetailsRS.
bookingQNAsList.id
deliveryInstructions.
* (Viator only) Answer to this booking question.
bookingQNAsList.answer
deliveryInstructions. Refers to the passenger that this answer pertains to.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 12 of 51


Confidential - Not for distribution

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

payloadAttributes.correlationId The correlationId as returned by a previous createOrderRS.

When a request message includes an echo token, the corresponding response


payloadAttributes.echoToken
message will include the same echo token.

An agreed sender that must be present in all the requests. Ref


authenticatedSenders.
* AuthenticatedSendersAn agreed senderId that must be present in all the
authenticatedSenderId
requests.

The unique OrderID of the order as returned in the createOrderRS, e.g.


queryBy.orderID *
"BAIAGLPCNYU4QY"

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 13 of 51


Confidential - Not for distribution

response message will include the same echo token.


An agreed sender that must be present in all the requests. Ref
authenticatedSenders. authenticatedSenderId * AuthenticatedSendersAn agreed senderId that must be present in all
the requests.
authenticatedSenders. * (Expedia
IP address of the customer (IPV4).
messageSender.pos.device.ipAddress only)
authenticatedSenders.
* (Avis only) Customer’s country code.
messageSender.pos.posCountry
authenticatedSenders.
* Language code. Values: “en-US”, “es-ES”
messageSender.pos.posLanguage
authenticatedSenders. Specifies the airline that this customer is a loyalty member of; 2-
*
messageSender.iataNumber character IATA 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
Unique OrderID as returned in the previous response, e.g.
orderId *
"BAIAGLPCNYU4QY"
Array of payment objects. One payment object is expected for card
payments with the nessecary information to continue the payment’s
payments * processing.
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 group price of previous shoppingcartRS in order to
feeWaivers.groupPriceRef
indicate the fee of a specific ancillary.
feeWaivers.feeCode Fee designator
feeWaivers.isWaived Boolean indicating whether the fee will be waived or not.
feeWaivers.waiverReason String indicating the fee waiver reason. It must be set if “isWaived”

Copyright © 2024 JR Technologies, All Rights Reserved. Page 14 of 51


Confidential - Not for distribution

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.

CreateOrderRS 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.
order * Details of the created order
order.orderID * Unique OrderID, e.g. "BAIAGLPCNYU4QY"
order.recipients * Recipient details. Ref AuthenticatedSenders
order.recipients.authenticatedSenderId * The senderId of the request
order.recipients.messageSender Details of the message sender as provided in the request
order.recipients.messageSender.
The customer’s IP address as provided in the request
pos.device.ipAddress

Copyright © 2024 JR Technologies, All Rights Reserved. Page 15 of 51


Confidential - Not for distribution

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)

Copyright © 2024 JR Technologies, All Rights Reserved. Page 16 of 51


Confidential - Not for distribution

Array of objects to define the ordered items of this group.


groupOrder.bundle *
Each Bundle object is defined in the individual objects below (ref Bundle)
Array of items. Each contains the items that a person purchases. Each order
personalOrder
should contain at least one personalOrder or groupOrder.
Array of objects to define the travelers of this group.
personalOrder.person *
Each Person object is defined in the individual objects below (ref Person)
Array of objects to define the ordered items of this traveler.
personalOrder.bundle *
Each Bundle object is defined in the individual objects below (ref Bundle)
Additional information that should be captured with the creation of the order.
deliveryInstructions
Used in Avis and Viator.
deliveryInstructions.flightNumber Information of the arrival flight. Used only in Avis.
deliveryInstructions.flightNumber.
Airline code, e.g. “BA”.
airline.iataCode
deliveryInstructions.flightNumber.
Flight number of the arrival flight.
flightNumber
Specifies which language and what type of language guide to include if
deliveryInstructions.languageGuide
language guides are available for this product. Used only in Viator.
The type of language guide; one of:
deliveryInstructions.languageGuide.  GUIDE – human tour guide
* (Viator only)
attribute  AUDIO – audio guide
 WRITTEN – printed guide
deliveryInstructions.languageGuide.
* (Viator only) Language code of the language for this guide, e.g. “en”
value
Starting time for the item in the case that the product has multiple start times,
deliveryInstructions.startTime.
e.g. “10:00”
formattedDateTime
Used only in Viator.
Array of the answers to the booking questions that were returned in the
deliveryInstructions.bookingQNAsList
getTravelOfferDetailsRS. Used only in Viator.
deliveryInstructions.
* (Viator only) Booking question id as returned in the getTravelOfferDetailsRS.
bookingQNAsList.id
deliveryInstructions.
* (Viator only) Answer to this booking question.
bookingQNAsList.answer
deliveryInstructions.
Refers to the passenger that this answer pertains to.
bookingQNAsList.paxRef

Copyright © 2024 JR Technologies, All Rights Reserved. Page 17 of 51


Confidential - Not for distribution

deliveryInstructions. Unit in which the answer is provided as returned in the


bookingQNAsList.unit getTravelOfferDetailsRS.
The vendor’s id.
vendors.vendorId * For properties, the unique Expedia’s property Id.
For cars, the unique Aerostream’s vendor brand id.
The vendor’s name.
vendors.vendorName *
For properties, the property name.
vendors.hotel * (Expedia only) Details of a hotel vendor, used only for properties
vendors.hotel.ratings Array of ratings for the hotel
vendors.hotel.ratings.source Source of rating, it can be either “property” (stars) or “guest” (guest reviews)
vendors.hotel.ratings.type When source is “property”, type will be populated with value “Star”
vendors.hotel.ratings.overall Value of the overall rating
Rating breakdown information (array) provided by guests who stayed at this
vendors.hotel.ratings.ratingBreakdown property
Returned only in the getTravelOfferDetailsRS
vendors.hotel.ratings.ratingBreakdown. Rating category, e.g. “cleanliness”, “comfort”
attribute Returned only in the getTravelOfferDetailsRS
vendors.hotel.ratings.ratingBreakdown. Rating value
value Returned only in the getTravelOfferDetailsRS
vendors.hotel.category Category of the property, e.g. “Hotel”
Whether or not a payment for this property can be taken by the property upon
vendors.hotel.propertyCollectInd
arrival
Whether or not a payment for this property can be taken by Expedia at the
vendors.hotel.sellerCollectInd
time of booking
vendors.hotel.chain Name of the chain that this property belongs to
Name of the brand that this property belongs to (each chain might have
vendors.hotel.brand
multiple brands)
vendors.hotel.propertyLocation. Coordinates of the property. The array will always contain one single item for
geoLocation ancillaries.
vendors.hotel.propertyLocation.
Latitude
geolocation.latitude
vendors.hotel.propertyLocation.
Longitude
geolocation.longitude
vendors.hotel.attibuteList General structure that holds product's attributes

Copyright © 2024 JR Technologies, All Rights Reserved. Page 18 of 51


Confidential - Not for distribution

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”}

Copyright © 2024 JR Technologies, All Rights Reserved. Page 19 of 51


Confidential - Not for distribution

vendors.hotel.feeList.attribute Description of the fee


Information about property policies that guests need to be aware of. The array
vendors.hotel.policies
will always contain one single item.
vendors.hotel.policies.type Type of policy, value: {“know_before_you_go”}
vendors.hotel.policies.attribute Description of the policy
vendors.carHireOffice * (Avis only) Used only for cars.
Rental car pickup location and address information. The OfficeLocation object
vendors.carHireOffice.pickupLocation is defined in the individual objects below (ref Error: Reference source not
found)
Rental car dropff location and address information. The OfficeLocation object
vendors.carHireOffice.dropoffLocation is defined in the individual objects below (ref Error: Reference source not
found)
vendors.carHireOffice.policies Policies
vendors.carHireOffice.policies.type Value: “terms”
vendors.carHireOffice.policies.attribute List of terms and conditions

Copyright © 2024 JR Technologies, All Rights Reserved. Page 20 of 51


Confidential - Not for distribution

OrderListRQ
OrderListRQ Required Description

payloadAttributes.correlationId The correlationId as returned by a previous createOrderRS.

When a request message includes an echo token, the corresponding response


payloadAttributes.echoToken
message will include the same echo token.

An agreed sender that must be present in all the requests. Ref


authenticatedSenders.
* AuthenticatedSendersAn agreed senderId that must be present in all the
authenticatedSenderId
requests.

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 21 of 51


Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 22 of 51


Confidential - Not for distribution

Status of the order. Values:


 "OPENED" - when an order is created
 "HELD" - book and hold –> NOT USED
 "CANCELLED" - when an order is cancelled
listOfOrders.orderStatus *
 "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
listOfOrders.orderTotal * below (ref Price). Relevant fields for this message:
totalAmount, loyaltyAmount, earnedPoints
listOfOrders.ancillaryList * Array of ancillary items
listOfOrders.ancillaryList.
* Summary information of this ancillary item
serviceSummary
listOfOrders.ancillaryList.
* Specifies the type of the service: {“Hotel”, “Car”, “Activity”}
serviceSummary.serviceType
listOfOrders.ancillaryList. * (Expedia and
Name of this item. Room name for Expedia; product name for Viator.
serviceSummary.name Viator only)
The status of this item. Values:
 "READY TO PROCEED" - when the service is created (that is the
booking is created to the vendor)
listOfOrders.ancillaryList.
*  "REMOVED" - when the service is cancelled
serviceSummary.deliveryStatus
 "SUSPENDED" - when cancellation of the service was requested, but
the outcome is unknown
 "DELIVERED" -when the service is consumed -> NOT USED
listOfOrders.ancillaryList. Contains the booking reference of the external system. The array will always
*
serviceSummary.bookingReference contain one single item for ancillaries.
listOfOrders.ancillaryList.
serviceSummary.bookingReference. * The booking identifier in the external system
recordLocator
listOfOrders.ancillaryList. * Identifier of the external system
serviceSummary.bookingReference.  1: Expedia
source  2: Viator

Copyright © 2024 JR Technologies, All Rights Reserved. Page 23 of 51


Confidential - Not for distribution

 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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 24 of 51


Confidential - Not for distribution

Used to group travelers to define occupancy. Array of items.


listOfOrders.ancillaryList.
* (Expedia only) Each shopperGroup object signifies the thravelers that will stay in the same
serviceSummary.trip.shopperGroups
room. Used only for properties.
listOfOrders.ancillaryList.
serviceSummary.trip.shopperGroups. * (Expedia only) Array of items. Contains reference(s) to listOfOrders.passengerList.personId(s).
shopperRef
The total price of this serviceSummary. The Price object is defined in the
listOfOrders.ancillaryList.
* individual objects below (ref Price). Relevant fields for this message:
serviceSummary.bundlePrice
totalAmount, loyaltyAmount, earnedPoints
listOfOrders.ancillaryList.
Name of the vehicle. Used only for cars.
serviceSummary.vehicle.name
listOfOrders.ancillaryList.
serviceSummary.vehicle. The name of the vehicle class. Used only for cars.
vehicleClassName
* (Expedia and
listOfOrders.ancillaryList.vendorName Property name for properties; brand name for cars.
Avis only)
listOfOrders.ancillaryList. Array of items. Each object contains the summary information of a room. Used
* (Expedia only)
roomSummary only for properties.
listOfOrders.ancillaryList.
Description of the bed group
roomSummary.bedGroup
listOfOrders.ancillaryList.
Boolean indicator of the smoking preference of the room.
roomSummary.smoking
Array of objects to define the travelers of this order.
Each Person object is defined in the individual objects below (ref Person).
listOfOrders.passengerList *
Relevant fields for this message:
personId, ptc, familyName, firstName, primaryInd

Copyright © 2024 JR Technologies, All Rights Reserved. Page 25 of 51


Confidential - Not for distribution

Description of individual objects


AuthenticatedSenders
AuthenticatedSenders Required Description
authenticatedSenderId * An agreed senderId that must be present in all the requests.
 “IAGL-white-label” for Online channel (IAGL UI)
 “IAGL-TAP” for Offline channel (TAP)
messageSender.iataNumber * Specifies the airline that this customer is a loyalty member of; 2-character
IATA airline code, e.g. “BA”
messageSender.pos.posCountry * (Expedia and The country code of the traveler’s point of sale. This should represent the
Avis only) country where the shopping transaction is taking place.
messageSender.pos.posCurrency Currency code
messageSender.pos.posLanguage Language code, e.g. “en-US”, “es-ES”
messageSender.pos.device. ipAddress * (Expedia only – The customer’s IP address as provided in the request.
specific Mandatory for Expedia in OrderCreateRQ, OrderReshopRQ,
messages) OrderChangeRQ.
messageSender.pos.device. deviceName * Specifies the device that the request was sent from. Values:
• AGENT_TERMINAL
• WEB_BROWSER
• AIRPORT_KIOSK
• MOBILE_WEB
• MOBILE_APP
• OTHER
• UNKNOWN
messageSender.senderType * (only for TAP) Type of the sender. Used only for TAP with value “CSR”.
messageSender.agentID * (only for TAP) Logged in agent user id. Used only for TAP.
messageSender. sourceSenderCode * (only for TAP) Staff number of the agent. Used only for TAP.
msgParticipants.agentId * (only for LAH) The membership id of the LAH user. The array will contain one single item
when the Customer is the direct message participant or two items when
the Customer Service Agent is the direct message participant. In the latter
case, both the Agent and the Customer’s info should be provided.
msgParticipants.senderType * Values:
 LAH : Loyalty Account Holder
 OPCO : Operational Company of Customer Service Agents and

Copyright © 2024 JR Technologies, All Rights Reserved. Page 26 of 51


Confidential - Not for distribution

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 27 of 51


Confidential - Not for distribution

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).

Copyright © 2024 JR Technologies, All Rights Reserved. Page 28 of 51


Confidential - Not for distribution

Array of vehicle images (for cars). Avis&Budget return only one


image.
Array of product images (for experiences).
Each Media object is defined in the individual objects below (ref
Media)
* (Viator
serviceItem.description.title Description of this product. Used only for experiences.
only)
serviceItem.trip * Trip details pertaining to this ServiceItem.
Start date of the trip, that is:
o Check-in date for properties,
with format YYYY-MM-DD. E.g. 2021-09-08
serviceItem.trip.tripStartDate. formattedDateTime * o Date to check for available experiences,
with format YYYY-MM-DD. E.g. 2021-09-08
o 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:
* (Expedia o Check-out date for properties,
serviceItem.trip.tripEndDate. formattedDateTime and Avis with format YYYY-MM-DD. E.g. 2021-09-08
only) o Drop off date and time for car hire, with format YYYY-
MMM-DDTHH:MM:SS E.g. 2021-09-08T10:00:00
serviceItem.trip.startLocation.name The destination name of the trip
serviceItem.trip.startLocation. externalId.locationId * The destination Id of the trip
* (Expedia
serviceItem.trip.startLocation. externalId.type and Viator Type of the externalId.locationId
only)
serviceItem.trip.endLocation.name The drop off location name. Used only for cars.
serviceItem.trip.endLocation. externalId.locationId * (Avis only) The drop off locationId
Details about the delivery of the product.
serviceItem.deliveryInstructions
Used only for experiences.
serviceItem.deliveryInstructions. instructions.remarks Additional information and instructions. Array of items.
serviceItem.deliveryInstructions. * (Viator Specifies whether travelers can choose a custom pick-up or
allowCustomTravelerPickup only) meeting location for this product.
serviceItem.deliveryInstructions. pickupOptionType Specifies the type of traveler pickup option.
 "PICKUP_EVERYONE" (the supplier will pick up all

Copyright © 2024 JR Technologies, All Rights Reserved. Page 29 of 51


Confidential - Not for distribution

customers from their respective locations)


 "PICKUP_AND_MEET_AT_START_POINT" (the supplier will
pick up all customers from their respective locations; or,
customers can make their own way to the start point)
"MEET_EVERYONE_AT_START_POINT" (all customers must make
their own way to and meet at the start point)
How long prior to the product departure time will traveler-pickup
serviceItem.deliveryInstructions.
occur (in minutes).
minutesBeforeDepartureTimeFor Pickup
Used only for experiences.
* (Experia
serviceItem.room The details of a room service. Used only for properties.
only)
serviceItem.room.name * The name of the room
serviceItem.room.roomId * Expedia’s room Id
Room amenities (room level).
serviceItem.room.amenityList
Returned only in the getTravelOfferDetailsRS.
serviceItem.room.amenityList.id Amenity id
serviceItem.room.amenityList.name Amenity name
serviceItem.room.amenityList.category Amenity category
serviceItem.room.dimensionList Dimension details of the room. Array of items.
serviceItem.room.dimensionList. dimCategory Type of dimension, values {"square_meters", "square_feet"}
serviceItem.room.dimensionList. dimValue Dimension value, e.g. 85
serviceItem.room.dimensionList. UOM Unit of measurement. E.g. “m2”, “ft2”
serviceItem.room.maxOccupants Total maximum occupancy allowed for the room.
serviceItem.vehicle * (Avis only) The details of a vehicle service. Used only for cars
serviceItem.vehicle.name Name of the vehicle
serviceItem.vehicle.make Make of the vehicle
serviceItem.vehicle.model Model of the vehicle
The vehicle class code used to identify individual cars and trucks
serviceItem.vehicle. vehicleClassCode
according to size, axle numbers and type
serviceItem.vehicle. vehicleClassName The name of the vehicle class
serviceItem.vehicle. vehicleTransmission The transmission of the vehicle
serviceItem.vehicle.mpg Vehicle’s miles per gallon
serviceItem.vehicle.sippCode Standard Interline Passenger Procedure (SIPP) code of the vehicle

Copyright © 2024 JR Technologies, All Rights Reserved. Page 30 of 51


Confidential - Not for distribution

serviceItem.vehicle.fuel Vehicle’s fuel, e.g. “Petrol”, “Diesel”


General structure that holds product's attributes. Array of items.
serviceItem.vehicle.attributeList Each ProductAttribute object is defined in the individual objects
below (ref Error: Reference source not found)
* (Viator
serviceItem.experience The details of an experience service. Used only for experiences.
only)
serviceItem.experience. productId * Unique identifier for this product as returned by Viator.
serviceItem.experience. name Name of this product
General structure that holds product's attributes. Array of items.
serviceItem.experience. attributeList * Each ProductAttribute object is defined in the individual objects
below (ref Error: Reference source not found)
List of tag descriptions.
serviceItem.experience.tagList *
Used only for experiences in the getTravelOfferDetailsRS.
serviceItem.experience.tagList.id * Tag id
serviceItem.experience.tagList.name * Tag name
serviceItem.experience.tagList.category Tag category
serviceItem.experience. experienceDetails.type * The type of the experience service. There are 5 types:
i. STANDARD: a tour-based product (focused on visiting and
viewing) that occurs at a single location or proceed
through a set of locations on a single day
ii. MULTI_DAY_TOUR: a tour or activity that occur over
multiple days, and therefore include a breakdown of the
itinerary for each day of the tour, as well as extra
information about food and accommodation
iii. ACTIVITY: an activity-based product (focused on the
activity rather than the location) that occurs at a single
location or proceeds through a set of locations on a single
day
iv. HOP_ON_HOP_OFF: a tour that operates continuously,
such as a bus tour, wherein passengers can use their ticket
to board and alight as they please at any of the stops along
the route
v. UNSTRUCTURED: a text-based description for products
that their suppliers have not yet upgraded them to

Copyright © 2024 JR Technologies, All Rights Reserved. Page 31 of 51


Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 32 of 51


Confidential - Not for distribution

Details about this Point Of Interest. The OfficeLocation object is


serviceItem.experience. experienceDetails.
* defined in the individual objects below (ref Error: Reference source
experienceDayList. itineraryItems.location
not found)
General structure that holds product's attributes. The array will
serviceItem.experience. experienceDetails. always contain one single item. Each ProductAttribute object is
experienceDayList. itineraryItems.attributeList defined in the individual objects below (ref Error: Reference source
not found)
Accommodation available for this day of this tour. Array of items.
serviceItem.experience. experienceDetails. Used only in MULTI_DAY_TOUR (with multiple DayItems) products.
experienceDayList. itineraryItems.accommodationList The OfficeLocation object is defined in the individual objects below
(ref Error: Reference source not found)
serviceItem.experience. experienceDetails. Food and drinks available for this day of this tour. Array of items.
experienceDayList. itineraryItems.foodMenus Used only in MULTI_DAY_TOUR (with multiple DayItems) products.
Dish type.
serviceItem.experience. experienceDetails. Values { "BREAKFAST", "LUNCH", "DINNER", "SNACKS",
experienceDayList. itineraryItems.foodMenus.dishType "BOTTLED_WATER", "COFFEE_AND_TEA", "SODA_POP",
"ALCOHOLIC_BEVERAGES", "REFRESHMENTS"}
serviceItem.experience. experienceDetails.
Name of the dish.
experienceDayList. itineraryItems.foodMenus.dishName
serviceItem.experience.
experienceDetails .experienceDayList. Description of the dish.
itineraryItems.foodMenus. dishDescription
offers.serviceList.experience.
* Details of the activity, used only in ACTIVITY products.
experienceDetails.activityItem
Location and description of this activity item. The OfficeLocation
serviceItem.experience. experienceDetails.activityItem.
* object is defined in the individual objects below (ref Error:
activityLocation
Reference source not found)
serviceItem.experience. experienceDetails.activityItem.
Food menus for this activity
foodMenus
serviceItem.experience. experienceDetails.activityItem. Dish type.
*
foodMenus.dishType Values { "STARTER", "MAIN", "DESSERT"}
serviceItem.experience. experienceDetails.activityItem.
* Name of the dish
foodMenus.dishName
serviceItem.experience. experienceDetails.activityItem. Description of the dish

Copyright © 2024 JR Technologies, All Rights Reserved. Page 33 of 51


Confidential - Not for distribution

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”

Copyright © 2024 JR Technologies, All Rights Reserved. Page 34 of 51


Confidential - Not for distribution

priceDetail. passengerPrice.unitPrices.unitPrice * Price information for each unit


priceDetail. passengerPrice. unitPrices.unitPrice. Total amount
totalAmount.amount.intValue Used only for experiences
Decimal points, e.g. 120.35:
priceDetail. passengerPrice. unitPrices.unitPrice. amount = 12035
totalAmount.amount.scale scale = 2
Used only for experiences
priceDetail. passengerPrice. unitPrices.unitPrice. Currency code
totalAmount.currencyCode Used only for experiences
priceDetail. passengerPrice. unitPrices.unitPrice.
* Base amount
baseAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. passengerPrice. unitPrices.unitPrice.
* amount = 12035
baseAmount.amount.scale
scale = 2
priceDetail. passengerPrice. unitPrices.unitPrice.
* Currency code
baseAmount.currencyCode
priceDetail. passengerPrice. unitPrices.unitPrice.
* Total tax amount
totalTaxAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. passengerPrice.unitPrices.unitPrice.
* amount = 12035
totalTaxAmount.amount.scale
scale = 2
priceDetail. passengerPrice.unitPrices.unitPrice.
* Currency code
totalTaxAmount.currencyCode
priceDetail. passengerPrice.price * Price information for the group. Array of items.
priceDetail. passengerPrice.price.priceId * Unique Price Id within an offer
priceDetail. passengerPrice.price.
* Total amount
totalAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. passengerPrice.price.
* amount = 12035
totalAmount.amount.scale
scale = 2
priceDetail. passengerPrice.price.totalAmount.
* Currency code
currencyCode
priceDetail. passengerPrice.price.
Base amount
baseAmount.amount.intValue

Copyright © 2024 JR Technologies, All Rights Reserved. Page 35 of 51


Confidential - Not for distribution

Decimal points, e.g. 120.35:


priceDetail. passengerPrice.price.
amount = 12035
baseAmount.amount.scale
scale = 2
priceDetail. passengerPrice.price.baseAmount.
Currency code
currencyCode
priceDetail. passengerPrice.price.
Total tax amount
totalTaxAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. passengerPrice.price.
amount = 12035
totalTaxAmount.amount.scale
scale = 2
priceDetail. passengerPrice.price.
Currency code
totalTaxAmount.amount. currencyCode
priceDetail. packageTotalPrice.taxDetails Array of items. Tax breakdown. Used only for avis.
priceDetail. packageTotalPrice.taxDetails.taxName Name of the tax. E.g. "Local Tax”
priceDetail.
Tax amount
packageTotalPrice.taxDetails.taxAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. packageTotalPrice.taxDetails.
amount = 12035
taxAmount.amount.scale
scale = 2
priceDetail. packageTotalPrice.taxDetails.
Currency code
taxAmount.currencyCode
priceDetail. passengerPrice.price.surcharges Any additional surcharges (array)
priceDetail. passengerPrice.price.surcharges. feeCode Fee designator
priceDetail. passengerPrice.price.surcharges.
Fee amount
amount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. passengerPrice.price.surcharges.
amount = 12035
amount.amount.scale
scale = 2
priceDetail. passengerPrice.price.surcharges.
Currency code
amount.currencyCode
Description of the price, e.g. “Pay Later”.
priceDetail. passengerPrice.price.remarks.title
Used only for cars.
priceDetail. packageAttributes * Package information, e.g. hotel room package
priceDetail. packageAttributes.packageId * Unique Package Id within a price applicability

Copyright © 2024 JR Technologies, All Rights Reserved. Page 36 of 51


Confidential - Not for distribution

Name of the product option.


priceDetail. packageAttributes.name
Used only for experiences.
Vehicle rate code (for cars).
priceDetail. packageAttributes.code * (Avis only) Identification code for the product option (for experiences).
Used only for cars and experiences.
Description of the product option. The array will always contain
priceDetail. packageAttributes.remarks.title one single item for ancillaries.
Used only for experiences.
* (Expedia
priceDetail. packageAttributes.packageRules and Viator Contain the cancellation policies. Array of items.
only)
priceDetail. packageAttributes.packageRules.
* Unique Package Rule Id within a price applicability
packageRuleId
When ruleTypeInd is true, and packageType is cancel, then
cancellation is possible.
priceDetail. packageAttributes.packageRules. ruleTypeInd *
When ruleTypeInd is false, and packageType is cancel, then
cancellation is not possible, meaning no refund will be given.
priceDetail. packageAttributes.packageRules. Type of this package rule. E.g. for cancellation rule, it will be
*
packageType “cancel”
priceDetail. packageAttributes.packageRules. Effective date and time of cancellation penalty, e.g. “2021-04-
startDateTime. formattedDateTime 01T15:00:00.000+02:00”
priceDetail. packageAttributes.packageRules. End date and time of cancellation penalty, e.g. “2021-04-
endDateTime. formattedDateTime 01T15:00:00.000+02:00”
priceDetail. packageAttributes.packageRules. Number of nights charged for as penalty.
chargeableUnit Used only for properties.
priceDetail. packageAttributes.packageRules.
Fee amount
feeAmount.amount.intValue
Decimal points, e.g. 120.35:
priceDetail. packageAttributes.packageRules.
amount = 12035
feeAmount.amount.scale
scale = 2
priceDetail. packageAttributes.packageRules.
Currency of the amount object
feeAmount.currencyCode
Description of the package rule.
priceDetail. packageAttributes. packageRules.remark
Used only for experiences.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 37 of 51


Confidential - Not for distribution

priceDetail. packageAttributes.packageRules. Description of this product's cancellation policy.


ruleFulltextRef Used only for cars and experiences.
Number of days prior to the product start time that this policy
priceDetail. packageAttributes.packageRules. * (Viator
window ends.
dayRangeMin only)
Used only for experiences.
Percentage of total price charged for as penalty (if cancelled within
* (Viator
priceDetail. packageAttributes.packageRules. percent the specified time window).
only)
Used only for experiences.
Array of the available language guides for this product option.
priceDetail. packageAttributes.mediaList
Used only for experiences.
priceDetail. packageAttributes.mediaList.title Type of language guide; one of:
 “GUIDE” – human tour guide
* (Viator
 “AUDIO” – audio guide
only)
 “WRITTEN” – printed guide
Used only for experiences.
Selected language code for this guide.
priceDetail. packageAttributes.mediaList. mediaList.type
Used only for experiences.
General structure that holds package's attributes. The array will
always contain one single item for ancillaries. Each
priceDetail. packageAttributes.attributes
ProductAttribute object is defined in the individual objects below
(ref Error: Reference source not found)
Bed group information of the room. Array of items.
priceDetail. packageAttributes.beds
Used only for properties.
priceDetail. packageAttributes.beds. bedGroupId Expedia’s Bed Group Id
priceDetail. packageAttributes.beds.title Description of the bed group
priceDetail. packageAttributes.beds. configuration The bed configuration for a given room. Array of items.
priceDetail. packageAttributes.beds. configuration. type The type of bed, e.g. “FullBed”
priceDetail. packageAttributes.beds. configuration. size The size of the bed, e.g. “Full”
priceDetail. packageAttributes.beds. configuration.
The number of bed(s), e.g. 2
quantity

Media
Media Required Description

Copyright © 2024 JR Technologies, All Rights Reserved. Page 38 of 51


Confidential - Not for distribution

title Title of the image


Populated with value 1, if this is a “hero” image (for properties) or a “cover” image (for
mediaSequence
experiences); not returned otherwise.
mediaList Array of different dimensions of the same image
Size of the image. Used only for properties and experiences.
mediaList.type For properties, e.g. “350px”
For experiences: width x height, e.g. "60x40"
The request method used to access the link, e.g. “GET”
mediaList.method
Used only for properties.
mediaList.href The URL for the link

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 39 of 51


Confidential - Not for distribution

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"

 for /itineraryItems: "passByWithoutStopping", "admissionIncluded"

attributePairs.value Attribute value for experiences


 for “skipTheLine”, “privateTour” and "requiresAdultForBooking": “true”, “false”
 for "minTravelersPerBooking" and "maxTravelersPerBooking": the respective
value as a string
 for "passByWithoutStopping": “true”, “false”
 for "admissionIncluded": “YES”, “NO”, “NOT_APPLICABLE”

Copyright © 2024 JR Technologies, All Rights Reserved. Page 40 of 51


Confidential - Not for distribution

 for “cancelIfBadWeather", "cancelIfInsufficientTravelers" and "pickupIncluded":


“true”, “false”
 for " ticketInfo": the respective description

Attribute value for vehicles


 for "unlimited_distance" and “under_age_fee_applied”: “true”, “false”
 for "distance_unit", "distance_covered", "distance_overage": the respective
value as a string

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 41 of 51


Confidential - Not for distribution

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.

String indicating the fee waiver reason. It must be set if “isWaived”


surcharges.waiverReason parameter is true.

loyaltyAmount.amount.intValue Amount expressed in Miles


loyaltyAmount.amount.scale Decimal points, e.g. 12035:
amount = 12035
scale = 0
loyaltyAmount.currencyCode For Amounts expressed in Miles 999 will be used as currency code
earnedPoints.amount.intValue Amount that will be earned/collected expressed in Miles
earnedPoints.amount.scale Decimal points, e.g. 12035:
amount = 12035
scale = 0

Copyright © 2024 JR Technologies, All Rights Reserved. Page 42 of 51


Confidential - Not for distribution

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 43 of 51


Confidential - Not for distribution

payWithCC.cardType * Specifies the cardType. Values TBD.


payWithCC.cardToken * Value of the JTI.
payWithCC.expiryDate.year * Four-digit year in which the payment card expires.
payWithCC.expiryDate. monthNumeric * Two-digit month in which the payment card expires.
payWithCC.secureInstruction.
* (3DS flow) The URL of the return page.
terminationUrl
payWithCC.secureInstruction. JWT used to authenticate the consumer with the authentication provider.
payerAythRequest Used only in the response.
The fully qualified URL that the merchant uses to post a form to the cardholder
payWithCC.secureInstruction.
in order to complete the Consumer Authentication transaction.
redirectionUrl
Used only in the response.
Unique transaction id for internal use.
payWithCC.secureTrxResult.trxId
Used only in the response.
Total amount.
payWithCC. amount.amount.intValue * If it is positive, then amount will be debided.
If it is negative, then amount will be refunded.
Decimal points, e.g. 120.35:
payWithCC. amount.amount.scale * amount = 12035
scale = 2
payWithCC. amount.currencyCode * Currency code.
payWithCC.person * Payer details
payWithCC.person.firstName * First name of the payer.
payWithCC.person.familyName * Last name of the payer.
payWithCC.person.email.emailAddress * Email address.
payWithCC.person.phone * Phone details. The array will always contain one single item for ancillaries.
payWithCC.person.phone.countryCode Country code for the phone number.
payWithCC.person.phone. phoneNumber * Phone number.
payWithCC.person.address * Address details. The array will always contain one single item for ancillaries.
payWithCC.person.address.cityName * City name.
payWithCC.person.address. countryCode * Country code.
payWithCC.person.address.zipCode * Zip or postal code.
payWithCC.person.address.
* State or province.
stateOrProvince

Copyright © 2024 JR Technologies, All Rights Reserved. Page 44 of 51


Confidential - Not for distribution

payWithCC.person.address.streetAddress * Street addresses array.

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 45 of 51


Confidential - Not for distribution

CreateOrderRQ and OrderViewRS – Mapping with Cybersource attributes


Export compliance Bundle- Bundle-
CreateOrderRQ/ChangeOrderRQ SetUp RQ Capture RQ
validation RQ enroll RQ validate RQ

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.

Copyright © 2024 JR Technologies, All Rights Reserved. Page 46 of 51


Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 47 of 51


Confidential - Not for distribution

payWithCC.person.address.
countryCode
payWithCC.person.address.zipCode
payWithCC.person.address.
stateOrProvince
payWithCC.person.address.streetAd
dress

OrderViewRS – Mapping with Cybersource attributes


Export compliance Bundle- Bundle-
OrderViewRS SetUp RS Capture RS
validation RS enroll RS validate RS

typeCode
paymentId
statusCode
paymentApplicabilities.
bundleSelectionRefs
is3DS
vendorTrxId
processor
payWithMiles
payWithMiles.loyaltyAccount.
accountNumber
payWithMiles
amount.amount.intValue
payWithMiles amount.amount.scale
payWithMiles amount.currencyCode

Copyright © 2024 JR Technologies, All Rights Reserved. Page 48 of 51


Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 49 of 51


Confidential - Not for distribution

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

Copyright © 2024 JR Technologies, All Rights Reserved. Page 50 of 51


Confidential - Not for distribution

Copyright © 2024 JR Technologies, All Rights Reserved. Page 51 of 51

You might also like