Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


Service Input Parameters

Input Parameters

Type

Schema Definition (http://www.ba.com/schema/)

Optional/Mandatory

Comments

Request object


FlightPriceRQ

FlightPriceRQ.xsd

M


FlightPriceRQ Data Fields

Field Type

Data Type

Schema Definition (http://www.ba.com/schema/)

Optional/Mandatory

Comments

Version (Attribute)

 

FlightPriceRQ/Version (Attribute)

M

Specify NDC schema message version. Always pass 16.1


Note: This is a mandatory attribute in NDC schema. The service will not validate what is being passed in this attribute

PrimaryLangID (Attribute)

 

FlightPriceRQ/PrimaryLangID (Attribute)

O

Specifies the agent’s preferred language. Service response will be returned in this language

 

Note: If the requested language is not supported by BA or if this is not passed in the request then the default language will be used, which is English


Example: EN

AltLangID (Attribute)

 

FlightPriceRQ/AltLangID (Attribute)

O

Specifies the preferred language in which the mail to be sent. eTicket receipt email and any other communication emails from BA will be sent in this language


Note: AltLangID will not be used even if it was passed in the FlightPrice request, as there is no email sent at the shopping stage. If the requested language is not supported by BA or if this is not passed in the request then the default language will be used, which is English

Travelers

 

 

M

BA accepts both anonymous and known traveler in the FlightPrice request. Known traveller’s details (FQTV) may be used in determining lead in seat price

Traveler

 

 

M

This must be repeated for each passenger. If the client wants to shop for 2 ADT, 2 CHD and 2 INF then Traveler should be repeated 6 times for each passenger and the Traveler can be Anonymous and Known

AnonymousTraveler

 

 

O


PTC

 

FlightPriceRQ/Travelers/Traveler/AnonymousTraveler/PTC

O

Passenger Type Code


BA accepts the following passenger type codes


ADT

CHD

INF


If any other passenger type code is passed then ADT price will be returned


Note: This is an optional element in NDC schema but for calling BA service this must be passed

ResidenceCode

 

FlightPriceRQ/Travelers/Traveler/AnonymousTraveler/ResidenceCode

O

This is where the customer’s billing country where the payment card is registered or the country of residence of the customer should be specified


Specify this element if known as it would help decide the applicable payment cards.  Applicable payment cards are decided based on agent’s country and customers billing country. If customer’s billing country is not specified then applicable payment cards will be returned based on agents country only


Example: GB


Please note only country code is accepted


Note: Specify the ResidenceCode only for the passenger who is also a payer. If the payer is not a passenger then ResidenceCode of the payer can be specified for any passenger.


If there are more than ResidenceCode found then the service will take the first Adult’s ResidenceCode

Age

 


O

Though this is an optional element, it is recommended to provide passenger’s age, as it will be used to identify if the passenger is a young adult.


Note: UK Air Passenger Duty (APD) is not applicable to “young adults” aged 12 to 15 years inclusive for travel after 1 March 2016

Value

 

FlightPriceRQ/Travelers/Traveler/AnonymousTraveler/Age/Value

M [Choice]

Example: 15

BirthDate

 

FlightPriceRQ/Travelers/Traveler/AnonymousTraveler/Age/BirthDate

M [Choice]

Date of birth in “YYYY-MM-DD” format

Example: 2002-01-01

RecognizedTraveler



O


PTC


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/PTC

O

Passenger Type Code


BA accepts the following passenger type codes


ADT

CHD

INF


If any other passenger type code is passed then ADT price will be returned


Note: This is an optional element in NDC schema but for calling BA service this must be passed

ResidenceCode


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/ResidenceCode

O

This is where the customer’s billing country where the payment card is registered or the country of residence of the customer should be specified


Specify this element if known as it would help decide the applicable payment cards.  Applicable payment cards are decided based on agent’s country and customers billing country. If customer’s billing country is not specified then applicable payment cards will be returned based on agents country only


Example: GB


Please note only country code is accepted


Note: Specify the ResidenceCode only for the passenger who is also a payer. If the payer is not a passenger then ResidenceCode can be specified for any passenger.


If there are more than ResidenceCode found then the service will take the first Adult’s ResidenceCode

Age



O

Though this is an optional element, it is recommended to provide passenger’s age, as it will be used to identify if the passenger is a young adult.


Note: UK Air Passenger Duty (APD) is not applicable to “young adults” aged 12 to 15 years inclusive for travel after 1 March 2016

Value


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/Age/Value

M [Choice]

Example: 15

BirthDate


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/Age/BirthDate

M [Choice]

Date of birth in “YYYY-MM-DD” format

Example: 2002-01-01

Name



M


Surname


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/ Name/Surname

M

Example: SMITH

Given


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/Name/Given

O

Example: WILL

Title


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/Name/Title

O

Example: MR

Middle


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/Name/Middle

O

Example: G

FQTVs



O

Specify passenger’s frequent flyer information


The FQTV details will be used to determine the seat price. Service will validate the FQTV’s provided and will consider FQTV details to determine seat price only if it is valid

AirlineID


FlightPriceRQ/Travelers/Traveler/RecognizedTraveler/FQTVs/AirlineID

M

Frequent flyer airline code

Example: BA

Account



O


Number


FlightPriceRQ/Travelers/Traveler/KnownTraveler /FQTVs/Account/Number

M

Frequent flyer number

Example: 12345678

Query



M


OriginDestination



M

Origin and destination (O&D) details. This must be repeated for each O&D. If the request is for EDI-AMS return then this must be repeated twice once for EDI-AMS and once for AMS-EDI

Flight




M

List of flights within an O&D. If the request is for EDI-AMS return with each O&D containing 2 flights (EDILHR and LHRAMS; AMSLHR and LHREDI) then for each O&D Flight should be repeated twice once for EDILHR and once for LHRAMS

Departure



M

Departure details

AirportCode


FlightPriceRQ/Query/OriginDestination/Flight/Departure/AirportCode


M

Departure airport IATA code

Example: LHR

Date


FlightPriceRQ/Query/OriginDestination/Flight/Departure/Date


M

Local Departure date i.e. local to the departure location

Example: 2015-07-01

Time


FlightPriceRQ/Query/OriginDestination/Flight/Departure/Time


O

Example: 19:55

 

Note: This is an optional element in NDC schema but for calling BA service this must be passed

Arrival



M

Arrival details

AirportCode



FlightPriceRQ/Query/OriginDestination/Flight/Arrival/AirportCode


M

Arrival airport IATA code

Example: AMS

Date


FlightPriceRQ/Query/OriginDestination/Flight/Arrival/Date

O

Local Arrival date i.e. local to the arrival location

Example: 2015-07-01


Note: This is an optional element in NDC schema but for calling BA service this must be passed

Time


FlightPriceRQ/Query/OriginDestination/Flight/Arrival/Time

O

Example: 19:55

 

Note: This is an optional element in NDC schema but for calling BA service this must be passed

MarketingCarrier



M

Marketing carrier information

AirlineID


FlightPriceRQ/Query/ OriginDestination/ Flight/MarketingCarrier/ AirlineID

M

Marketing carrier code

Example: BA

FlightNumber


FlightPriceRQ/Query/ OriginDestination/ Flight/MarketingCarrier/ FlightNumber

M

Marketing flight number

Example: 0428

Equipment



O

Aircraft information


Note: This is an optional element in NDC schema but for calling BA service this must be passed

AircraftCode


FlightPriceRQ/Query/ OriginDestination/Flight/Equipment/AircraftCode

M

Example: 767

CabinType



O

This must be passed only when the PriceClass returned for this flight from AirShoppingRS was

 “Handbaggageonly” or “Basic”


Note: Cabin Type need not be provided in the request to quote “Basic” product if fare basis code for each flight segment is provided. However, the service still works if CabinType is passed in the request

Code


FlightPriceRQ/Query/OriginDestination/Flight/CabinType/Code

M

Always pass “HBO”


Take this value from AirShoppingRS/DataLists/PriceClassList/PriceClass/Code

ClassOfService



O

Booking/Selling class details


Note: This is an optional element in NDC schema but for calling BA service this must be passed

refs


FlightPriceRQ/Query/OriginDestination/Flight/ClassOfService/refs (Attribute)

O

Reference to a fare basis code for all passenger types for this flight segment

 

Examples:

FBCODE1ADT

FBCODE1CHD

FBCODE1INF


Notes:


1.      The service expects client to provide fare basis code in FlightPriceRQ in order to quote correct fare product


2.      It is recommended that the same reference returned in AirShoppingRS is provided  in FlightPriceRQ


3.      More than one fare basis code should be separated by a space

Code


FlightPriceRQ/Query/OriginDestination/Flight/ClassOfService/Code

M

Booking/Selling class

Example: O

MarketingName



FlightPriceRQ/Query/ Flight/ClassOfService/MarketingName


O

The cabin this selling class belongs to

Example: Euro Traveller



Preference



O

Populate this section only when Leisure Fare is requested

FarePreferences



O


Types



O


Type



M


Code


FlightPriceRQ/Preference/FarePreferences/Types/ Type/Code

M

IATA PADIS Codeset 9910 - Fare qualifier


The code should always be


758


Where

758 means Leisure fare

Definition


Leisure fare should be specified here 

Possible Leisure Fare types are

  1. Inclusive Tour
  2. Contract Bulk
  3. Private Fare Adult
  4. Marine
  5. Humanitarian

Info

Status
colourBlue
title16.1 Improvement - New IT Fare Product
 

As part of ongoing commitment to improving British Airways New Distribution Capability, we are pleased to announce an enhancement to our Tour Operator fares. From February 2019,  British Airways will offer two separate Tour Operator products:

  1. Tour Operator Deferred – Longer Ticketing Time Limit
  2. Tour Operator Semi - Deferred – Shorter Ticketing Time Limit

The earlier-ticketing, Semi-Deferred fares will be differentiated only by their name from the Deferred Fares in NDC. In line with the existing process, agents who wish to book a British Airways Leisure fare product must specify the name as part of the AirShopping request. To book one of the new products agents must use either “Tour Operator Deferred” or “Tour Operator Semi - Deferred” in the Fare Preference section of the API.

This change only impacts the AirShopping and FlightPrice APIs. No further changes are required in order to book the products.  

Here is an XML sample for the two products:

Code Block
<Type><Code>758</Code><Definition>Tour Operator Deferred</Definition></Type>
<Type><Code>758</Code><Definition>Tour Operator Semi Deferred</Definition></Type>

The Leisure Fare name is assigned to the definition element.

Warning
titleImportant

For the purposes of testing, this enhancement:

  • Pre-Live Switch back to inclusive tour fares  
  • Inclusive Tour fares in Pre-Live:   to   
  • Tour Operator fares in Pre-Live from  
  • Tour Operator fares in Live from  


FlightPriceRQ/Preference/FarePreferences/Types/ Type/Definition

O


DataLists





FareList



O

Fare basis code for each passenger type for each flight  segment should be provided in this section

FareGroup



M

This is a list and will be repeated to return unique fare basis code for the requested itinerary

ListKey (Attribute)


FlightPriceRQ/DataLists/FareList/FareGroup/ListKey (Attribute)

M

Example: FBCODE1ADT

Fare



M


FareCode



M


Code


FlightPriceRQ/DataLists/FareList/FareGroup/Fare/ FareCode/Code

M

Will always be “70J”

FareBasisCode



M


Code


FlightPriceRQ/DataLists/FareList/FareGroup/ FareBasisCode/Code

M

Fare basis code

Example: VZ0RIN