Field Reference Guide

Field reference: airlineDetails

All fields are optional. If you send a field, it must pass its rule. Lengths are in characters.

Formats used below

FormatRule
Alphanumericletters and digits only, no spaces (^[0-9A-Za-z]+$)
Alphanumeric + spaceletters, digits and spaces (^[0-9A-Za-z ]+$)
Decimalan amount as a string: digits with an optional . part, e.g. "3500.00". No sign, commas or currency (^[0-9]+(\.[0-9]+)?$)
Dateyyyy-MM-dd, a real calendar date
TimeHH:mm or HH:mm:ss plus a zone: Z, +04, +04:00 or +0400. Use the local time of the airport
Anyany characters

Array (list) limits

The payload has three arrays. All are optional. If you send one, its number of items must be within these limits:

ArrayMin itemsMax itemsError if exceeded
airlineDetails.passengers013passengers must contain 13 passengers or fewer
airlineDetails.itinerary.legs09legs must contain 9 trip legs or fewer
airlineDetails.ticket.taxOrFees1 (when sent)no limittaxOrFees must contain at least 1 item when supplied
  • A breach returns 400 with errorCode: invalidFieldValue.

  • An empty passengers or legs array ([]) is accepted. An empty taxOrFees array is rejected, so leave taxOrFees out if you have no taxes or fees.

  • Each item inside an array is validated with the rules in the legs[], passengers[] and taxOrFees[] tables below.

  • The capture airline object has no arrays. It carries one passenger per capture.

airlineDetails

FieldDescriptionTypeLengthFormat / allowed values
bookingReferenceNumberBooking reference (PNR / record locator)string6–15Alphanumeric
documentTypeType of airline documentenumn/asee Allowed values below
transactionTypeType of airline transactionenumn/asee Allowed values below
planNumberPlan number supplied by the airline for this bookingstring2Alphanumeric
itineraryTrip detailsobjectn/aitinerary table below
passengersPassengers on the bookingarray0–13 itemspassengers[] table below
ticketTicket detailsobjectn/aticket table below

airlineDetails.itinerary

FieldDescriptionTypeLengthFormat / allowed values
numberInPartyNumber of passengers on the bookingnumbern/awhole number 1–999
originCountryCountry where the trip startsstring3ISO 3166-1 alpha-3, upper case (e.g. ARE)
legsFlight legsarray0–9 itemslegs[] table below

airlineDetails.itinerary.legs[]

FieldDescriptionTypeLengthFormat / allowed values
carrierCodeAirline operating the legstring2, 3 or 6IATA code (EK), 3-digit code (176) or both (EK/176)
customerCodeCustomer code for the legstringup to 27Alphanumeric
conjunctionTicketNumberTicket holding this leg's coupon (itineraries with more than 4 legs)string11–16Alphanumeric
couponNumberCoupon number for this legstring1Alphanumeric
departureAirportDeparture airportstring3IATA airport code, upper case (e.g. DXB)
departureDateDeparture datestringn/aDate
departureTimeDeparture time (local to departure airport)stringn/aTime
departureTaxDeparture tax for the legstring1–14Decimal
destinationAirportArrival airportstring3IATA airport code, upper case (e.g. LHR)
destinationArrivalDateArrival date (local to arrival airport)stringn/aDate
destinationArrivalTimeArrival time (local to arrival airport)stringn/aTime
endorsementsRestrictionsEndorsements / restrictions (e.g. non-refundable)string1–20Alphanumeric
exchangeTicketNumberNew ticket number issued on exchangestring11–16Alphanumeric
fareFare for the legstring1–14Decimal
fareBasisFare basis codestring1–24Alphanumeric + space
feesFees for the legstring1–14Decimal
flightNumberFlight numberstring4–6Alphanumeric (e.g. EK001)
stopoverPermittedWhether a stopover is permittedbooleann/atrue / false
taxesTaxes for the legstring1–14Decimal
travelClassClass of service codestring1–3Alphanumeric (e.g. F, J, Y)

airlineDetails.passengers[]

FieldDescriptionTypeLengthFormat / allowed values
titleTitle (e.g. MR, MRS)string1–20Any
firstNameFirst namestring1–50Any
middleNameMiddle namestring1–50Any
lastNameLast namestring1–20Any
frequentFlyerNumberFrequent flyer / loyalty numberstring1–20Any
specificInformationPassenger-specific information on the ticketstring1–59Alphanumeric
📘

Settling per passenger

If you settle per passenger, put the passenger's name and ticket number on each capture (Capture with multi-clearing data). Otherwise the first passenger in this list is used for every capture.

airlineDetails.ticket

FieldDescriptionTypeLengthFormat / allowed values
ticketNumberAirline ticket numberstring11–16Alphanumeric
eTicketWhether an electronic ticket was issuedbooleann/atrue / false
restrictedWhether the ticket is restricted (non-refundable)booleann/atrue / false
conjunctionTicketIndicatorWhether a conjunction ticket (extra coupons) was issuedbooleann/atrue / false
exchangedTicketNumberOriginal ticket number, for an exchanged ticketstring11–16Alphanumeric
issueWhere and by whom the ticket was issuedobjectn/aissue table below
taxOrFeesBreakdown of taxes and feesarray1 or more items (when sent)taxOrFees[] table below
totalFareTotal fare for all legsstring1–14Decimal
totalFeesTotal fees for all legsstring1–14Decimal
totalTaxesTotal taxes for all legsstring1–14Decimal
📘

