Reprice API Reference
|
POST |
reprice/reservationworkbench/{workbenchID}/offers/buildfromcatalogofferings For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response. Base path: Pre-production https://api.pp.travelport.net/11/air/ Production https://api.travelport.net/11/air/ |
Related Content: Exchange, Refund, and Void Guide
When modifying a held booking or exchanging a ticket for NDC, the Reprice API confirms pricing on a selected offer from a preceding Reshop response and adds that offer to the workbench. Reprice is part of the NDC modify/exchange workflow: Create a post-commit workbench, Reshop to shop for the new itinerary, Reprice as detailed here, and Modify to commit the changes.
Reprice can also be used to return OB fees based on credit card BIN (bank identification number).
For GDS and NDC differences in the TripServices APIs, see the support tables for seats, ancillaries, fare rules, and exchanges/refunds, and the NDC and GDS Functionality Comparison.
For differences within NDC by individual carriers, see NDC capabilities by airline through TripServices API in the Travelport Knowledge Base. See Knowledge Base NDC Resources if you need login assistance.
Request
As part of the request requirements, also see Authentication and Common Flights API Headers.
Header Parameters
|
Parameter |
Description |
Required/Optional |
|---|---|---|
|
OBFees |
Send with the value Y only to process the reprice with the credit card BIN. Must be sent with the Reprice with Credit Card BIN payload below. |
Optional |
|
IsJsonAPICall |
Send with the value Y to return the price difference between the selected offer and the amount originally paid for the ticket. The response includes a ModifyPrice object to itemize the price difference. |
Optional |
Query Parameters
None.
Request Body
Standard Reprice request
Use the following Reprice payload when you do not need to reprice with OB fees.
|
Object |
Description |
Required/Optional |
|---|---|---|
|
OfferQueryBuildFromCatalogOfferings |
Top level object. |
Required |
|
BuildFromCatalogOfferingsRequest |
Top level object. |
Required |
|
CatalogOfferingIdentifier |
Top level object. |
Required |
|
Identifier |
Identifier details for the offer to reprice. |
Required |
|
Send the value returned in CatalogOffering/Identifier/authority in the Reshop response for the offer to exchange for. |
Required |
|
Send the value returned in CatalogOffering/Identifier/value in the Reshop response for the offer to exchange for. |
Required |
Reprice with credit card BIN
Use the following payload if you want to process the reprice to return any OB fees based on credit card BIN.
|
Object |
Description |
Required/Optional |
|---|---|---|
|
OfferQueryBuildFromCatalogOfferings |
Top level object. |
Required |
|
PaymentCriteria |
Send with IssuerIdentificationNumber to return OB fees. Must also be sent with the header parameter OBFees set to Y.
|
Required |
|
IssuerIdentificationNumber |
String. From 6 to 16 characters inclusive are accepted. Sends the BIN of the credit card to be used for payment and returns OB fees, which are ticketing and form of payment (FOP) fees, including credit card fees. OB fees are returned in an instance of Price/PriceBreakdown/Fees/Fee with a feeCode of OB. For NDC carrier BA, you must send the complete 16-digit credit card number to return the surcharge amount.
|
Required |
|
PaymentCardCode |
String. Code for the credit card type to be used for payment. |
Required |
Response
The Reprice response uses the same format as the AirPrice Reference Payload API response, with the following differences:
-
OfferID is returned with @type value of OfferModify instead of Offer.
-
Price objects vary according to whether IsJsonAPICall=Y was sent in the header:
-
If IsJsonAPICall=Y was sent in the header, Price returns the price of this offer and does not account for any price difference between the offer and the amounts originally paid for the ticket. Instead, a ModifyPrice object is returned for the price differential.
-
If IsJsonAPICall=Y was not sent in the header, the amounts in the Price object follow the same behavior as in Reshop. The amounts do not return the price of the fare for this offer, but instead the price difference between the original itinerary and this specific offer. In Price/TotalPrice:
- a positive number indicates the additional amount due for this offer
- a zero amount indicates an even exchange
- a negative number indicates this offer costs less than the original itinerary and a partial refund is due
-
Example Request
{
"OfferQueryBuildFromCatalogOfferings": {
"BuildFromCatalogOfferingsRequest": {
"@type": "BuildFromCatalogOfferingsRequestAir",
"CatalogOfferingIdentifier": {
"Identifier": {
"authority": "QF",
"value": "WDc3NkM5MUJFLTIyOUMtNDM3Qi05N0M3MS0xfFg3NzZDOTFCRS0yMjlDLTQzN0ItOTdDN3wyMDIxLTExLTE5VDE2OjMwOjUxfEFEVDpYNzc2QzkxQkUtMjI5Qy00MzdCLTk3QzcxLTEtMXxRRnxERUFM"
}
}
}
}
}
{
"OfferQueryBuildFromCatalogOfferings": {
"PaymentCriteria": {
"IssuerIdentificationNumber": "4273000000005803",
"PaymentCardCode": "CC"
}
}
}
Example Response
The response returns details for the modified itinerary, a total price difference, and a breakdown of the fare difference by PTC for the selected offer.
{
"OfferListResponse": {
"OfferID": [
{
"@type": "OfferModify",
"id": "1",
"Identifier": {
"authority": "QF",
"value": "WDc3NkM5MUJFLTIyOUMtNDM3Qi05N0M3MS0xfFg3NzZDOTFCRS0yMjlDLTQzN0ItOTdDN3wyMDIxLTExLTE5VDE2OjMwOjUxfEFEVDpYNzc2QzkxQkUtMjI5Qy00MzdCLTk3QzcxLTEtMXxRRnxERUFMfE9OUkNEOlFGfE9GUlJFU1BJRDp7InJlc3BvbnNlSUQiOiJSOTI0N0FFNkEtOUY0RS00NEMyLUFCQkYiLCJvZmZlcklEIjoiUjkyNDdBRTZBLTlGNEUtNDRDMi1BQkJGLTEiLCJsaXN0T2ZmZXJJdGVtUGF4SUQiOlt7Im9mZmVySXRlbUlEIjoiUjkyNDdBRTZBLTlGNEUtNDRDMi1BQkJGLTEtMSIsInBhc3NlbmdlcklEIjpbIlQxIl19XSwib3JkZXJJdGVtSURQYXhNYXAiOnsiUEQ5QkQyNkJCLTUzQ0MtNDlENy04RDM1bmxqNXJxNXFrdWp6ei0xLTEiOnsiVDEiOiJ0cmF2XzEifX19"
},
"Product": [
{
"@type": "ProductAir",
"id": "product_1",
"FlightSegment": [
{
"sequence": 1,
"Flight": {
"@type": "Flight",
"distance": 438,
"carrier": "QF",
"number": "409",
"id": "S1",
"Departure": {
"@type": "DepartureDetail",
"location": "SYD",
"date": "2021-12-19",
"time": "07:00:00"
},
"Arrival": {
"@type": "ArrivalDetail",
"location": "MEL",
"date": "2021-12-19",
"time": "08:35:00"
}
}
}
],
"PassengerFlight": [
{
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"segmentSequence": [
1
],
"classOfService": "E",
"cabin": "Economy",
"fareBasisCode": "ESQW1"
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"value": "AUD"
},
"Base": 84.08,
"TotalTaxes": 24.92,
"TotalPrice": 109,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"CurrencyCode": {
"value": "AUD"
},
"Base": 84.08,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 24.92,
"Tax": [
{
"taxCode": "QR",
"description": "PASSENGER SERVICE CHARGE DOMESTIC DEPARTURE",
"value": 9.42
},
{
"taxCode": "QR",
"description": "PASSENGER SERVICE CHARGE DOMESTIC ARRIVAL",
"value": 5.59
},
{
"taxCode": "UO",
"description": "GOODS AND SERVICES TAX GST",
"value": 8.41
},
{
"taxCode": "UO",
"description": "GOODS AND SERVICES TAX GST",
"value": 1.5
}
]
},
"Total": 109
}
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAir",
"TextBlock": [
{
"@type": "TextBlockDetail",
"description": "Bag Rule",
"title": "Bag Rule",
"TextFormatted": [
{
"value": "Baggage Disclosure - Not subject to US DOT and CTA Reservation or Disclosure"
}
]
},
{
"@type": "TextBlockDetail",
"description": "Ticketing",
"title": "Ticketing",
"TextFormatted": [
{
"value": "NON-REF/NON-END"
},
{
"value": "SPECIAL FARE CONDITIONS"
}
]
}
],
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_1"
],
"BaggageItem": [
{
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "FirstCheckedBag",
"ProductRef": [
"product_1"
],
"BaggageItem": [
{
"quantity": 1
}
]
}
],
"FareRuleInfo": [
{
"@type": "FareRuleInfo",
"flightsRefs": [
"S1"
],
"ruleNumber": "70J|NO8EJWN~MpB8PD~MpN8RWC~MqB9KDJ~MDB8DQPU0~MBV9/321~MNA9/1584~MBB87016~MRO8OSAJ~MPM864/.~MDM82X~MPN88786~MP08DPR~MNP9/~MNW8@BS~MQ@948~MCR9/0/43~MRL80580~MAA877~MDC8N@~M?L872/6~MAT8@SC~MQR91/0~MDS82.1~MQP96*sjovYy89RiGg*flxKey"
}
],
"OrganizationInformation": {},
"PaymentTimeLimit": "2021-11-20T23:59:00Z"
}
]
}
],
"Result": {
"Warning": [
{
"@type": "Warning",
"Message": "QF : OB Fees of 0.40 for CARD FEE FD2 may be applied for traveler 1."
},
{
"@type": "Warning",
"Message": "QF : OB Fees of 0.40 for CARD FEE FD5 may be applied for traveler 1."
},
]
}
}
}
In the following example, OB fees are returned in Price/PriceBreakdown/Fee and noted with feeCode OB. Certain other objects have been trunckated [...] for brevity.
{
"OfferListResponse": {
"OfferID": [
{
"@type": "OfferModify",
"id": "1",
"Identifier": {
"authority": "BA",
"value": "WDY4RVpFfFg2OEVaRS1UMi1GUzF8SU5WT0xVTlRBUlktTk98U3RhdHVzOlVTRUQgTlRBQ3xPcmRlcml0ZW1JZDp8QUdHSUQtMDAwMTAxMzU="
},
"Product": [
{
"@type": "ProductAir",
"totalDuration": "PT1H25M",
"id": "product_1",
"Identifier": {
"authority": "BA",
"value": "0066df98-47ff-4e5b-871b-c4c13fa235cf"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "s1",
"sequence": 1,
"Flight": {
"@type": "Flight",
"duration": "PT1H25M",
"carrier": "BA",
"number": "1472",
"operatingCarrier": "BA",
"operatingCarrierName": "British Airways",
"equipment": "319",
"id": "Flight_01",
"Identifier": {
"authority": "BA",
"value": "4334f0a9-3282-41d6-a93d-2f3245d389c1"
},
"Departure": {
"@type": "DepartureDetail",
"terminal": "5",
"location": "LHR",
"date": "2026-03-17",
"time": "06:25:00"
},
"Arrival": {
"@type": "ArrivalDetail",
"terminal": "M",
"location": "GLA",
"date": "2026-03-17",
"time": "07:50:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "I",
"cabin": "Business",
"fareBasisCode": "IV2RO",
"fareType": "PublicFare"
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "GBP"
},
"Base": 136,
"TotalTaxes": 37.55,
"TotalFees": 3.47,
"TotalPrice": 177.02,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "GBP"
},
"Base": 136,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 37.55,
"Tax": [
{
"taxCode": "YQ",
"value": 5
},
{
"taxCode": "YR",
"value": 3
},
{
"taxCode": "GB",
"value": 14
},
{
"taxCode": "UB",
"value": 15.55
}
]
},
"Fees": {
"@type": "FeesDetail",
"TotalFees": 3.47,
"Fee": [
{
"@type": "Fee",
"feeCode": "OB",
"description": "OB FEE",
"FeeAmountOrPercent": {
"@type": "FeeAmountOrPercentAmount",
"Amount": {
"code": "GBP",
"value": 3.47
}
}
}
]
},
"Total": 177.02
}
}
]
},
"TermsAndConditionsFull": []
}
],
"Result": {
"@type": "Result",
"Warning": [
{
"@type": "Warning",
"Message": "Allowed forms of payment for this offer - Cash or Card or previously issued valid E-Voucher"
}
]
},
"Identifier": {
"value": "f38a2de1-e7cd-41bc-b171-3824c6a812ff_PC"
}
}
}
In the following example, when the header IsJsonAPICall=Y is sent, the response includes ModifyPrice to show the price difference between the priced offer and the amount originally paid for the ticket.
{
"OfferListResponse": {
"@type": "OfferListResponse",
"OfferID": [
{
"@type": "OfferModify",
"id": "1",
"Identifier": {
"authority": "IB",
"value": "SUI5NTE2ZjM4YTIzZWY0NGMxOTk2YjQ0NThlYWYwOTEzZE9QfFFtOXZhMmx1WjBCSFZ5MHhOekV5TWpFM056Y3hPREF5TFdNMWIxWlV8bnVsbHxJTkY6SUI5NTE2ZjM4YTIzZWY0NGMxOTk2YjQ0NThlYWYwOTEzZE9QXzAzOklCNGY2MWI5NTVkYzc1NGU2MDkyYzAwMDgwOTljZTFlMWFPQ18wMixBRFQ6SUI5NTE2ZjM4YTIzZWY0NGMxOTk2YjQ0NThlYWYwOTEzZE9QXzAxOklCNGY2MWI5NTVkYzc1NGU2MDkyYzAwMDgwOTljZTFlMWFPQ18wMyBJQjRmNjFiOTU1ZGM3NTRlNjA5MmMwMDA4MDk5Y2UxZTFhT0NfMDEsQ0hEOklCOTUxNmYzOGEyM2VmNDRjMTk5NmI0NDU4ZWFmMDkxM2RPUF8wMjpJQjRmNjFiOTU1ZGM3NTRlNjA5MmMwMDA4MDk5Y2UxZTFhT0NfMDR8SUJ8QkFTSUN8T05SQ0Q6SUJ8T0ZSUkVTUElEOnsicmVzcG9uc2VJRCI6IlFtOXZhMmx1WjBCSFZ5MHhOekV5TWpFM056Y3hPREF5TFdNMWIxWlUiLCJvZmZlcklEIjoiSUI5NTE2ZjM4YTIzZWY0NGMxOTk2YjQ0NThlYWYwOTEzZE9QIiwibGlzdE9mZmVySXRlbVBheElEIjpbeyJvZmZlckl0ZW1JRCI6IklCOTUxNmYzOGEyM2VmNDRjMTk5NmI0NDU4ZWFmMDkxM2RPUF8wMSIsInBhc3NlbmdlcklEIjpbIlQxIiwiVDIiXX0seyJvZmZlckl0ZW1JRCI6IklCOTUxNmYzOGEyM2VmNDRjMTk5NmI0NDU4ZWFmMDkxM2RPUF8wMiIsInBhc3NlbmdlcklEIjpbIlQzIl19LHsib2ZmZXJJdGVtSUQiOiJJQjk1MTZmMzhhMjNlZjQ0YzE5OTZiNDQ1OGVhZjA5MTNkT1BfMDMiLCJwYXNzZW5nZXJJRCI6WyJUMS4xIl19XSwib3JkZXJJdGVtSURQYXhNYXAiOnsiSUI0ZjYxYjk1NWRjNzU0ZTYwOTJjMDAwODA5OWNlMWUxYU9DXzAzIjp7IlQyIjoidHJhdl8yIn0sIklCNGY2MWI5NTVkYzc1NGU2MDkyYzAwMDgwOTljZTFlMWFPQ18wMiI6eyJUMS4xIjoidHJhdl8xMSJ9LCJJQjRmNjFiOTU1ZGM3NTRlNjA5MmMwMDA4MDk5Y2UxZTFhT0NfMDQiOnsiVDMiOiJ0cmF2XzMifSwiSUI0ZjYxYjk1NWRjNzU0ZTYwOTJjMDAwODA5OWNlMWUxYU9DXzAxIjp7IlQxIjoidHJhdl8xIn19fQ=="
},
"Product": [
{
"@type": "ProductAir",
"totalDuration": "PT1H15M",
"id": "product_1",
"FlightSegment": [
{
"@type": "FlightSegment",
"sequence": 1,
"Flight": {
"@type": "Flight",
"duration": "PT1H15M",
"carrier": "IB",
"number": "3804",
"operatingCarrier": "I2",
"operatingCarrierName": "Iberia Express",
"equipment": "32Q",
"id": "IB380420240612",
"Departure": {
"@type": "DepartureDetail",
"terminal": "4",
"location": "MAD",
"date": "2024-06-12",
"time": "15:40:00"
},
"Arrival": {
"@type": "ArrivalDetail",
"location": "IBZ",
"date": "2024-06-12",
"time": "16:55:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "INF",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
},
{
"@type": "PassengerFlight",
"passengerQuantity": 2,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
},
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "CHD",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
}
]
},
{
"@type": "ProductAir",
"totalDuration": "PT1H20M",
"id": "product_2",
"FlightSegment": [
{
"@type": "FlightSegment",
"sequence": 2,
"Flight": {
"@type": "Flight",
"duration": "PT1H20M",
"carrier": "IB",
"number": "3807",
"operatingCarrier": "I2",
"operatingCarrierName": "Iberia Express",
"equipment": "32Q",
"id": "IB380720240615",
"Departure": {
"@type": "DepartureDetail",
"location": "IBZ",
"date": "2024-06-15",
"time": "13:25:00"
},
"Arrival": {
"@type": "ArrivalDetail",
"terminal": "4",
"location": "MAD",
"date": "2024-06-15",
"time": "14:45:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "INF",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
2
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
},
{
"@type": "PassengerFlight",
"passengerQuantity": 2,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
2
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
},
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "CHD",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
2
],
"classOfService": "Q",
"cabin": "Economy",
"fareBasisCode": "QDNNB2",
"fareType": "PublicFare",
"Brand": {
"@type": "Brand",
"name": "BASIC"
}
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 330,
"TotalTaxes": 113.52,
"TotalFees": 0,
"TotalPrice": 443.52,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 2,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 104,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 28.38,
"Tax": [
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 20.31
},
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 1.22
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 6.85
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 0
},
"Total": 132.38
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "CHD",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 104,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 28.38,
"Tax": [
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 20.31
},
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 1.22
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 6.85
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 0
},
"Total": 132.38
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "INF",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 18,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 28.38,
"Tax": [
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 20.31
},
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 1.22
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 6.85
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 0
},
"Total": 46.38
}
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAir",
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"INF"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_1"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_1"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"CHD"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_1"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"INF"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_2"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_2"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
},
{
"@type": "BaggageAllowanceDetail",
"passengerTypeCodes": [
"CHD"
],
"baggageType": "CarryOn",
"ProductRef": [
"product_2"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2
}
]
}
],
"FareRuleInfo": [
{
"@type": "FareRuleInfoText",
"flightsRefs": [
"IB380420240612",
"IB380720240615"
],
"ruleNumber": "70J"
}
],
"OrganizationInformation": {
"@type": "OrganizationInformation"
}
}
],
"ModifyPrice": {
"@type": "ModifyPriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 95,
"TotalTaxes": 0,
"TotalFees": 214.5,
"TotalPrice": 309.5,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 2,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 30,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 0,
"Tax": [
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 0
},
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 0
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 0
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 65
},
"Total": 95
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "CHD",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 30,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 0,
"Tax": [
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 0
},
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 0
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 0
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 65
},
"Total": 95
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "INF",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "EUR"
},
"Base": 5,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 0,
"Tax": [
{
"taxCode": "OG",
"description": "Spain Aviation Safety And Security Fee",
"value": 0
},
{
"taxCode": "JD",
"description": "Spain Departure Charge",
"value": 0
},
{
"taxCode": "QV",
"description": "Spain Security Tax",
"value": 0
}
]
},
"Fees": {
"@type": "Fees",
"TotalFees": 19.5
},
"Total": 24.5
}
}
]
}
}
]
}
}