AirOfferPrice

AirOfferPrice that allows users to retrieve rates for specific travel requirements and to price a particular Shopping Response ID and Offer ID.

This returns the Response with total price for the selected itinerary, including taxes, fees, or other charges associated with the booking.

As it provides customers with accurate and up-to-date pricing information for their travel plans.

Schema

  • Name: Provide the name for the request. This is a String value.

  • ReferenceVersion: Provide the version number. This is a Numeric value.


  • Travel Agency Sender:

    • Name: Provide the name for the request. This is a String value.

    • IATA Number: Provide the IATA number for the request. This is a String value.

    • Agency ID: Provide the agency ID for the request. This is a String value.

    • Contacts: This is an Array.

      • EmailContact: Provide the email contact for the request. This is a String value.

The Shopping Response ID is a unique identifier that is generated when a customer performs a search for flights and receives a list of available options.

This is the required field, and the value will be String.


OfferID: When a customer performs a search for flights, the airline generates a list of available offers that meet the customer’s search criteria. Each offer within that list is assigned a unique OfferID.

It is important to provide the correct numeric value to ensure that the system can identify the correct offer

This is the required field, and the value will be String.


  • Passenger: This is an Array.

Note: This is a required field. Passenger list must have at least one adult. Infant object count should be less than or equal to adult count. Total passenger count should be less than or eqaul to 9.

  • PassengerID: Provide the passenger ID assigned to you. Valid values are T1, T2, and T3. The value will be String.

  • PTC: Provide the passenger type. Valid values are ADT, CHD, and INF. The value will be String.


TraceId: Provide the Trace ID. This is a String value.

Request URL

curl --location --request POST 'https://uat-apigateway.voyzantonline.com/AirOfferPrice' \
--header 'Authorization: <YOUR_ACCESS_TOKEN>' \
--header 'x-api-key: <your key here>' \
--header 'Content-Type: application/json'\ 
--header 'Accept-Encoding: gzip, deflate, br'\

Request Body Sample

{
    "OfferPriceRQ": {
        "Document": {
            "Name": "Voyzant Portal",
            "ReferenceVersion": "1.0"
        },
        "Party": {
            "Sender": {
                "TravelAgencySender": {
                    "Name": "Voyzant Agency",
                    "IATA_Number": "1111111111",
                    "AgencyID": "1111111111",
                    "Contacts": {
                        "Contact": [
                            {
                                "EmailContact": "test@email.com"
                            }
                        ]
                    }
                }
            }
        },
        "ShoppingResponseId": "1679558717852165006",
        "Query": {
            "Offer": [
                {
                    "OfferID": "3296198721679558734648373563"
                }
            ]
        },
        "DataLists": {
            "PassengerList": {
                "Passenger": [
                    {
                        "PassengerID": "T1",
                        "PTC": "ADT"
                    }
                ]
            }
        },
        "MetaData": {
            "TraceId": "161777799749"
        }
    }
}

Response Sample