Check your totals

The taxOrFees amounts should add up to totalFees + totalTaxes.

airlineDetails.ticket.issue

FieldDescriptionTypeLengthFormat / allowed values
addressTicket issue addressstring1–16Any
carrierCodeAirline issuing the ticketstring2, 3 or 6IATA code (EK), 3-digit code (176) or both (EK/176)
carrierNameName of the issuing airlinestring1–25Alphanumeric, no spaces (e.g. Emirates)
cityCity where the ticket was issuedstring1–100Any
countryCountry where the ticket was issuedstring3ISO 3166-1 alpha-3, upper case
dateTicket issue datestringn/aDate
travelAgentCodeTravel agent industry codestring8–9Alphanumeric
travelAgentNameTravel agent namestring1–30letters, digits, space and . , ' & / \ ( ) -

airlineDetails.ticket.taxOrFees[]

FieldDescriptionTypeLengthFormat / allowed values
amountTax / charge / fee amountstring1–14Decimal
typeIATA tax / charge / fee codestring3Alphanumeric (e.g. YQT, UKS, TT1)

Field reference: capture airline

FieldMandatoryTypeLengthFormat / allowed valuesDescription
multiClrSeqNumYesstring2two digits (^[0-9]{2}$)Position of this capture in the set, e.g. 01
multiClrCntNumYesstring2two digits (^[0-9]{2}$)Total captures in the set, e.g. 03
multiClrIndYesstring1M or F (lower case accepted)M = more to follow, F = final
ticketNumberNostring11–16AlphanumericTicket number for this capture
passengerFirstNameNostring1–50AnyPassenger first name for this capture
passengerMiddleNameNostring1–50AnyPassenger middle name for this capture
passengerLastNameNostring1–20AnyPassenger last name for this capture

Allowed values

Enum values are case-sensitive: send them exactly as listed.

documentType

ValueValue
ADDITIONAL_COLLECTIONGROUP_TICKET
AGENCY_EXCHANGE_ORDERIN_FLIGHT_ADJUSTMENT
AGENCY_GROUP_TICKETIN_FLIGHT_CHARGES
AGENCY_MISCELLANEOUS_CHARGE_ORDERIN_FLIGHT_DUTY_FREE_PURCHASE
AGENCY_PASSENGER_TICKETIN_FLIGHT_MERCHANDISE_ORDERED
AGENCY_TOUR_ORDER_OR_VOUCHERIN_FLIGHT_PHONE_CHARGES
AIR_FREIGHTKENNEL_CHARGE
ANIMAL_TRANSPORTATION_CHARGELOST_TICKET_APPLICATION
CATALOGUE_MERCHANDISE_ORDEREDMISCELLANEOUS_CHARGE_ORDER_OR_PREPAID_TICKET_ADVICE
CLUB_MEMBERSHIP_FEEMISCELLANEOUS_TAXES_FEES
COUPON_BOOKPASSENGER_TICKET
CREDIT_CLASS_SERVICE_ADJUSTMENTSELF_SERVICE_TICKETS
CREDIT_DENIED_BOARDINGSENIOR_CITIZEN_DISCOUNT_BOOKLETS
CREDIT_EXCHANGE_REFUNDSMALL_PACKAGE_DELIVERY
CREDIT_LOST_TICKET_REFUNDSPECIAL_SERVICE_TICKET
CREDIT_MISCELLANEOUS_REFUNDSUPPORTED_REFUND
CREDIT_MULTIPLE_UNUSED_TICKETSTICKET_BY_MAIL
CREDIT_OVERCHARGE_ADJUSTMENTTOUR_DEPOSIT
CREDIT_UNUSED_TRANSPORTATIONTOUR_ORDER_VOUCHER
DEBT_ADJUSTMENT_DUPLICATE_REFUND_OR_USEUNDERCHARGE_ADJUSTMENT
DUTY_FREE_SALEUNSUPPORTED_REFUND
EXCESS_BAGGAGEUPGRADE_CHARGE
EXCHANGE_ADJUSTMENTVENDOR_REFUND_CREDIT
EXCHANGE_ORDERVENDOR_SALE
FIREARMS_CASE
FREQUENT_FLYER_FEE_OR_PURCHASE
FREQUENT_FLYER_FULFILLMENT
FREQUENT_FLYER_OVERNIGHT_DELIVERY_CHARGE

transactionType

EXCHANGE_TICKET, MISCELLANEOUS_CHARGE, REFUND, REVERSAL, TICKET_PURCHASE, TOUR_ORDER

Other fixed values

FieldAllowed values
AirportsIATA 3-letter code, upper case (DXB, LHR)
CountriesISO 3166-1 alpha-3, upper case (ARE, GBR, JOR)
Carrier codesXX, 123 or XX/123
Booleanstrue / false (JSON booleans, not strings)
numberInPartyJSON number, 1–999
multiClrIndM / F
multiClrSeqNum, multiClrCntNum00–99
passengers array0–13 items
legs array0–9 items
taxOrFees arrayat least 1 item when sent, no maximum
© Network International LLC. All Rights Reserved.