Reservation Retrieve API Reference
Get |
book/reservation/reservations/{LocatorCode} or book/reservation/reservations/?identifierType={ticketnumber} For {LocatorCode} send the locator code of the reservation to retrieve (returned in the workbench commit in Confirmation/Locator/value). For {ticketnumber} send the ticket number of the reservation to retrieve. Either the ticket number or locator code is required.
Base path: Pre-production https://api.pp.travelport.com/11/air/ Production https://api.travelport.com/11/air/ |
Related Content: Reservation Retrieve Guide, Booking Guide, Booking Guide for Air, Hotel, & Car Content, Ticketing Guide
Retrieve details about a held booking, or reservation. While a reservation refers to a held booking that has not been ticketed, the reservation code persists after ticketing to provide the booking records. Once a reservation has been ticketed, Reservation Retrieve returns both booking and ticketing details, with the ticket number in the Document/Number object.
A Ticket Retrieve request can also be used to retrieve any ticketed itinerary.
Hotel and Car Content with Air Bookings
AirReservation 23.11.29 updated the existing Reservation Retrieve and Create Post-Commit Workbench responses to return by default any hotel or car segments along with air for any reservation that includes hotel or car bookings. Segments must have been booked with the JSON Hotel APIs or JSON Car APIs (full release pending), or a terminal program.
Support for modifying and servicing these bookings is planned for future releases. See the Booking Guide for Air, Hotel, & Car.
Request
Also see Authorization and Common Headers.
The Reservation Retrieve supports the optional return of long fare rules. To request long fare rules, send the fareRuleRetrievalType header parameter with the value long.
Query Parameters
Parameter | Description | Required/Optional |
---|---|---|
unnamed parameter |
Sends the record locator to retrieve reservation details. Sends the ticket number to retrieve reservation details for a reservation or ticketed itinerary. The response is the same as for a reservation retrieve request sending the ticket number. Example:
|
Either ticket number or record locator is required |
identifierType |
AirReservation 23.11.26 and later.
GDS only; not supported for NDC.
Sends the ticket number to retrieve reservation details for a ticketed itinerary. The response is the same as for a reservation retrieve request sending the record locator. Example:
|
Either ticket number or record locator is required |
The detail view returns any document override, accounting, historical, and DOCI remarks added to the booking, and any custom rules added to a booking. Supported values:
|
Optional |
|
viewBrandCompleteInfoInd |
GDS only; not supported for NDC.
Request the return of brand attributes in the reservation retrieve. Supported values:
|
Optional |
viewBaggageDetailInd
|
GDS only; not supported for NDC.
Request the return of baggage dimension and fee details in the reservation retrieve. Supported values:
|
Optional |
fareRuleType |
AirReservation 24.11.44 and later. GDS only; not supported for NDC.
Enumeration for the type of fare rules requested. If brand pricing was requested in a preceding AirPrice request (returnBrandedFaresInd=true), you can send fareRuleType with the value Structured to return structured fare rules; e.g., ?fareRuleType=Structured |
Optional |
fareRuleCategories |
AirReservation 24.11.44 and later. GDS only; not supported for NDC.
Enumeration. When requesting structured fare rules with the fareRuleType query parameter, you can also send the optional fareRuleCategories query parameter to specify the category of structured fare rules to return. Supported values are Supported values:
If you request structured fare rules but do not specify a fare rule category, all rules in these categories are returned.
|
Optional |
Request Body
No message payload.
Response
The information returned in the Reservation Retrieve response varies depending on the information that has been added to the reservation at the time of retrieve, whether the reservation has been ticketed, and whether the reservation was created outside of the Travelport JSON APIs.
The basic ReservationResponse detailed here is returned for Reservation Retrieve and several other requests, including:
-
Create post-commit workbench (response is same as for Reservation Retrieve plus a workbench identifier)
-
Commit workbench (largely similar but some objects may vary)
The table below lists the primary objects returned in the response. See the following tables for additional details.
Object |
Description |
---|---|
ReservationResponse |
Top level object for response. Includes Reservation and Result objects. |
Reservation |
Top-level object for reservation details. Depending on the information in the reservation, may include Identifier, Offer, Traveler, Receipt, ReservationComment, PrimaryContact, CustomAuxiliarySegment, and ReservationDisplaySequence objects. Key value pairs:
|
Identifier |
Identifier for response transaction. Key value pairs:
|
Offer |
Array. Each instance returns details about one offer on the reservation. An offer could be the flight/s, seats, or a paid ancillary. With AirReservation 23.11.29 and later, additional instances of Offer are returned by default if the booking includes hotel and/or car segments. The hotel and/or car segments must have been booked with the JSON Hotel APIs or JSON Car APIs (full release pending), or a terminal program. See the Booking Guide for Air, Hotel, & Car. See Offer objects table below. |
Traveler |
Array. One instance for each unique traveler on the reservation. See Traveler objects table below. |
Receipt |
Array. One instance for each receipt confirmation. See Receipt objects table below. |
ReservationComment |
Any remarks added to the reservation. See ReservationComment table below. |
PrimaryContact |
Any primary contact details for the reservation. See table below. |
CustomAuxiliarySegment |
AirReservation 23.11.39 and later.
Returns any auxiliary segments on a booking. Auxiliary segments can include air taxi, cars, hotels, surface transportation, and tours. TUR (tour) or SUR (surface) segments are commonly used for rail content, but can be used for other ground transportation such as taxis, surface transportation and tours. This content cannot be booked in the JSON APIs but is returned in the reservation retrieve when booked through another Travelport platform or an external provider. Includes the following objects:
Show Example CustomAuxiliarySegment
|
ReservationDisplaySequence |
AirReservation 23.11.29 and later.
Returned to provide the chronological (by date) order of all offers on the booking. If a booking includes car and/or hotel segments along with air segments, includes those offers. Returned for all reservations starting with AirReservation 23.11.29, even if hotel/car content is not on the booking. See Booking Guide for Air, Hotel, & Car for more details. Includes DisplaySequence object. May include AuxiliaryDisplaySequence. |
|
One instance for each air, hotel, or car offer on the booking. Includes the following:
|
|
AirReservation 23.11.39 and later.
Returned if a booking includes auxiliary segments per above. One instance for each tour or surface segment on the booking. Includes the following:
Show Example ReservationDisplaySequence excerpt with CustomAuxiliarySegment
|
The table below details the Object offer returned in the response. See the following tables for additional details.
Offer - primary objects
Object |
Description |
---|---|
Offer |
Array. Each instance returns details about one offer on the reservation. An offer could be flight/s on the itinerary, seats, or a paid ancillary. Key value pair:
Includes Identifier, Product, Price, TermsAndConditionsFull. A seats offer returns seats details in the following:
Hotel and Car Content with Air BookingsAirReservation 23.11.29 updated the existing Reservation Retrieve and Create Post-Commit Workbench responses to return by default any hotel or car segments along with air for any reservation that includes hotel or car bookings. Segments must have been booked with the JSON Hotel APIs or JSON Car APIs (full release pending), or a terminal program. Support for modifying and servicing these bookings is planned for future releases. See the Booking Guide for Air, Hotel, & Car. Net Fare DataGDS only, not supported for NDC For any fare that has a private fare component, the Offer object in the reservation retrieve includes the objects NetFareInfo and FareBreakdownConstruction. The following additional details are returned in these objects in Offer:
If there are multiple travelers with multiple PTCs, multiple fare quotes are returned. To return net fare data the Search request must have included in PricingModifiersAir/FareSelection/fareType a value that supports net fares, either NetFaresOnly or AllFares. |
Product |
Array. Each instance returns details for one product on this offer. In the JSON APIs a product is one leg of the air itinerary, or the hotel or car segment. See Product table below. |
Price |
Total price and price breakdown for this offer. See Price table below. |
TermsAndConditionsFull |
Terms and conditions for this offer. See TermsAndConditionsFull table below. |
ReferenceList |
May be returned to consolidate common details across flights, such as terms and conditions or brand information. See the Search API Reference for ReferenceList details. |
Offer/Product objects for @type ProductAir (flights)
Each instance of Product returns details for one product on this offer. In the JSON APIs a product is one leg of the air itinerary, or the hotel or car segment for multi-content bookings. The following table outlines objects in Product with @type ProductAir for flights.
Object | Description |
---|---|
Product |
Array. One instance for each product id. Not all objects in this table may be returned for all bookings. Key value pairs:
Includes Identifier, FlightSegment, and PassengerFlight objects. AirReservation 23.11.29 and later. For an itinerary with outbound and inbound flights occurring on the same day, the Reservation Retrieve returns the outbound flights as one product and the inbound flights as a separate product. This supports any subsequent change to one segment of the itinerary. Previously, all segments were returned as one product.
|
Identifier |
Identifier information for this instance of Product.
|
FlightSegment |
Array. One instance for each segment in the product. Key value pairs:
Includes Flight object. AirReservation 21.11.8 and later: For any fare that has a private fare component, and when net fares were requested in the search, the Reservation Retrieve returns PassengerFlight/carCode (Commercial Airline Agreement number) and /valueCode (value code for the fare). GDS only, not supported for NDC |
Flight |
Array. One instance for each flight in the product. Key value pairs:
Includes Flight, Departure, and Arrival objects. |
Departure |
Departure details. Key value pairs are the location, date, time, and terminal of departure. |
Arrival |
Arrival details. Key value pairs are the location, date, time, and terminal of arrival. |
IntermediateStop |
Returned if the flight has a technical stop but does not incur a change in flight number. GDS only; not returned for NDC. Key value pairs:
|
PassengerFlight |
Returns PTC and class/fare information for each PTC. One instance per PTC. Key value pairs:
Includes the FlightProduct object. |
FlightProduct |
Key value pairs:
|
Brand |
The brand reference id for the fare. Key value pairs:
|
Optional Brand Attributes
Array of features that are included, chargeable, or not offered for this brand. Contains one or more instances of the two paired key value pairs classification and inclusion:
The following subattributes are returned if filed by the carrier:
The following Brand subattributes are returned if filed by the carrier:
|
Offer/Price objects
Object | Description |
---|---|
Price |
Returns price details for the instance of Offer in which it is returned. Key value pair:
Includes Base, TotalTaxes, TotalFees, TotalPrice, CurrencyCode, and PriceBreakdown objects. Price is a common object in the model. Not all objects in this table may be returned in this specific response.
These objects apply only to airfare prices. In a Reservation Retrieve, Price objects for other types of offers on a booking, such as seats and ancillaries, generally include only the CurrencyCode, Base, and TotalPrice objects.
|
CurrencyCode |
The currency in which the price is returned. Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport. Key value pairs:
|
Base |
Number. Base price for all passengers with this PTC before taxes and fees. |
TotalTaxes |
Number. Sum of all taxes for this price. |
TotalFees |
Sum of all fees in this price. |
TotalPrice |
Total price Base price for all passengers with this PTC including base cost, taxes, and fees. |
PriceBreakdown |
Array. Price breakdown for fare by PTC, one instance returned for each PTC type. Key value pairs:
Includes the Amount object. For GDS may return FiledAmount, FareCalculation, and/or Commission per below. For NDC may return Discount per below. Each PriceBreakdownAir object returns pricing for one passenger of a single PTC. On multi-passenger itineraries, refer to TotalPrice for a total price for the itinerary. |
Amount |
Includes CurrencyCode (same as listed above), Base, Taxes, Fees, and Total objects. |
Base |
Base cost for one passenger of this PTC type. |
Includes TotalTaxes (sum of all individual taxes) and an array of Tax objects for individual taxes. |
|
|
Sum total of all taxes for one passenger of this PTC type. |
|
Array of Tax objects for individual taxes. Key value pairs:
|
Fees or FeesDetail |
Provides breakdown of fees, if applicable. Includes TotalFees object to return sum of any fees for that PTC. May include array of Fee objects to break down individual fees. |
|
Array for individual fees, if applicable. Key value pairs:
If OB-T fees are part of the price, those are detailed here. OB-T fees are ticketing fees independent of the form of payment. They are defined by the carrier and can be based on any of multiple criteria. |
Total |
Total of base cost and all fees and taxes for one passenger of this PTC type. |
NetBaseAmount |
Net ticket data (NTD) is returned in the AirPrice, AirReservation, Exchange Search, and Reservation Retrieve responses for any fare that has a private fare component (fareType is AgencyPrivateFare). When NTD is returned, TermsAndConditionsFuill includes FareGuaranteePolicy to return the fare calculation indicator for the fare. When NTD is returned, PriceBreakdown may include NetBaseAmount. Key value pairs:
Because NDC does not support net fares, NTD is not supported for NDC.
|
FiledAmount |
AirPrice 24.11.37 and later. Returned in AirPrice only. GDS only; not supported for NDC.
Returned when the origin currency is not the same as the PCC currency to show the currency in which the base fare has been filed. The fare returned in PriceBreakdown/Amount (above) is the equivalent currency in the PCC currency. Key value pairs:
|
FareCalculation |
Returned in AirPrice, Reservation Retrieve, and Exchange Search. GDS only; not supported for NDC.
For each PTC, when available, FareCalculation returns the fare calculation ladder for all public and private fare types filed by an agency or an airline. Returned as a string with unlimited bytes. |
Surcharges |
Surcharges is returned in the Search response if surcharges apply to this offer. Includes the following: approximateInd: Surcharge amounts are approximate if true. TotalSurcharges: Monetary amount of surcharge total, up to 4 decimal places. Includes Surcharge object. Not supported for NDC. NDC does not return surcharges.
Surcharges can be omitted from the Search response with the optional excludeSurchargesInd.
|
Surcharge |
Returned in Surcharges. Key value pairs: currencyCode: Currency code surcharges are returned in. purpose: Possible values:
decimalPlace: Number of decimal places in currency. value: Amount of surcharge. |
Returned only in search responses and AirPrice. GDS only; not supported for NDC. Any commission filed by an airline in a CAT35 fare is returned in PriceBreakdownAir/Commission. The amount is either a percent of the fare component (@type CommissionPercent and the Percent object) or an amount (@type CommissionAmount with Amount @value). |
|
Discount |
Returned only in search responses. NDC only; not supported for GDS.
Returned for a fare discounted off the published price, such as a promotional discount. Not returned for privately negotiated discounts such as private fares. Key value pairs: description: Text description of this discount. currencyCode: Currency code discount is returned in. decimalPlace: Number of decimal places in the currency the discount is returned in. value: Actual amount of the discount. |
Offer/TermsAndConditionsFull objects
Object | Description |
---|---|
TermsAndConditionsFull |
Provides applicable terms and conditions. Key value pairs:
May include BaggageAllowance, ValidatingAirline, TicketingAgency, PaymentTimeLimit, Penalties, TourCodes, TextBlock, and FareRuleInfo objects. TermsAndConditionsFull is a common object in the model. Not all objects in this table may be returned in this specific response.
This table lists objects returned in TermsAndConditionsFull @type TermsAndConditionsFullAir. In a Reservation Retrieve, other types of offers on a booking, such as seats and ancillaries, return TermsAndConditionsFull with @type TermsAndConditionsFullAncillary, which generally returns only Application Limit with a value that indicates the unit represented by this quantity, see Ancillary Shop for supported values.
|
Identifier |
Internal identifier for this set of terms and conditions. Key value pairs:
|
ExpiryDate |
The date and time until which the offer is valid. |
TextBlock |
Includes TextFormatted object. |
TextFormatted |
Array. Returns free text terms and conditions. |
PaymentTimeLimit |
Returned in responses for Search, AirPrice, Exchange Search, Workbench Commit, and Reservation Retrieve responses.
The local (per the point of sale) date and time by which the offer must be ticketed. |
ExpiryDate |
Returned in the AirReservation 22.11.20 and later responses for Booking Workbench Commit and Reservation Retrieve.
The date and time until which the offer is valid. |
BaggageAllowance |
Array. If returned by the carrier, details about a specific type of baggage, or if a baggage embargo is in effect. The baggage allowance is displayed by baggage type with associated conditions (max pieces, weight, and unit of weight) and charges (fee with currency code), if applicable. Key value pairs, returned as available:
May include BaggageItem. In the Reservation Retrieve request, you can send the optional viewBaggageDetailInd query parameter (GDS only) with true to include additional baggage details in the response in TermsAndConditionsFull/BaggageAllowance.
|
BaggageItem |
As returned by the carrier, baggage allowance details. Key value pairs:
May include Measurement, BaggageFee, Text objects. |
BaggageFee |
For paid baggage, cost for this item of baggage:
|
Text |
Text string providing measurements for the allowed baggage dimension; for example, UPTO50LB/23KG AND UPTO62LI/158LCM. |
Measurement |
Measurement details for BaggageItem as applicable and available. Key value pairs:
Baggage measurements are not always returned. NDC returns quantity and measurement details for FirstCheckedBag, SecondCheckedBag and CarryOn, when returned by the NDC carrier. NDC returns measurements in structured format in the Search response when the NDC carrier returns them as structured; otherwise, the measurements are returned as a text string in the Text object above. For GDS baggage measurements are returned in Text. |
FareGuaranteePolicy |
Net ticket data (NTD) is returned in the AirPrice, AirReservation, Exchange Search, and Reservation Retrieve responses for any fare that has a private fare component (fareType is AgencyPrivateFare). When NTD is returned, TermsAndConditionsFuill includes FareGuaranteePolicy to return the fare calculation indicator for the fare. Includes Code object. Because NDC does not support net fares, FareGuaranteePolicy is not returned for NDC.
|
Code |
Returned in FareGuaranteePolicy to identify the quote type, if that information was returned by the airline. Key value pairs:
|
ValidatingAirline |
Array. Each instance lists in a nested ValidatingAirline object a carrier on which the ticket is issued. |
TicketingAgency |
If TicketingPCC was sent in an AirPrice request to override the default ticketing agency, TicketingAgency returns the PCC of the overriding agency. If no override request was made, TicketingAgency returns the default PCC. GDS only; not supported for NDC. Includes Code and ProductRef objects. |
Code |
PCC of the overriding or default ticket agency. |
ProductRef |
Product references to which this ticketing agency PCC applies. |
PricingAgency |
If PricingPCC was sent in an AirPrice request to override the default pricing agency, PricingAgency returns the PCC of the overriding agency. Not returned if no override request was made. GDS only; not supported for NDC. Includes Code object. |
Code |
PCC of any overriding pricing agency. |
The table below details the Traveler object returned in ReservationResponse.
Object |
Description |
---|---|
Traveler |
Array. Returns one instance for each passenger on the reservation. Includes all traveler information sent in the Add Traveler request and certain additional traveler details sent in Remarks. Some traveler details can also be added as part of Reservation Modify. Key value pairs:
Includes Identifier. May include PersonName, Address, Telephone, Email, CustomerLoyalty, and TravelDocument. Objects returned depend on information sent at booking for this traveler; see Add Traveler API Reference and Remarks Guide for details on additional supported objects.
All email addresses are associated with the first traveler on the reservation for GDS. NDC supports contact information for each traveler on the reservation.
|
Identifier |
System-generated traveler reference details. Key value pairs:
|
TravelerProduct |
Returned if a seat or seats were selected for this traveler. Includes OfferRef to note the seat offer reference that matches to the value in ReferenceList. |
The table below details the FormOfPayment object returned in ReservationResponse.
Object |
Description |
---|---|
FormOfPayment |
Returned if Form Of Payment (FOP) has been added to the booking. Always returned if the itinerary has been ticketed. Key value pairs:
Includes Identifier object. |
Identifier |
System-generated identifier values for the form of payment added in the booking or ticketing workbench. Key value pairs:
|
The table below details the Payment object returned in ReservationResponse. Payment is returned only for a reservation retrieve for a ticketed itinerary, as payment is sent only as part of ticketing.
Object |
Description |
---|---|
Payment |
Payment details if Payment has been added. Always returned if the itinerary has been ticketed. Key value pairs:
|
PaymentRef |
User-assigned value sent with the Add Payment request. |
Identifier |
System-generated identifier values for this payment. Key value pairs:
|
Amount |
Payment amount details. Key value pairs:
|
FormOfPaymentIdentifier |
Top level object to identify the form of payment to which this payment was charged. Includes FormOfPaymentRef and Identifier. |
FormOfPaymentRef |
User-assigned custom ID sent with the Add Form of Payment request. |
The table below details the Receipt object returned in ReservationResponse.
Receipt @type ReceiptConfirmation
Object |
Description |
---|---|
Receipt @type ReceiptConfirmation |
Array. Each instance represents the status of one reservation. Instances of Receipt @type ReceiptConfirmationapply to the booking. Includes Identifier and Confirmation. |
Identifier |
Internal system-generated identifier for this receipt confirmation. Key value pairs:
|
Confirmation |
Returned for all reservations both before and after ticketing. Confirmation details. Includes Locator. May include OfferStatus. |
Locator |
The reservation locator code issued for this booking. All bookings return this unique alphanumeric identifier. Must be sent in several other transactions. Key value pairs:
|
OfferStatus |
Returns segment confirmation details. |
StatusAir |
Confirmation details by flights. Key value pairs:
For GDS, a value in OfferStatus/StatusAir/code of either TK or UN indicates the flight has schedule change information. To accept the schedule change, send a workbench commit request with the scheduleChangeAcceptedInd indicator set to true.
For NDC, schedule changes comments are returned in ReservationComment; see the ReservationComment objects table below.
|
Receipt @type ReceiptPayment
Object |
Description |
||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Receipt @type ReceiptPayment |
Array. Each instance applies to one traveler on one ticket. Instances of Receipt @type ReceiptPaymentapply to the ticket and are returned only after an itinerary has been ticketed. Key value pairs:
Includes ReceiptRef, Identifier, OfferRef, PaymentIdentifier, and Document objects. An instance of ReceiptPayment is returned for each traveler on each ticket number. This supports returning end-to-end ticket audit information in the event of a ticket change or reissue, and supports customers in making their own back office and financial calculations.
|
||||||||||||||||||||
ReceiptRef |
Internal Identifier for receipt. |
||||||||||||||||||||
Identifier |
System-generated internal Identifier for receipt. Key value pairs:
|
||||||||||||||||||||
OfferRef |
Array. String/s with the offer reference id to which this receipt applies. |
||||||||||||||||||||
PaymentIdentifier |
Identifier for the payment used for the ticket. This is the user-assigned value sent in Add Payment. |
||||||||||||||||||||
Document |
Top level object for ticket details for one passenger. Key value pairs:
Notes on Document @type valuesAny EMDs are returned with a Document @type value of either DocumentEMD for open EMDs or DocumentEMDRefund for refunded EMDs, plus the EMD number (in Number object), the traveler to which that EMD applies (in TravelerIdentiferRef), the amount (Amount), and a description of the EMD in EMDDescription. If the ticket has been exchanged, the previous (exchanged) tickets are returned with Document @type DocumentTicketExchange. The newly issued tickets are returned with Document @type DocumentTicket. The Document @type value DocumentMCO returns the MCO number for any exchanged ticket that has an MCO associated with it. (An MCO (miscellaneous change order) is created for any exchanged ticket that has residual value remaining after the exchange.) The following Document @type values indicate a ticket status.
|
||||||||||||||||||||
Number |
Ticket number. |
||||||||||||||||||||
TravelerIdentifierRef |
Identifier for traveler on ticket. Key value pairs:
|
||||||||||||||||||||
Amount |
Details on ticket price in the following standard model objects:
|
||||||||||||||||||||
IssuingPCC |
PCC that issued the ticket. |
||||||||||||||||||||
FiledAmount |
The base amount of a ticket price or net price that is filed in local currency. Key value pairs:
|
The table below details the ReservationComment object, which is returned in ReservationResponse only when certain remarks have been added to the reservation.
Object |
Description |
---|---|
ReservationComment |
Returned only for GDS. Not supported for NDC.
If OSI, notepad, vendor, or itinerary remarks were added during the reservation workflow, those comments are returned by default in ReservationComment. Comments from carriers may also be returned in ReservationComment per the example below. Note the following:
Key value pairs:
Includes Comment object. For NDC, ReservationComment returns the comment NDC CONTENT HAS CHANGED when a schedule change has occurred. To accept the schedule change, send a workbench commit request with the scheduleChangeAcceptedInd indicator set to true.
For GDS, a value in OfferStatus/StatusAir/code of either TK or UN indicates the flight has schedule change information. See the Receipt objects table above.
Show Example ReservationComment
|
Comment |
Includes the following key value pairs:
|
The table below details the PrimaryContact object returned in ReservationResponse. PrimaryContact is returned only when primary contact details were sent in the Add Traveler during booking. Some traveler details can also be added as part of Reservation Modify.
Object |
Description |
---|---|
PrimaryContact |
Primary contact details. Key value pairs:
|
TravelerIdentifier |
Top level object. |
Identifier |
Key value pairs:
|
Multi-Content Bookings with Hotel and Car
Mutli-content bookings include air and hotel and/or car content. The booking details are generally the same as air-only bookings, with addition of an instance of Offer/Product with @type ProductHospitality for hotel content and/or @type ProductVehicle for car content. The tables below outline the Product objects for this type of content. Price details also differ from air prices and are listed below. See Booking Guide for Air, Hotel, & Car for details and examples.
Offer/Product and Price objects for hotel content
Each instance of Product returns details for one product on this offer. For multi-content bookings, the JSON APIs return a hotel booking in one instance of Offer/Product. The following table outlines objects in Product with @type ProductHospitality for hotel content.
Object | Description |
---|---|
Product |
Array. One instance for each product on the booking. Hotel content is returned with @type ProductHospitality. Key value pairs:
Includes Identifier, Quantity, PropertyKey, and DateRange objects. |
Identifier |
Identifier information for this instance of Product.
|
Quantity |
Number of rooms in Product. |
PropertyKey |
Property code details in the following key value pairs:
|
DateRange |
Check-in and -out dates. Key value pairs:
|
Object | Description |
---|---|
Price |
Price details for hotel segment. Includes CurrencyCode, TotalPrice, and PriceBreakdown objects. |
CurrencyCode |
Currency code for this price.
|
PriceBreakdown |
Hotel segment price breakdown. Key value pair:
The information returned in PriceBreakdown can vary by provider and location. Key value pairs:
If roomPricingType = Per night, the amounts in PriceBreakdown apply to a nightly rate, and the NightlyRate object is returned:
If roomPricingType = Per stay, the amounts in PriceBreakdown apply to the entire hotel stay, and Description is returned:
|
Amount |
Amount for hotel segment.
CurrencyCode: Same as above. TotalRate: Total for hotel segment, either per night or per stay per above. |
Object | Description |
---|---|
Price |
Price of car offer. Includes CurrencyCode and PriceBreakdown objects. |
CurrencyCode |
Currency code for this price.
|
TotalPrice |
Number. Total price of hotel segment. Includes PriceBreakdown. |
RateDistance |
Rate costs by distance:
|
ApproximateRate |
Vehicle rate. |
BaseRate |
Base vehicle rate before taxes and fees. |
Offer/Product and Price objects for car content
Each instance of Product returns details for one product on this offer. For multi-content bookings, the JSON APIs return a car booking in one instance of Offer/Product. The following table outlines objects in Product with @type ProductVehicle for car content.
Object | Description |
---|---|
Product |
Array. One instance for each product on the booking. Car content is returned with @type ProductVehicle. Key value pairs:
Includes Identifier, Quantity, and Vehicle objects. |
Identifier |
Identifier information for this instance of Product.
|
Quantity |
Number of cars in Product. |
Vehicle |
Vehicle details in the following key value pairs:
Includes VehicleMakeModel, TransmissionTypeCode, VehicleCategoryCode, FuelTypeCode, VehicleSizeCode, and VehicleDateLocation objects. |
VehicleMakeModel |
Vehicle make and model codes:
|
TransmissionTypeCode |
For this and the following rows, for vehicle category, type, transmission, and fuel type codes, see the ACRISS Car Classification codes.
Vehicle transmission type details:
|
VehicleCategoryCode |
Vehicle category details:
|
FuelTypeCode |
Vehicle fuel type details:
|
VehicleSizeCode |
Vehicle category details:
|
VehicleDateLocation |
Pickup and dropoff details. Includes RentalPickup and RentalReturn objects. |
RentalPickup |
Details about the rental pickup.
|
RentalReturn |
Details about the rental dropoff.
|
Object | Description |
---|---|
Price |
Price of car offer. Includes CurrencyCode and PriceBreakdown objects. |
CurrencyCode |
Currency code for this price.
|
PriceBreakdown |
Vehicle price breakdown. Includes RateDistance and ApproximateRate objects. |
RateDistance |
Rate costs by distance:
|
ApproximateRate |
Vehicle rate. |
BaseRate |
Base vehicle rate before taxes and fees. |
Example Request
No message payload.
Example Response
The objects and data returned in a reservation retrieve varies according to the information present in the reservation and whether the reservation has been ticketed. Several examples follow.
Reservation Retrieve - GDS One-way Held Booking for Two Travelers with Seats
The following example shows a reservation retrieve for a one-way GDS held booking with two travelers and free seats.
{
"ReservationResponse": {
"@type": "ReservationResponse",
"Reservation": {
"@type": "Reservation",
"Identifier": {
"authority": "Travelport",
"value": "e91c8c96-5c38-44e0-8bd8-11221d5c0e05"
},
"Offer": [
{
"@type": "Offer",
"id": "offer_1",
"Identifier": {
"authority": "Travelport",
"value": "085aad4d-b594-41d5-a377-180b36155796"
},
"Product": [
{
"@type": "ProductAir",
"id": "product_1",
"Identifier": {
"authority": "Travelport",
"value": "a00a5f89-e9d4-4f6c-b6f0-7034b12aed58"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "FlightSegment_01",
"sequence": 1,
"connectionDuration": "PT40M",
"boundFlightsInd": true,
"Flight": {
"@type": "Flight",
"duration": "PT1H30M",
"carrier": "QF",
"number": "508",
"equipment": "73H",
"id": "Flight_01",
"Identifier": {
"authority": "Travelport",
"value": "8fbbf567-1bd1-4149-bac0-c1912dccec83"
},
"Departure": {
"@type": "Departure",
"location": "SYD",
"date": "2024-01-20",
"time": "08:05:00"
},
"Arrival": {
"@type": "Arrival",
"location": "BNE",
"date": "2024-01-20",
"time": "08:35:00"
}
}
},
{
"@type": "FlightSegment",
"id": "FlightSegment_02",
"sequence": 2,
"Flight": {
"@type": "Flight",
"duration": "PT2H20M",
"carrier": "QF",
"number": "615",
"equipment": "73H",
"id": "Flight_02",
"Identifier": {
"authority": "Travelport",
"value": "0a00a448-6798-4106-b576-b56c77001aca"
},
"Departure": {
"@type": "Departure",
"location": "BNE",
"date": "2024-01-20",
"time": "09:15:00"
},
"Arrival": {
"@type": "Arrival",
"location": "MEL",
"date": "2024-01-20",
"time": "12:35:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 2,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1,
2
],
"classOfService": "C",
"cabin": "Business",
"fareBasisCode": "CBQW",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "FLEXIBLE BUSINESS",
"tier": 6,
"id": "1268829"
}
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"id": "PriceDetail_1",
"CurrencyCode": {
"value": "AUD"
},
"Base": 5357.48,
"TotalTaxes": 645.84,
"TotalFees": 0,
"TotalPrice": 6003.32,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 2,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "AUD"
},
"Base": 2678.74,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 322.92,
"Tax": [
{
"currencyCode": "AUD",
"taxCode": "QR",
"value": 39.82
},
{
"currencyCode": "AUD",
"taxCode": "WG",
"value": 10.22
},
{
"currencyCode": "AUD",
"taxCode": "UO",
"value": 272.88
}
]
},
"Total": 3001.66
},
"FareCalculation": "SYD QF BNE 1131.62CBQW QF MEL 1547.12CBQW AUD2678.74END"
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAir",
"Identifier": {
"authority": "Travelport",
"value": "70eea5bb-159a-4c9a-92dc-2dabe9fccf8c"
},
"ExpiryDate": "2023-12-21T23:59:00Z",
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"SegmentSequenceList": [
1
],
"Text": [
"2PC"
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"SegmentSequenceList": [
2
],
"Text": [
"2PC"
]
}
],
"ValidatingAirline": [
{
"@type": "ValidatingAirline",
"ValidatingAirline": "QF"
}
],
"PaymentTimeLimit": "2023-12-21T23:59:00Z",
"FareGuaranteePolicy": [
{
"@type": "FareGuaranteePolicy",
"passengerTypeCodes": [
"ADT"
],
"Code": {
"value": "G"
}
}
]
},
{
"@type": "TermsAndConditionsFullAir",
"Restriction": [
{
"value": "VALID ON QF SERVICES ONLY"
}
]
}
]
},
{
"@type": "Offer",
"id": "seatOffer_Flight_01_1",
"Identifier": {
"authority": "Travelport",
"value": "7e3756df-81a6-452f-8628-6b07bc82a557"
},
"Product": [
{
"@type": "ProductAncillary",
"id": "product_seat_Flight_01_1",
"Identifier": {
"authority": "Travelport",
"value": "6da67a45-a44e-4bbd-a660-0fee4e3bd34a"
},
"Ancillary": {
"@type": "AncillaryAirSeat",
"FlightRef": [
"Flight_01"
],
"SeatAssignment": {
"@type": "SeatAssignment",
"Seat": "003A"
}
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"value": "AUD"
},
"Base": 0,
"TotalPrice": 0
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAncillary",
"ApplicationLimit": {
"value": "PassengerSegment"
}
}
]
},
{
"@type": "Offer",
"id": "seatOffer_Flight_01_2",
"Identifier": {
"authority": "Travelport",
"value": "8a761450-c484-4e71-b20a-8c2c75401c66"
},
"Product": [
{
"@type": "ProductAncillary",
"id": "product_seat_Flight_01_2",
"Identifier": {
"authority": "Travelport",
"value": "a52874b1-bb6f-400c-9739-9859d4760b13"
},
"Ancillary": {
"@type": "AncillaryAirSeat",
"FlightRef": [
"Flight_01"
],
"SeatAssignment": {
"@type": "SeatAssignment",
"Seat": "003C"
}
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"value": "AUD"
},
"Base": 0,
"TotalPrice": 0
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAncillary",
"ApplicationLimit": {
"value": "PassengerSegment"
}
}
]
}
],
"Traveler": [
{
"@type": "Traveler",
"birthDate": "1986-11-11",
"gender": "Male",
"passengerTypeCode": "ADT",
"id": "travelerRefId_1",
"Identifier": {
"authority": "Travelport",
"value": "7d323d7e-e074-4897-a42a-6b016611efcf"
},
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRST",
"Surname": "TESTLAST"
},
"Telephone": [
{
"@type": "TelephoneDetail",
"countryAccessCode": "1",
"phoneNumber": "212456121",
"id": "telephone_1",
"cityCode": "ORD",
"role": "Home"
}
],
"Email": [
{
"value": "TravelerOne@gmail.com"
},
{
"comment": "Primary Email Id",
"value": "TravelerTwo@gmail.com"
}
],
"TravelDocument": [
{
"@type": "TravelDocumentDetail",
"docNumber": "A123123",
"docType": "Passport",
"expireDate": "2033-12-20",
"issueCountry": "US",
"birthDate": "1986-11-11",
"Gender": "Male",
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRST",
"Surname": "TESTLAST"
}
}
]
},
{
"@type": "Traveler",
"birthDate": "1989-12-01",
"gender": "Male",
"passengerTypeCode": "ADT",
"id": "travelerRefId_2",
"Identifier": {
"authority": "Travelport",
"value": "d2cdd524-d8ed-4343-8698-49ccbd23752a"
},
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRSTIITESTMIDDLEII MR",
"Surname": "TESTLASTII ADT"
},
"Telephone": [
{
"@type": "TelephoneDetail",
"countryAccessCode": "1",
"areaCityCode": "909",
"phoneNumber": "212456121",
"extension": "1243",
"id": "telephone_1",
"cityCode": "ORD",
"role": "Office"
}
],
"TravelDocument": [
{
"@type": "TravelDocumentDetail",
"docNumber": "H294F45",
"docType": "Passport",
"expireDate": "2033-12-20",
"issueCountry": "IND",
"birthDate": "1989-12-01",
"Gender": "Male",
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRSTII",
"Middle": "TESTMIDDLEII",
"Surname": "TESTLASTII"
}
}
]
}
],
"TravelerProduct": [
{
"@type": "TravelerProduct",
"id": "trav_prod_1",
"TravelerRef": "travelerRefId_1",
"OfferRef": "seatOffer_Flight_01_1",
"ProductRef": "product_seat_Flight_01_1",
"ConfirmationStatusEnum": "Confirmed"
},
{
"@type": "TravelerProduct",
"id": "trav_prod_2",
"TravelerRef": "travelerRefId_2",
"OfferRef": "seatOffer_Flight_01_2",
"ProductRef": "product_seat_Flight_01_2",
"ConfirmationStatusEnum": "Confirmed"
}
],
"Receipt": [
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "640eea9a-c2ac-4827-8492-f87cb3713e43"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1G",
"creationDate": "2023-12-20",
"value": "61KP88"
},
"OfferStatus": {
"@type": "OfferStatusAir",
"StatusAir": [
{
"flightRefs": [
"Flight_01",
"Flight_02"
],
"code": "HK",
"value": "Confirmed"
}
]
}
}
},
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "cbe2e8f8-0d85-4130-bf9c-7a3aacb900d8"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1A",
"value": "5Z3V4A"
}
}
},
{
"@type": "ReceiptConfirmation",
"OfferRef": [
"seatOffer_Flight_01_1"
],
"Confirmation": {
"@type": "ConfirmationHold",
"OfferStatus": {
"@type": "OfferStatusAncillary",
"StatusAncillary": [
{
"value": "Confirmed"
}
]
}
}
},
{
"@type": "ReceiptConfirmation",
"OfferRef": [
"seatOffer_Flight_01_2"
],
"Confirmation": {
"@type": "ConfirmationHold",
"OfferStatus": {
"@type": "OfferStatusAncillary",
"StatusAncillary": [
{
"value": "Confirmed"
}
]
}
}
}
],
"ReservationDisplaySequence": {
"@type": "ReservationDisplaySequence",
"DisplaySequence": [
{
"@type": "DisplaySequence",
"displaySequence": 1,
"OfferRef": "offer_1",
"ProductRef": "product_1",
"Sequence": 1
},
{
"@type": "DisplaySequence",
"displaySequence": 2,
"OfferRef": "offer_1",
"ProductRef": "product_1",
"Sequence": 2
}
]
}
},
"Result": {
"@type": "Result",
"Warning": [
{
"@type": "Warning",
"Message": "Error in transforming Trip Container Response"
}
]
}
}
}
Reservation Retrieve - Ticketed Round-trip GDS Itinerary
The following example shows a ticketed round-trip GDS itinerary. Each instance of Product is one leg of the itinerary.
<div><pre class="line-numbers"><code class="language-json"> & </code></pre></div>
{
"ReservationResponse": {
"@type": "ReservationResponse",
"Reservation": {
"@type": "Reservation",
"Identifier": {
"authority": "Travelport",
"value": "975c4e82-bc4d-4317-b133-06691bc115d0"
},
"Offer": [
{
"@type": "Offer",
"id": "offer_1",
"Identifier": {
"authority": "Travelport",
"value": "f9c3384f-260c-4566-83d8-88feadf66815"
},
"Product": [
{
"@type": "ProductAir",
"id": "product_1",
"Identifier": {
"authority": "Travelport",
"value": "2f7e224d-4e15-4065-a352-8f6fcae4a037"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "FlightSegment_01",
"sequence": 1,
"Flight": {
"@type": "Flight",
"duration": "PT2H26M",
"carrier": "UA",
"number": "1898",
"equipment": "753",
"id": "Flight_01",
"Identifier": {
"authority": "Travelport",
"value": "91e5682b-9f45-4b51-b861-a7907e321856"
},
"Departure": {
"@type": "Departure",
"location": "DEN",
"date": "2024-01-20",
"time": "17:34:00"
},
"Arrival": {
"@type": "Arrival",
"location": "ORD",
"date": "2024-01-20",
"time": "21:00:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "K",
"cabin": "Economy",
"fareBasisCode": "KAK2AWDN",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "ECONOMY",
"tier": 2,
"id": "1269767"
}
}
]
}
]
},
{
"@type": "ProductAir",
"id": "product_2",
"Identifier": {
"authority": "Travelport",
"value": "60ab710b-4673-4f4c-9082-6c608e74bd2c"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "FlightSegment_02",
"sequence": 2,
"Flight": {
"@type": "Flight",
"duration": "PT2H49M",
"carrier": "UA",
"number": "711",
"equipment": "753",
"id": "Flight_02",
"Identifier": {
"authority": "Travelport",
"value": "06a266d7-6264-4f04-8de8-7afeba08b50b"
},
"Departure": {
"@type": "Departure",
"location": "ORD",
"date": "2024-01-27",
"time": "07:10:00"
},
"Arrival": {
"@type": "Arrival",
"location": "DEN",
"date": "2024-01-27",
"time": "08:59:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
2
],
"classOfService": "K",
"cabin": "Economy",
"fareBasisCode": "KAK2AWDN",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "ECONOMY",
"tier": 2,
"id": "1269767"
}
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"id": "PriceDetail_1",
"CurrencyCode": {
"value": "AUD"
},
"Base": 306,
"TotalTaxes": 70.2,
"TotalFees": 0,
"TotalPrice": 376.2,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 193.48
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"currencySource": "Charged",
"approximateInd": true,
"CurrencyCode": {
"decimalPlace": 2,
"value": "AUD"
},
"Base": 306,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 70.2,
"Tax": [
{
"currencyCode": "AUD",
"taxCode": "AY",
"value": 17.8
},
{
"currencyCode": "AUD",
"taxCode": "US",
"value": 23
},
{
"currencyCode": "AUD",
"taxCode": "XF",
"value": 14.2
},
{
"currencyCode": "AUD",
"taxCode": "ZP",
"value": 15.2
}
]
},
"Total": 376.2
},
"FiledAmount": {
"currencyCode": "USD",
"decimalPlace": 2,
"value": 193.48
},
"FareCalculation": "DEN UA CHI 96.74KAK2AWDN UA DEN 96.74KAK2AWDN USD193.48END"
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAir",
"secureFlightPassengerDataRequiredInd": true,
"Identifier": {
"authority": "Travelport",
"value": "b14e43a6-1de0-4d96-9167-18f8839f68dc"
},
"ExpiryDate": "2023-12-21T23:59:00Z",
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"SegmentSequenceList": [
1
],
"Text": [
"0PC"
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"SegmentSequenceList": [
2
],
"Text": [
"0PC"
]
}
],
"ValidatingAirline": [
{
"@type": "ValidatingAirline",
"ValidatingAirline": "UA"
}
],
"PaymentTimeLimit": "2023-12-22T23:59:00Z",
"FareGuaranteePolicy": [
{
"@type": "FareGuaranteePolicy",
"passengerTypeCodes": [
"ADT"
],
"Code": {
"value": "G"
}
}
]
},
{
"@type": "TermsAndConditionsFullAir",
"Restriction": [
{
"value": "NONREF/0VALUAFTDPT"
}
]
}
]
}
],
"Traveler": [
{
"@type": "Traveler",
"birthDate": "1986-11-11",
"gender": "Male",
"passengerTypeCode": "ADT",
"id": "travelerRefId_1",
"Identifier": {
"authority": "Travelport",
"value": "bb7df352-7318-4cf1-b328-cdd190edf546"
},
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRST",
"Surname": "TESTLAST"
},
"Telephone": [
{
"@type": "TelephoneDetail",
"countryAccessCode": "1",
"phoneNumber": "212456121",
"id": "telephone_1",
"cityCode": "ORD",
"role": "Home"
}
],
"Email": [
{
"value": "TravelerOne@gmail.com"
}
],
"TravelDocument": [
{
"@type": "TravelDocumentDetail",
"docNumber": "A123123",
"docType": "Passport",
"expireDate": "2033-12-20",
"issueCountry": "US",
"birthDate": "1986-11-11",
"Gender": "Male",
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRST",
"Surname": "TESTLAST"
}
}
]
}
],
"FormOfPayment": [
{
"@type": "FormOfPaymentPaymentCard",
"id": "formOfPayment_1",
"Identifier": {
"authority": "Travelport",
"value": "bcf0f6ca-8039-4c87-a50b-417f054e0b63"
},
"PaymentCard": {
"@type": "PaymentCard",
"expireDate": "1228",
"approvalCode": "123456",
"CardCode": "VI",
"CardNumber": {
"@type": "CardNumber",
"PlainText": "00004987654321098769"
}
}
}
],
"Payment": [
{
"@type": "Payment",
"id": "payment_1",
"PaymentRef": "payment_1",
"Identifier": {
"authority": "Travelport",
"value": "1c88ad02-9abe-484e-a421-2f769ce62f9f"
},
"Amount": {
"minorUnit": 2,
"value": 376.2
},
"FormOfPaymentIdentifier": {
"FormOfPaymentRef": "formOfPayment_1"
}
}
],
"Receipt": [
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "e6bd3648-1377-40a0-8c4f-8f36274137a6"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1G",
"creationDate": "2023-12-20",
"value": "61KPS3"
},
"OfferStatus": {
"@type": "OfferStatusAir",
"StatusAir": [
{
"flightRefs": [
"Flight_01",
"Flight_02"
],
"code": "HK",
"value": "Confirmed"
}
]
}
}
},
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "6ef1053e-97b3-40ee-91c6-d172f3bf759a"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "UA",
"value": "HE430C"
}
}
},
{
"@type": "ReceiptPayment",
"dateTime": "2023-12-20T22:03:00Z",
"id": "receipt_1",
"ReceiptRef": "receipt_1",
"Identifier": {
"authority": "Travelport",
"value": "3b9bc154-3a3b-417b-a3f1-a4e27740c8c2"
},
"OfferRef": [
"offer_1"
],
"PaymentIdentifier": {
"PaymentRef": "payment_1"
},
"Document": [
{
"@type": "DocumentTicket",
"Number": "0169904913776",
"TravelerIdentifierRef": {
"passengerTypeCode": "ADT",
"id": "travelerRefId_1",
"value": "caaa00cd-cb57-4c6f-8ef0-b680a132246e"
},
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "AUD"
},
"Base": 306,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 70.2,
"TaxInfo": [
{
"@type": "TaxInfo",
"TaxCode": "XF",
"Amount": 9,
"TaxBreakdown": [
{
"@type": "TaxBreakdown",
"AirportCode": "DEN",
"Amount": 4.5
},
{
"@type": "TaxBreakdown",
"AirportCode": "ORD",
"Amount": 4.5
}
]
},
{
"@type": "TaxInfo",
"TaxCode": "ZP",
"Amount": 9.6,
"TaxBreakdown": [
{
"@type": "TaxBreakdown",
"AirportCode": "DEN",
"Amount": 4.8
},
{
"@type": "TaxBreakdown",
"AirportCode": "ORD",
"Amount": 4.8
}
]
}
],
"Tax": [
{
"taxCode": "AY",
"value": 17.8
},
{
"taxCode": "US",
"value": 23
},
{
"taxCode": "XF",
"value": 14.2
},
{
"taxCode": "ZP",
"value": 15.2
}
]
},
"Total": 376.2
},
"Commission": {
"@type": "CommissionPercent",
"Percent": 1
},
"IssuingPCC": "0XB7",
"FiledAmount": {
"currencyCode": "USD",
"decimalPlace": 2,
"value": 193.48
}
}
]
}
],
"ReservationDisplaySequence": {
"@type": "ReservationDisplaySequence",
"DisplaySequence": [
{
"@type": "DisplaySequence",
"displaySequence": 1,
"OfferRef": "offer_1",
"ProductRef": "product_1",
"Sequence": 1
},
{
"@type": "DisplaySequence",
"displaySequence": 2,
"OfferRef": "offer_1",
"ProductRef": "product_2",
"Sequence": 2
}
]
}
}
}
}
Reservation Retrieve - Ticketed NDC Itinerary
The following example shows a ticketed NDC itinerary with paid seats.
{
"ReservationResponse": {
"@type": "ReservationResponse",
"Reservation": {
"@type": "Reservation",
"Identifier": {
"authority": "Travelport",
"value": "eceabe36-0512-4851-91bb-4355773313d5"
},
"Offer": [
{
"@type": "Offer",
"id": "1",
"Identifier": {
"authority": "SQ",
"value": "NjVZRU1RfFNRXzY1WUVNUV9BSVItMXxTUXxTUV82NVlFTVFfU1JWMTF8U1F8U1FfNjVZRU1RfHByb2R1Y3QxX3MxLVNFRzF8QURUOlBBWDI="
},
"Product": [
{
"@type": "ProductAir",
"totalDuration": "PT4H",
"id": "product1",
"Identifier": {
"authority": "SQ",
"value": "19b4d6c2-fc05-4057-a27a-81471e989ba7"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "s1",
"sequence": 1,
"Flight": {
"@type": "Flight",
"carrier": "SQ",
"number": "893",
"operatingCarrier": "SQ",
"operatingCarrierName": "SINGAPORE AIRLINES",
"id": "seg1",
"Identifier": {
"authority": "SQ",
"value": "2e3f7cb9-9907-4915-aeeb-64b22bd3b9b3"
},
"Departure": {
"@type": "DepartureDetail",
"terminal": "1",
"location": "HKG",
"date": "2024-01-21",
"time": "15:45:00"
},
"Arrival": {
"@type": "ArrivalDetail",
"terminal": "0",
"location": "SIN",
"date": "2024-01-21",
"time": "19:45:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "L",
"cabin": "PremiumEconomy",
"fareBasisCode": "L14HKO8PO"
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 542,
"TotalTaxes": 33.9,
"TotalFees": 0,
"TotalPrice": 635.9,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 542,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 33.9,
"Tax": [
{
"taxCode": "G3",
"value": 11.5
},
{
"taxCode": "HK",
"value": 15.4
},
{
"taxCode": "I5",
"value": 7
}
]
},
"Total": 575.9
}
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAir",
"TextBlock": [
{
"@type": "TextBlockDetail",
"description": "FARE RULES",
"title": "ATC_EXCHANGE_ELIGIBILITY",
"TextFormatted": [
{
"value": "true"
}
]
},
{
"@type": "TextBlockDetail",
"description": "FARE RULES",
"title": "ATC_REFUND_ELIGIBILITY",
"TextFormatted": [
{
"value": "true"
}
]
},
{
"@type": "TextBlockDetail",
"description": "FARE RULES",
"title": "VOID_ELIGIBILITY",
"TextFormatted": [
{
"value": "true"
}
]
}
],
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "FirstCheckedBag",
"ProductRef": [
"product1"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 1,
"Measurement": [
{
"measurementType": "Weight",
"unit": "Kilograms",
"value": 35
}
]
}
]
}
],
"FareRuleInfo": [
{
"@type": "FareRuleInfoText",
"flightsRefs": [
"s1"
],
"TextFareRule": [
{
"name": "Cancel",
"value": "Reissue/Refund minimum penalty amount after departure: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount for the ticket after departure: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount with sale currency: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund minimum penalty amount after departure no show: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount for the ticket after departure no show: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount after departure no show: USD0.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund minimum penalty amount before departure: USD150.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount for the ticket before departure: USD150.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount before departure: USD150.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund minimum penalty amount before departure no show: USD350.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount for the ticket before departure no show: USD350.00"
},
{
"name": "Cancel",
"value": "Reissue/Refund maximum penalty amount before departure no show: USD350.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount for the ticket after departure: USD0.00"
},
{
"name": "Change",
"value": "Revalidation minimum penalty amount after departure: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund minimum penalty amount after departure: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount for the ticket after departure: USD0.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount after departure: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount with sale currency: USD0.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount for the ticket after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Revalidation minimum penalty amount after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund minimum penalty amount after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount for the ticket after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount after departure no show: USD0.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount for the ticket before departure: USD50.00"
},
{
"name": "Change",
"value": "Revalidation minimum penalty amount before departure: USD50.00"
},
{
"name": "Change",
"value": "Reissue/Refund minimum penalty amount before departure: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount for the ticket before departure: USD50.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount before departure: USD50.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount before departure: USD50.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount for the ticket before departure no show: USD200.00"
},
{
"name": "Change",
"value": "Revalidation minimum penalty amount before departure no show: USD200.00"
},
{
"name": "Change",
"value": "Reissue/Refund minimum penalty amount before departure no show: USD0.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount for the ticket before departure no show: USD200.00"
},
{
"name": "Change",
"value": "Revalidation maximum penalty amount before departure no show: USD200.00"
},
{
"name": "Change",
"value": "Reissue/Refund maximum penalty amount before departure no show: USD200.00"
}
]
}
],
"Penalties": [
{
"@type": "Penalties",
"Change": [
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 50
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 50
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 50
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 50
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 50
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 200
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 200
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 200
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 200
}
}
]
},
{
"@type": "ChangePermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 200
}
}
]
}
],
"Cancel": [
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"AfterDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 0
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 150
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 150
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 150
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 350
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 350
}
}
]
},
{
"@type": "CancelPermitted",
"penaltyTypes": [
"BeforeDeparture",
"NoShow"
],
"higherPenatltyAppliesInd": true,
"ProductRefs": [
"product1"
],
"Penalty": [
{
"@type": "PenaltyAmount",
"Amount": {
"code": "USD",
"minorUnit": 2,
"value": 350
}
}
]
}
]
}
]
}
]
},
{
"@type": "Offer",
"id": "2",
"Identifier": {
"authority": "SQ",
"value": "U1FfNjVZRU1RfFNRXzY1WUVNUV9TUlYxMQ=="
},
"Product": [
{
"@type": "ProductAncillary",
"id": "product_anc_1",
"productRef": "product_anc_1",
"Identifier": {
"authority": "Travelport",
"value": "8bb9e205-2176-419a-a148-95b44b26e989"
},
"Quantity": 1,
"Ancillary": {
"@type": "AncillaryAirSeat",
"quantity": 1,
"FlightRef": [
"seg1"
],
"SeatAssignment": {
"@type": "SeatAssignment",
"Seat": "31K"
}
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 60,
"TotalTaxes": 0,
"TotalPrice": 60
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullSummary",
"id": "termsAndConditionsFull_1",
"Identifier": {
"authority": "Travelport",
"value": "379ab0e7-8c35-4d4d-b06d-bf8e5dae40cb"
}
}
]
}
],
"Traveler": [
{
"@type": "Traveler",
"birthDate": "1986-11-11",
"gender": "Male",
"passengerTypeCode": "ADT",
"id": "trav_1",
"TravelerRef": "trav_1",
"Identifier": {
"authority": "Travelport",
"value": "QURUfFBBWDI="
},
"PersonName": {
"@type": "PersonName",
"Given": "TESTFIRST",
"Surname": "TESTLAST"
},
"Telephone": [
{
"@type": "Telephone",
"countryAccessCode": "1",
"phoneNumber": "212456121",
"id": "telephone_1",
"role": "Home"
}
],
"Email": [
{
"id": "email_1",
"value": "TRAVELERONE@GMAIL.COM"
}
],
"TravelDocument": [
{
"@type": "TravelDocument",
"docNumber": "A123123",
"docType": "Passport",
"expireDate": "2033-12-21",
"issueCountry": "US",
"Gender": "Male",
"PersonName": {
"@type": "PersonName"
}
}
]
}
],
"TravelerProduct": [
{
"@type": "TravelerProduct",
"id": "trav_prod_1",
"TravelerRef": "trav_1",
"OfferRef": "2",
"ProductRef": "product_anc_1",
"ConfirmationStatusEnum": "Confirmed"
}
],
"FormOfPayment": [
{
"@type": "FormOfPaymentCash",
"id": "formOfPayment_1",
"Identifier": {
"authority": "SQ",
"value": "346c3c73-1db1-4360-a052-3532e6f92ec8"
}
}
],
"Payment": [
{
"@type": "Payment",
"id": "payment_1",
"Identifier": {
"authority": "SQ",
"value": "82c81ab9-ea57-48f1-9349-0dbac754c587"
},
"Amount": {
"code": "USD",
"value": 60
},
"FormOfPaymentIdentifier": {
"FormOfPaymentRef": "formOfPayment_1",
"Identifier": {
"authority": "SQ",
"value": "346c3c73-1db1-4360-a052-3532e6f92ec8"
}
},
"OfferIdentifier": [
{
"offerRef": "2",
"Identifier": {
"authority": "SQ",
"value": "U1FfNjVZRU1RfFNRXzY1WUVNUV9TUlYxMQ=="
}
}
]
},
{
"@type": "Payment",
"id": "payment_2",
"Identifier": {
"authority": "SQ",
"value": "1b15d460-eee4-4057-9eef-3b85c20f4dfe"
},
"Amount": {
"code": "USD",
"value": 575.9
},
"FormOfPaymentIdentifier": {
"FormOfPaymentRef": "formOfPayment_1",
"Identifier": {
"authority": "SQ",
"value": "346c3c73-1db1-4360-a052-3532e6f92ec8"
}
},
"OfferIdentifier": [
{
"offerRef": "1",
"Identifier": {
"authority": "SQ",
"value": "NjVZRU1RfFNRXzY1WUVNUV9BSVItMXxTUXxTUV82NVlFTVFfU1JWMTF8U1F8U1FfNjVZRU1RfHByb2R1Y3QxX3MxLVNFRzF8QURUOlBBWDI="
}
}
]
}
],
"Receipt": [
{
"@type": "ReceiptConfirmation",
"OfferRef": [
"2"
],
"Confirmation": {
"@type": "ConfirmationHold",
"OfferStatus": {
"@type": "OfferStatusAncillary",
"StatusAncillary": [
{
"code": "HK",
"value": "Confirmed"
}
]
}
}
},
{
"@type": "ReceiptConfirmation",
"id": "receipt_1",
"OfferRef": [
"1"
],
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "SQ",
"sourceContext": "VendorLocator",
"value": "65YEMQ"
},
"OfferStatus": {
"@type": "OfferStatusAir",
"StatusAir": [
{
"flightRefs": [],
"code": "HK",
"value": "Confirmed"
}
]
}
}
},
{
"@type": "ReceiptConfirmation",
"id": "receipt_2",
"OfferRef": [
"1"
],
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "SQ",
"sourceContext": "OrderId",
"value": "SQ_65YEMQ"
}
}
},
{
"@type": "ReceiptPayment",
"dateTime": "2023-12-21T00:00:01Z",
"id": "receipt_4",
"Identifier": {
"authority": "SQ",
"value": "90d0f9ba-3b6e-4a00-a3a6-c338b2ccf749"
},
"OfferRef": [
"1",
"2"
],
"PaymentIdentifier": {
"id": "paymentIdentifier_1",
"PaymentRef": "payment_1"
},
"Document": [
{
"@type": "DocumentEMD",
"Number": "6184568037036",
"TravelerIdentifierRef": {
"value": "trav_1"
},
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"value": "USD"
},
"Total": 60
},
"EMDDescription": {
"value": "SEAT 31K"
}
}
]
},
{
"@type": "ReceiptPayment",
"dateTime": "2023-12-21T00:00:01Z",
"id": "receipt_5",
"Identifier": {
"authority": "SQ",
"value": "60aced56-19db-4638-9f73-f8da65124fe1"
},
"OfferRef": [
"1"
],
"PaymentIdentifier": {
"id": "paymentIdentifier_2",
"PaymentRef": "payment_2"
},
"Document": [
{
"@type": "DocumentTicket",
"Number": "6182445802113",
"TravelerIdentifierRef": {
"value": "trav_1"
},
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Total": 575.9
}
}
]
},
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "0ca68b95-b0c3-4ddc-8960-7ed87a157c0a"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1G",
"creationDate": "2023-12-21",
"value": "61KSNM"
}
}
}
],
"ReservationComment": [
{
"@type": "ReservationComment",
"shareWith": "Agency",
"id": "RSRVComment_1",
"Comment": [
{
"value": "* PNR CONTAINS NDC AIR SEGMENTS-SERVICE VIA SMARTPOINT NDC APP *"
}
]
}
],
"ReservationDisplaySequence": {
"@type": "ReservationDisplaySequence",
"DisplaySequence": [
{
"@type": "DisplaySequence",
"displaySequence": 1,
"OfferRef": "1",
"ProductRef": "product_1",
"Sequence": 1
}
]
}
}
}
}