{
    "OfferPriceRS": {
        "Document": {
            "Name": "API GATEWAY",
            "ReferenceVersion": "1.2"
        },
        "Party": {
            "Sender": {
                "TravelAgencySender": {
                    "Name": "Voyzant Agency",
                    "IATA_Number": "",
                    "AgencyID": "Voyzant Agency",
                    "Contacts": {
                        "Contact": [
                            {
                                "EmailContact": "pst@voyzant.com"
                            }
                        ]
                    }
                }
            }
        },
        "ShoppingResponseId": "1679558717852165006",
        "OfferResponseId": "1679558776693866670",
        "Success": {},
        "PricedOffer": [
            {
                "OfferID": "3296198721679558734648373563",
                "Owner": "AF",
                "OwnerName": "Air France",
                "IsBrandedFare": "N",
                "BrandedFareOptions": [],
                "CabinOptions": [],
                "IsAdditionalCabinType": "N",
                "Eticket": "false",
                "AllowHold": "Y",
                "TimeLimits": {
                    "OfferExpirationDateTime": "2023-03-23T10:06:17",
                    "PaymentExpirationDateTime": "2023-03-27 03:00:00"
                },
                "PassportRequired": "N",
                "BookingCurrencyCode": "CAD",
                "EquivCurrencyCode": "CAD",
                "HstPercentage": "",
                "RewardSettings": {
                    "RewardAvailable": "N",
                    "PointTypes": [],
                    "PointValues": {}
                },
                "BookingFeeInfo": {
                    "FeeType": "",
                    "BookingCurrencyPrice": 0,
                    "EquivCurrencyPrice": 0
                },
                "TotalPrice": {
                    "BookingCurrencyPrice": 841.96,
                    "EquivCurrencyPrice": 841.96
                },
                "BasePrice": {
                    "BookingCurrencyPrice": 414,
                    "EquivCurrencyPrice": 414
                },
                "TaxPrice": {
                    "BookingCurrencyPrice": 427.96,
                    "EquivCurrencyPrice": 427.96
                },
                "Commission": {
                    "AgencyCommission": {
                        "BookingCurrencyPrice": 0,
                        "EquivCurrencyPrice": 0
                    },
                    "AgencyYqCommission": {
                        "BookingCurrencyPrice": 0,
                        "EquivCurrencyPrice": 0
                    }
                },
                "PortalCharges": {
                    "Markup": {
                        "BookingCurrencyPrice": 0,
                        "EquivCurrencyPrice": 0
                    },
                    "Surcharge": {
                        "BookingCurrencyPrice": 0,
                        "EquivCurrencyPrice": 0
                    },
                    "Discount": {
                        "BookingCurrencyPrice": 0,
                        "EquivCurrencyPrice": 0
                    }
                },
                "Penalty": {
                    "ChangeFee": {
                        "Before": {
                            "BookingCurrencyPrice": "NA",
                            "EquivCurrencyPrice": "NA"
                        },
                        "After": {
                            "BookingCurrencyPrice": "NA",
                            "EquivCurrencyPrice": "NA"
                        }
                    },
                    "CancelationFee": {
                        "Before": {
                            "BookingCurrencyPrice": "NA",
                            "EquivCurrencyPrice": "NA"
                        },
                        "After": {
                            "BookingCurrencyPrice": "NA",
                            "EquivCurrencyPrice": "NA"
                        }
                    }
                },
                "OfferItem": [
                    {
                        "OfferItemID": "OFFERITEMID1",
                        "Refundable": "true",
                        "PassengerType": "ADT",
                        "PassengerQuantity": 1,
                        "TotalPriceDetail": {
                            "TotalAmount": {
                                "BookingCurrencyPrice": 841.96,
                                "EquivCurrencyPrice": 841.96
                            }
                        },
                        "Service": [
                            {
                                "ServiceID": "SV1",
                                "PassengerRefs": "ADT1",
                                "FlightRefs": "Flight1"
                            }
                        ],
                        "FareDetail": {
                            "PassengerRefs": "ADT1",
                            "Price": {
                                "TotalAmount": {
                                    "BookingCurrencyPrice": 841.96,
                                    "EquivCurrencyPrice": 841.96
                                },
                                "BaseAmount": {
                                    "BookingCurrencyPrice": 414,
                                    "EquivCurrencyPrice": 414
                                },
                                "TaxAmount": {
                                    "BookingCurrencyPrice": 427.96,
                                    "EquivCurrencyPrice": 427.96
                                },
                                "Commission": {
                                    "AgencyCommission": {
                                        "BookingCurrencyPrice": 0,
                                        "EquivCurrencyPrice": 0
                                    },
                                    "AgencyYqCommission": {
                                        "BookingCurrencyPrice": 0,
                                        "EquivCurrencyPrice": 0
                                    }
                                },
                                "BookingFee": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "PortalCharges": {
                                    "Markup": {
                                        "BookingCurrencyPrice": 0,
                                        "EquivCurrencyPrice": 0
                                    },
                                    "Surcharge": {
                                        "BookingCurrencyPrice": 0,
                                        "EquivCurrencyPrice": 0
                                    },
                                    "Discount": {
                                        "BookingCurrencyPrice": 0,
                                        "EquivCurrencyPrice": 0
                                    }
                                },
                                "Taxes": [
                                    {
                                        "TaxCode": "YQ",
                                        "BookingCurrencyPrice": 25,
                                        "EquivCurrencyPrice": 25
                                    },
                                    {
                                        "TaxCode": "YR",
                                        "BookingCurrencyPrice": 337.5,
                                        "EquivCurrencyPrice": 337.5
                                    },
                                    {
                                        "TaxCode": "CA",
                                        "BookingCurrencyPrice": 25.91,
                                        "EquivCurrencyPrice": 25.91
                                    },
                                    {
                                        "TaxCode": "RC",
                                        "BookingCurrencyPrice": 4.55,
                                        "EquivCurrencyPrice": 4.55
                                    },
                                    {
                                        "TaxCode": "SQ",
                                        "BookingCurrencyPrice": 35,
                                        "EquivCurrencyPrice": 35
                                    }
                                ]
                            }
                        },
                        "FareComponent": [
                            {
                                "PriceClassRef": "PCR_1",
                                "SegmentRefs": "Segment1",
                                "FareBasis": {
                                    "FareBasisCode": {
                                        "Refs": "FG_1",
                                        "Code": "NLX79NBL/AU330"
                                    },
                                    "RBD": "N",
                                    "CabinType": "Y",
                                    "SeatLeft": "9"
                                }
                            }
                        ]
                    }
                ],
                "BaggageAllowance": [
                    {
                        "SegmentRefs": "Segment1",
                        "PassengerRefs": "T1",
                        "BaggageAllowanceRef": "Bag1"
                    }
                ],
                "SplitPaymentInfo": [
                    {
                        "AirItineraryId": "3296198721679558734648373563",
                        "MultipleFop": "N",
                        "MaxCardsPerPax": 0,
                        "MaxCardsPerPaxInMFOP": 0
                    }
                ],
                "BookingToEquivExRate": 1,
                "FopRef": "FOP_1341_0_1987_0_ALL_PRI"
            }
        ],
        "DataLists": {
            "PassengerList": {
                "Passengers": [
                    {
                        "PassengerID": "T1",
                        "PTC": "ADT"
                    }
                ]
            },
            "DisclosureList": {
                "Disclosures": []
            },
            "FareList": {
                "FareGroup": [
                    {
                        "FareGroupRef": "FG_1",
                        "FareCode": "749",
                        "FareBasisCode": "NLX79NBL/AU330"
                    }
                ]
            },
            "FlightSegmentList": {
                "FlightSegment": [
                    {
                        "SegmentKey": "Segment1",
                        "Departure": {
                            "AirportCode": "YYZ",
                            "Date": "2023-04-17",
                            "Time": "23:15:00",
                            "AirportName": "Lester B. Pearson International Airport",
                            "Terminal": {
                                "Name": "3"
                            }
                        },
                        "Arrival": {
                            "AirportCode": "CDG",
                            "Date": "2023-04-18",
                            "Time": "12:35:00",
                            "AirportName": "Charles de Gaulle International Airport",
                            "Terminal": {
                                "Name": "2E"
                            }
                        },
                        "MarketingCarrier": {
                            "AirlineID": "AF",
                            "Name": "Air France",
                            "FlightNumber": "357"
                        },
                        "OperatingCarrier": {
                            "AirlineID": "AF",
                            "Name": "Air France",
                            "FlightNumber": "357"
                        },
                        "Equipment": {
                            "AircraftCode": "772",
                            "Name": "Boeing 777-200 pax"
                        },
                        "Code": {
                            "MarriageGroup": "O"
                        },
                        "FlightDetail": {
                            "FlightDuration": {
                                "Value": "7 H 20 M"
                            },
                            "Stops": {
                                "Value": 0
                            },
                            "InterMediate": [],
                            "AirMilesFlown": 0
                        },
                        "BrandId": ""
                    }
                ]
            },
            "FlightList": {
                "Flight": [
                    {
                        "FlightKey": "Flight1",
                        "Journey": {
                            "Time": "7 H 20 M",
                            "Stops": 0
                        },
                        "SegmentReferences": "Segment1"
                    }
                ]
            },
            "OriginDestinationList": {
                "OriginDestination": [
                    {
                        "OriginDestinationKey": "OD1",
                        "DepartureCode": "YYZ",
                        "ArrivalCode": "CDG",
                        "FlightReferences": "Flight1"
                    }
                ]
            },
            "PriceClassList": {
                "PriceClass": [
                    {
                        "PriceClassID": "PCR_1",
                        "Name": "",
                        "Code": "",
                        "Descriptions": {
                            "Description": []
                        }
                    }
                ]
            },
            "BaggageAllowanceList": {
                "BaggageAllowance": [
                    {
                        "BaggageAllowanceID": "Bag1",
                        "BaggageCategory": "Checked",
                        "AllowanceDescription": {
                            "ApplicableParty": "Traveler",
                            "Description": "CHECKED ALLOWANCE"
                        },
                        "PieceAllowance": {
                            "ApplicableParty": "Traveler",
                            "TotalQuantity": "1",
                            "Unit": "Pieces"
                        }
                    }
                ]
            },
            "FopList": [
                {
                    "CC": {
                        "Allowed": "Y",
                        "Types": {
                            "AX": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "MC": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "VI": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "JC": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "DC": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "DUS": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "MA": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "DS": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "TP": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            }
                        }
                    },
                    "DC": {
                        "Allowed": "Y",
                        "Types": {
                            "MC": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "VI": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            },
                            "RU": {
                                "F": {
                                    "BookingCurrencyPrice": 0,
                                    "EquivCurrencyPrice": 0
                                },
                                "P": 0
                            }
                        }
                    },
                    "CASH": {
                        "Allowed": "N",
                        "Types": {}
                    },
                    "CHEQUE": {
                        "Allowed": "Y",
                        "Types": {}
                    },
                    "ACH": {
                        "Allowed": "Y",
                        "Types": {}
                    },
                    "PG": {
                        "Allowed": "N",
                        "Types": {}
                    },
                    "FopKey": "FOP_1341_0_1987_0_ALL_PRI"
                }
            ]
        },
        "MetaData": {}
    }
}

