• Register

Order Change

Click here for full OrderChange Technical Specification

The Order Change API allows an existing Order to be updated.

The service uses IATA NDC OrderChangeRQ & OrderViewRS v16.1 schema

The Order Change API currently supports the following types of update

  1. addition of paid or free seating items
  2. addition of excess baggage
  3. addition of paid or free meal
  4. change the date and time of an existing booking
  5. upgrade of an existing booking
  6. addition of disability assistance needed
  7. inclusion of additional passenger information
  8. update passenger information

Version Information

The most recent version of the Order Change API is version 2. Previous versions are shown below.

Version Status End-of-life date
v01 Current n/a

API Endpoints

Order Change has a SOAP API endpoint.

The endpoints available are:

Endpoint URL
Live n/a
Test https://test.api.ba.com/selling-distribution/OrderChange/V2

API Methods

Method URL Description
POST /selling-distribution/OrderChange/V2 changes an existing order

HTTP Headers

Header Name Description Mandatory? Example
client-key Your unique key used to authorise access to the API. Yes n/a

Search parameters

The various search parameters are described below:

Name Description Format Mandatory / optional Example Allowed values
OrderChangeRQ
@Version message version m 2.0 any
@PrimaryLangID m EN any
@AltLangID m EN any
Party/Sender/TravelAgencySender
Name Sender name alphabetic m Travel Agent plc any
Name/ Contacts/ Contact/ EmailContact/ Address Travel agency email address email address o anagent@travelagent.com any
IATA_Number IATA number of the agent that created the order numeric mandatory (either) use your own IATA or non-IATA number any
OtherIDs/OtherID non-IATA number of the agent that created the order
AgencyID Agency ID alphanumeric m this can be the same as Name any
Party/Participants/Participant
@SequenceNumber attribute sequence number of this participant in the message flow numeric m 1 add 1 to the highest Participant@SequenceNumber
Name Participant name alphabetic m aggregator plc any
ID Participant ID alphanumeric m this can be the same as Name any
Query/Passengers/Passenger
@ObjectKey attribute reference to a Traveller any m T1 any
PTC Passenger type code alphabetic m ADT ADT, CHD, INF are supported
PassengerAssociation association to an INF passenger alphanumeric o T2 any
Age/BirthDate passenger date of birth YYYY-MM-DD o (required where any flight is a "secure flight") 1965-10-01
Name/Surname a surname alphabetic SMITH any
Name/Given a given name alphabetic JOHN any
Name/Title a title alphabetic MR any
Name/Contacts/Contact/AddressContact (only required when payment is BSP payment)
Street street part of address (repeat as required) alphanumeric m (max 2) 1 ACACIA GARDENS any
PostalCode postcode (or ZIP code) alphanumeric AB1 1AB any
CountryCode country code alphabetic GB ISO country codes
Order
OrderID @Owner attribute m BA any
OrderID m ABC123 any
Order/OrderItems/OrderItem
OrderItemID m any
Order/OrderItems/OrderItem/SeatItem
Price/ Total @Code attribute alphabetic m any
Price/ Total numeric m any
Descriptions/ Description/ Text type of seat GeneralSeat GeneralSeat, ExitRow
Location/ Column Column of seat selected (eg 12A) string m A any
Location/ Row/ Number Row of seat selected (eg 12A) string m 12 any
SeatAssociation/ SegmentReferences
SeatAssociation/ TravelerReferences
Payments/Payment/Method/PaymentCard (section optional)
CardType payment card type alpha m CREDIT CREDIT, DEBIT
CardCode card scheme code 2 alpha m VI use one provided in the FlightPriceRS
CardNumber card number numeric m 4111111111111111 test Visa credit card
SeriesCode card security code (CVC) numeric m 123
CardHolderName @refs attribute reference to passenger who is payer aplhanumeric m T1
Amount @Code currency code alphabetic m GBP
Amount surcharge amount for using this payment type numeric m 5
Payments/Payment/Method/PaymentCard/CardholderBillingAddress
Street street part of address (repeat as required) alphanumeric m (max 2) 1 ACACIA GARDENS any
PostalCode postcode (or ZIP code) alphanumeric m AB1 1AB any
CountryCode country code alphabetic m GB ISO country codes
County postal county name alphabetic o MIDDLESEX
Payments/Payment/Method/PaymentCard/EffectiveExpireDate
Effective Effective validity date of payment card MMYY o 1214 any
Expiration Expiration validity date of payment card MMYY m 1219 any
Payments/Payment
Amount @Code currency code alphabetic m GBP
Amount total amount being paid using this payment type numeric m 500
Metadata/Other/OtherMetadata/LanguageMetadatas
LanguageMetadata @MetadataKey attribute met any
LanguageMetadata/ Application specify which language to use for response messages; email communications Display, Written any
LanguageMetadata/ Code_ISO the preferred language EN any
Metadata/Other/OtherMetadata/CurrencyMetadatas
CurrencyMetadata @MetadataKey attribute define characteristics of currency used in message GBP any
CurrencyMetadata/ Decimals currency decimal places numeric 2 any

Search parameters may be submitted in any order and are case insensitive.

Response elements

The following error codes may be returned by the service

OrderViewRS/InfoGroup/Error/Code Meaning Description
200 Ok The request was successful and at least 1 item is being returned
400 Bad Request Sent when the consumer sends a malformed request to the service. The actual error message is returned in the response body
401 Unauthorised Returned when the consumer is not authenticated to use the REST API
403 Forbidden Returned when the consumer is authenticated but does not have permission to access the Resource
406 Not Acceptable Returned when the Accept header contains version / mime type info which we don't support
500 Internal Server Error Something has gone wrong - please raise this as a bug with us
503 Service Unavailable Returned when the server is temporarily unable to handle the request

Supported Status Codes

You can view the standard status codes returned by our APIs here.