Skip to main content

OfferPrice

IATA_OfferPriceRQ prices offers selected from AirShopping and returns the quoted result as a new offer. It is the XML counterpart of the JSON price offer.

POST /ndc/{version}/OfferPrice with version one of v21.3, v24.4, or v25.4.

OfferPrice is the new-sale pricing path only. Offers returned by OrderReshop must be priced with OrderQuote instead — OfferPrice rejects them with ERR-3004.

Request

SelectedOfferList accepts one or more SelectedOffer entries — one per journey, each with OfferRefID, OwnerCode MX, and the selected OfferItemRefID values. Selected offers must reference distinct journeys and share one currency.

DataLists.PaxList is optional: when absent, the party is derived from the selected items' PaxRefIDs and the per-PTC OfferItemID suffixes. Requests whose item IDs carry no PTC suffix must include a PaxList.

<?xml version="1.0" encoding="UTF-8"?>
<IATA_OfferPriceRQ xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersMessage">
<DistributionChain>
<DistributionChainLink xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<Ordinal>1</Ordinal>
<OrgRole>Seller</OrgRole>
<ParticipatingOrg>
<OrgID>BZ</OrgID>
</ParticipatingOrg>
</DistributionChainLink>
<DistributionChainLink xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<Ordinal>2</Ordinal>
<OrgRole>Carrier</OrgRole>
<ParticipatingOrg>
<OrgID>MX</OrgID>
</ParticipatingOrg>
</DistributionChainLink>
</DistributionChain>
<Request>
<DataLists xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<PaxList>
<Pax>
<PaxID>ADT-1</PaxID>
<PTC>ADT</PTC>
</Pax>
</PaxList>
</DataLists>
<PricedOffer xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<SelectedOfferList>
<SelectedOffer>
<OfferRefID>OF-25a8bea9-89f5-41ea-98be-25340131a18b</OfferRefID>
<OwnerCode>MX</OwnerCode>
<SelectedOfferItem>
<OfferItemRefID>OFI-25a8bea9-89f5-41ea-98be-25340131a18b-0</OfferItemRefID>
<PaxRefID>ADT-1</PaxRefID>
</SelectedOfferItem>
</SelectedOffer>
</SelectedOfferList>
</PricedOffer>
</Request>
</IATA_OfferPriceRQ>

Response

The priced result is returned — and cached — under a freshly minted OfferID; that new ID is what OrderCreate consumes. Pricing does not extend the original offer's validity.

PricedOffer carries the quoted TotalPrice and per-item Price values from the live quote. Monetary amounts always carry CurCode.

<?xml version="1.0" encoding="UTF-8"?>
<IATA_OfferPriceRS xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersMessage">
<Response>
<DataLists xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<PaxList>
<Pax>
<PaxID>ADT-1</PaxID>
<PTC>ADT</PTC>
</Pax>
</PaxList>
<!-- OriginDestList, PaxJourneyList, PaxSegmentList, DatedOperatingLegList,
PriceClassList, ServiceDefinitionList as in IATA_AirShoppingRS -->
</DataLists>
<PricedOffer xmlns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes">
<OfferID>OF-8c1e2f04-9d21-4b7a-b3c2-77c101f1a001</OfferID>
<OfferItem>
<FareDetail>
<FareComponent>
<PaxSegmentRefID>SEG-outbound</PaxSegmentRefID>
</FareComponent>
<PaxRefID>ADT-1</PaxRefID>
</FareDetail>
<OfferItemID>OFI-8c1e2f04-9d21-4b7a-b3c2-77c101f1a001-0</OfferItemID>
<Price>
<BaseAmount CurCode="USD">91.5</BaseAmount>
<TaxSummary>
<TotalTaxAmount CurCode="USD">7.5</TotalTaxAmount>
</TaxSummary>
<TotalAmount CurCode="USD">99</TotalAmount>
</Price>
</OfferItem>
<TotalPrice>
<BaseAmount CurCode="USD">91.5</BaseAmount>
<TaxSummary>
<TotalTaxAmount CurCode="USD">7.5</TotalTaxAmount>
</TaxSummary>
<TotalAmount CurCode="USD">99</TotalAmount>
</TotalPrice>
</PricedOffer>
</Response>
</IATA_OfferPriceRS>

OfferPrice errors

CodeHTTP statusCause
ERR-1000400Malformed XML.
ERR-1002404Unsupported version segment in the path.
ERR-1003400Missing required element.
ERR-1004400Invalid field value, duplicate journeys, or mixed currencies.
ERR-3000404Referenced offer could not be found.
ERR-3001404Referenced offer has expired.
ERR-3002400One or more offer items not found on the offer.
ERR-3004400Offer came from OrderReshop and must be priced with OrderQuote.
ERR-8000401Missing or invalid API key or bearer token.
ERR-8001403API key not authorized for this request.
ERR-8002503Authentication store unavailable.
ERR-9001500Unexpected upstream response.
ERR-9002503Offer cache unavailable.