Reprice Response

When the initial pricing attempt fails (for example, the selected booking class becomes unavailable), the Reprice flow is automatically triggered. The response returns the original pricing error alongside an AllPricedOfferRS envelope that lists alternative priced offers the traveller can fall back to.

Note: This response is only returned when the reprice flow is successfully triggered after a pricing failure. If the initial pricing succeeds, only the standard OfferPriceRS block is returned.

Reprice Response Schema

Echoes the original OfferPrice request result. When reprice is triggered, this block always carries the failure that caused the reprice.

  • Document:

    • Name: Name of the responding system. This is a String value.
    • ReferenceVersion: Response schema version. This is a String value.
  • Party.Sender.TravelAgencySender: Agency details echoed from the request.

    • Name, IATA_Number, AgencyID: String values.
    • Contacts.Contact[].EmailContact: String value.
  • ShoppingResponseId: The shopping session ID that produced the original offer. This is a String value.

  • OfferResponseId: Unique ID of this priced offer response. This is a String value.

  • Errors.Error: The pricing failure that triggered the reprice flow.

    • ShortText: Short label for the error (for example, Offer Price Error). This is a String value.
    • Code: Numeric error code (for example, 101). This is a Numeric value.
    • Value: Human-readable description of the failure. This is a String value.

Container for the reprice results. It groups the alternatives into three mutually exclusive buckets so the client can decide which fallback to offer the traveller.

  • ShoppingResponseId: The shopping session ID that the reprice was performed against. This is a String value.

  • SameFlightOptions: A repriced offer for the same itinerary and same booking class as originally selected, at a revised total price. Empty object ({}) when this fallback is not available.

  • DifferentBookingClassOptions: An Array of repriced offers for the same itinerary in a different booking class (RBD). Empty array when this fallback is not available.

  • DifferentFlightOptions: Repriced offers on alternate itineraries (different flights, different dates, or different carriers). See OffersGroup below.

  • Warnings: An Array of advisory messages. Each entry indicates a bucket that came back empty — for example, “Same Flight Option Not availbale” or “DifferentBookingClass Options Not availbale”.


