Air Pricing Modifiers
A number of modifiers can be added to a Air Pricing request to narrow the search results, using the AirPricingModifiers and AirSegmentPricingModifiers elements.
Specific modifiers can be added at either an itinerary (booking) level, segment level, or both levels. If a modifier is not supported at the segment level, a warning is returned: Requested modifier XYZ not supported at segment level.
Certain pricing modifiers may also not be available for specific providers or suppliers, or may have limited functionality.
Pricing Modifier |
Description |
---|---|
Requests Air Pricing using any passenger type code (PTC), with or without age. |
|
Requests a fare based on the cabin class (class of service), such as Coach, Economy, or First Class. |
|
Requests a price for air segments based on the requested booking class. Note: The response only returns public fares based on the booking classes specified in the request. |
|
Requests a fare based on whether the ticketed fare can be refunded if the itinerary is modified or canceled, based on the following qualifiers:
|
|
Fare types include:
Note: The default fare type varies by provider. |
|
Requests a fare search that return results based on the following qualifiers:
These modifiers can be used alone or in combination. |
|
Allows an alternate currency to be included, in addition to the default currency. |
|
A plating (ticketing) carrier can be specified in the request, and indicated in the response. |
|
Account Code |
Account Code is used to get Private Fares. If ProviderCode or SupplierCode is not specified, it is considered a default AccountCode sent to all Providers or Suppliers. AccountCode@Type categorizes this account code. For example, FlightPass for AC Flight Pass or RFB for AC corporate Rewards for Business. The AccountCodes element applies to both AirPriceReq/AirPricingModifiers/AccountCodes and AirPriceReq/AirPricingCommand/AirPricingModifiers/AccountCodes Note: Multiple account codes can be sent as AirPricingModifiers in the Air Price Request transaction. However, Universal API considers only the first account code in the request, so only one account code is acceptable in the Air Price Transaction. Applicable to only Galileo (1G) and Apollo (1V). |
Override Carrier |
Allows agents to specify the carrier for fare selection and override fare selection logic. Note: This modifier is not supported by Worldspan (1P) or Air Content Hub (ACH). OverrideCarrier was implemented to support the changing business process for filing fares, since more carriers are filing fares with interline partners where the carrier who files the fare is not the owning or significant carrier on an itinerary, so the fares cannot be quoted. |
Force Segment Select (Worldspan only) |
Allows agents to force segment select option in host while selecting ALL air segments to store price on a PNR. This is ignored unless ALL air segments are selected. Default is 'false'. |
Allows either Paper or Electronic Ticket types to be indicated in a request or response. |
|
Forced fares (also known as 'FIC the Fare') use Fare Basis Codes to create a specific fare to price, which overrides Universal API's system-generated fare responses. |
|
Indicates in which Air segments a fare should or should not be broken. |
|
Promotional Codes |
Promotional Codes (Promo Codes) offer a discount or "special promotional rate" on a product for a specific period of time for meetings and conventions. Air Canada is currently the only supplier to support Promo Codes. There are two types of Promo Codes for Air Canada:
|
Allows increases or decreases to be applied to a fare quote when the appropriate parameters are set in Shop/Price/Book requests. The fare can be increased or decreased either by percentage or flat amount. The user can increase or decrease either the base amount or total. Total amount has some restrictions. |
|
Brand Modifiers | Specifies the type and amount of brand content that is returned in the Air Pricing response. See Rich Content and Branding in Air Pricing for details. |
Point of Sale |
Point Of Sale functionality is available for Air Add in Universal Record Modify only. It is not available for any other Universal API services that contain the AirPricingModifiers element. See Storing Redistributed Fares in Existing Universal Records for details. |
Inventory Request Type |
Checks inventory via any of the following methods:
For more information see Air Pricing with Inventory Options. |
Sell Check Release 18.1 |
If @SellCheck="true", inventory status is checked to determine if a segment is bookable. The default value is "false". Permitted Booking Code is required when this attribute is used. This enhancement provides the ability to get an alternate low fare if the requested fare is not available during Air Price. The alternate low fare is the lowest fare in the cabin associated with the Class of Service passed in the request. Note: When the Sell Check attribute is included in the AirPrice request, AirPrice becomes a 'stateful' transaction, meaning that it retains information about the transaction, or session. It is at the customers discretion to implement this functionality so that impacts to the system and a carriers inventory are taken into consideration. Risks may include impacts to last seat availability and restrictions to available inventory. Release 18.3 IMPORTANT: As best practice, the AirPrice with Sell Check option should not be used right before an AirCreateReservationReq. For last seat availability, if the airlines do not release the seats to the inventory immediately, then a subsequent AirCreateReservationReq call after a sell check may end up in a sell failure as the seat was blocked by the AirPrice transaction. As of release 18.2, either Permitted Booking Code or Class of Service can be used with SellCheck. If both values are sent, the Permitted Booking Code is used and Class of Service is ignored. Release 18.2 To check if segments are bookable within an Air Pricing request:
If the class of service is available, all associated fares are returned.
In the Air Price response, the following information returns:
If the specified class of service is not available, the lowest fare for the associated cabin class is returned. This reduces the occurrence of booking failure by performing a sell check at the time of AirPrice. Note: Error or warning messages return when:
|
Return Failed Segments Release 18.4 |
The @ReturnFailedSegments attribute ensures that failed segment(s) information returns in the error response, so that suitable replacement(s) can be found for the failed segment(s). 1G Release 21.3 Prior to Universal API release 21.3.3, Travelport Universal API customers may have received an error in an AirPrice response when a flight no longer had available inventory, but the response did not indicate which flight wasn’t available. Since the segment with no availability was not returned in the response, the design was challenging for customer workflows. Currently, when an AirPrice request includes ReturnFailedSegments="true" and InventoryRequestType="Seamless", or InventoryRequestType="DirectAccess", the response includes air segment details, along with an error response, when the price request fails due to inventory.
For example: <AirPriceReq> <air:AirPricingModifiers PlatingCarrier="UA" ReturnFailedSegments="true" InventoryRequestType="DirectAccess"/> <AirPriceRsp> <air:AirSegmentError> <air:AirSegment Key="pS4+DpPrGDKAe1jHAAAAAA==" Group="0" Carrier="UA" FlightNumber="0340" Origin="ATL" Destination="DEN" DepartureTime="2021-07-02T09:15:00.000-04:00" ClassOfService="Z" ChangeOfPlane="false" OptionalServicesIndicator="false"/> <air:ErrorMessage>BOOKING CLASS/PREFERENCE NOT AVAIL CHECK AVAILABILITY</air:ErrorMessage> </air:AirSegmentError> See DA-909 for further details.
1P To ensure this information is returned in the error message, the switch attribute @ReturnFailedSegments must be set to "true" in the Air Price and Air Create Reservation requests. The response displays the error message with included failed segments. If there is more than one failed segment, each additional failed segment is separated by a pipe "|". Note Only the failed segments will be returned. For example: ER101 - UNABLE TO PRICE AS BOOKED OR BY LOW FARE FINDER ***INVALID SPECIFIED FLIGHT NUMBER*** G3 07631J 13JAN18MVDGRU|G3 01620J 13JAN18GRUREC|G3 02085A 27JAN18RECGIG|G3 07646W 27JAN18GIGMVD |
Preferred/Permitted Cabins |
As of Air v47.0, for both Worldspan , users of Trip Services can find the lowest fare for an itinerary (“best buy”/”low fare finder”), where users are able to specify a cabin so that the lowest fare returned is lowest for that cabin. If the specified Cabin class is not available, the lowest fare for the alternate Cabin Class is returned in the Price Response. The priority ranking in the Air Price request is Permitted Cabins, then Preferred Cabin, and then Class Of Service. Release 18.4
|
Split Ticketing Release 19.0 |
Universal API supports split bookings for provisioned customers. If you are interesting in this functionality, please contact your Travelport representative. A split booking allows you to book a roundtrip ticket by submitting two separate pricing solutions in one reservation request. Prior to this release, you had to submit two separate booking requests, one for the outbound itinerary and the other for the inbound itinerary. You can then ticket the two segments separately under the same PNR. If you are provisioned for split booking, send two AirPricingSolution elements in AirCreateReservationReq to specify that a split booking should be made. @ProviderCode in each AirPricingSolution/AirSegment must match. The response returns one provider PNR. Each AirPricingSolution must be ticketed separately with the airlines. |
Ignore Availability Release 20.1 | If the @IgnoreAvailability attribute = "true," it allows users, when working in a session, the ability to get the lowest price and class of service without checking availability. This allows their automated system to decide when a lower class of service is available, and they can rebook the itinerary at a lower fare. |
Sell City and TicketingCity Release 20.3 |
Including SellCity and TicketingCity time of Shop, Price, Book and UR Modify helps to identify cross-boarder sales (e.g. price in PAR ticket in NYC) so that fares are accurate throughout a workflow (e.g. shop, price, book, UR Modify). This functionality is only supported for Galileo (1G). If sent via 1V, 1P, ACH, the warning message returns, “SellCity and TicketingCity modifier(s) not supported by this provider and have been ignored.” <AirPricingModifiers TicketingCity="PAR" SellCity="NYC"/> |