Each entry in OffersGroup is a complete OfferPriceRS payload for one alternate priced offer. Clients should treat each entry as an independently bookable option.

  • OfferPriceRS.Success: Empty object confirming the alternate offer priced cleanly.

  • OfferPriceRS.PricedOffer: An Array. Each priced offer contains:

    • OfferID: Unique identifier for the alternate offer. Use this when placing the order. This is a String value.
    • Owner / OwnerName: Airline code and name that owns the offer.
    • IsBrandedFare: Y or N. Whether the offer is a branded fare.
    • InstantTicket: Y or N. Whether the offer supports instant ticketing.
    • Eticket: true or false. E-ticket eligibility.
    • AllowHold: Y or N. Whether the offer can be held without payment.
    • TimeLimits:
      • OfferExpirationDateTime: ISO datetime — offer must be booked before this. This is a String value.
      • PaymentExpirationDateTime: Deadline for payment. This is a String value.
    • PassportRequired: Y or N.
    • BookingCurrencyCode / EquivCurrencyCode: ISO 4217 currency codes.
    • BookingFeeInfo: Booking fee applied to the offer.
      • FeeType: For example, AIF. This is a String value.
      • BookingCurrencyPrice / EquivCurrencyPrice: Numeric values.
    • TotalPrice, BasePrice, TaxPrice: Aggregate pricing across all passengers. Each has BookingCurrencyPrice and EquivCurrencyPrice.
    • Commission: Agency and YQ commission blocks.
    • PortalCharges: Markup, Surcharge, Discount — portal-side adjustments.
    • Penalty:
      • ChangeFee.Before / ChangeFee.After: Change fee before and after departure.
      • CancelationFee.Before / CancelationFee.After: Cancellation fee before and after departure.
    • OfferItem: An Array, one entry per passenger type.
      • OfferItemID: Unique item ID (for example, OFFERITEMID1). This is a String value.
      • Refundable: true or false. This is a Boolean value.
      • PassengerType: ADT, CHD, or INF. This is a String value.
      • PassengerQuantity: Number of passengers of this type. This is a Numeric value.
      • TotalPriceDetail.TotalAmount: Per-passenger-type total.
      • Service: Links the offer item to passengers and flight segments (PassengerRefs, FlightRefs).
      • FareDetail: Full price breakdown — TotalAmount, BaseAmount, TaxAmount, Commission, BookingFee, PortalCharges, and Taxes[] (each with TaxCode, BookingCurrencyPrice, EquivCurrencyPrice).
      • FareComponent: Segment-level fare basis — PriceClassRef, SegmentRefs, FareBasis (FareBasisCode, RBD, CabinType, SeatLeft).
    • BaggageAllowance: An Array mapping passengers to segments and baggage allowance references.
    • SplitPaymentInfo: Payment split configuration for the itinerary.
    • BookingToEquivExRate: Exchange rate between booking and equivalent currencies. This is a Numeric value.
    • FopRef: Reference key into DataLists.FopList for allowed forms of payment. This is a String value.
    • RescheduleAllowed, PaxWiseVoidAllowed, PostSeatAllowed, PostAncillaryAllowed: Y or N flags describing post-booking capabilities.
  • OfferPriceRS.DataLists: Reference data for the alternate offer. Contains AirShoppingRS with:

    • PassengerList.Passengers[]: Passenger IDs (T1, T2, …), PTC, loyalty program accounts, and Individual.Birthdate.
    • FareList.FareGroup[]: FareGroupRef, FareCode, FareBasisCode.
    • FlightSegmentList.FlightSegment[]: Departure/Arrival airports and times, Marketing and Operating carrier, Equipment, MarriageGroup, and FlightDetail (duration, stops).
    • FlightList.Flight[]: FlightKey, Journey.Time, Journey.Stops, SegmentReferences.
    • OriginDestinationList.OriginDestination[]: OriginDestinationKey, DepartureCode, ArrivalCode, FlightReferences.
    • PriceClassList.PriceClass[]: Branded fare / price class metadata.
    • BaggageAllowanceList.BaggageAllowance[]: BaggageAllowanceID, BaggageCategory, AllowanceDescription, PieceAllowance.
    • FopList[]: Allowed forms of payment (CC, DC, CASH, CHEQUE, ACH, PG, VCC) with per-type surcharge/fee structures, keyed by FopKey.

Reprice Response Sample

{
    "OfferPriceRS": {
        "Document": {
            "Name": "Voyzant Portal",
            "ReferenceVersion": "1.0"
        },
        "Party": {
            "Sender": {
                "TravelAgencySender": {
                    "Name": "Voyzant Agency",
                    "IATA_Number": "1111111111",
                    "AgencyID": "Voyzant Agency",
                    "Contacts": {
                        "Contact": [
                            { "EmailContact": "pst@voyzant.com" }
                        ]
                    }
                }
            }
        },
        "ShoppingResponseId": "1783345332680417462",
        "OfferResponseId": "1783345384491714909",
        "Errors": {
            "Error": {
                "ShortText": "Offer Price Error",
                "Code": 101,
                "Value": "Unable to confirm availability for the selected booking class at this moment"
            }
        }
    },
    "AllPricedOfferRS": {
        "ShoppingResponseId": "1783345332680417462",
        "SameFlightOptions": {},
        "DifferentBookingClassOptions": [],
        "DifferentFlightOptions": {
            "OffersGroup": [
                {
                    "OfferPriceRS": {
                        "Success": {},
                        "OfferResponseId": "1783345392305298781",
                        "PricedOffer": [
                            {
                                "OfferID": "3973247511783345337604637415",
                                "Owner": "GF",
                                "OwnerName": "Gulf Air",
                                "AllowHold": "Y",
                                "TimeLimits": {
                                    "OfferExpirationDateTime": "2026-07-06T21:13:18",
                                    "PaymentExpirationDateTime": "2026-08-1 07:00:00"
                                },
                                "BookingCurrencyCode": "CAD",
                                "TotalPrice": { "BookingCurrencyPrice": 2011.34, "EquivCurrencyPrice": 2011.34 },
                                "BasePrice":  { "BookingCurrencyPrice": 1132.94, "EquivCurrencyPrice": 1132.94 },
                                "TaxPrice":   { "BookingCurrencyPrice": 878.4,   "EquivCurrencyPrice": 878.4 }
                            }
                        ]
                    }
                }
            ]
        },
        "Warnings": [
            { "Message": "Same Flight Option Not availbale" },
            { "Message": "DifferentBookingClass Options Not availbale" }
        ]
    }
}

Client integration tip: Inspect Warnings[] first to know which buckets are empty, then iterate DifferentFlightOptions.OffersGroup[] to surface the alternate itineraries. Use each PricedOffer.OfferID (and its ShoppingResponseId) when calling AirOrderCreate to book the fallback.

Try it out!