Skip to main content

Error codes

JSON and NDC/XML share the same ERR-* catalog. JSON returns them in the response envelope (error.code); XML returns IATA Error elements with the same code text.

Endpoint pages list the codes that endpoint can return. This page is the cross-cutting reference plus the failures partners hit most often when integrating.

Common create / pay failures

SymptomLikely codeFix
Missing or bad booking contactERR-1005 (JSON) / ERR-7004 (XML)Send contact with at least an email address (JSON) or an unreferenced ContactInfo (XML). See contacts.
Unsupported ContactPurposeTextERR-1004Only the primary booking contact can be set — leave it untagged, or tag it Primary.
Phone rejectedERR-1004Send a number that normalizes to E.164 (+1…, 00…, or 10-digit US/Canada).
Malformed emailERR-1004Fix the address format.
gender: "F" or "female" on JSON createERR-1005Use Male / Female, spelled exactly. See passengers.
Duplicate passenger IDs or infants > adultsERR-1005 / ERR-7003Unique IDs; at most one infant per adult.
Unsupported currencyERR-1004USD only. See payments.
Offer not found / expiredERR-3000 / ERR-3001Re-shop and re-price; offer IDs are short-lived.
Same passenger name already on that flight (sandbox)ERR-4001Change the test passenger name or travel date.
Payment amount ≠ live balance (XML)ERR-3006Set PaymentProcessingDetails > Amount to the current amount due.
Unsupported card brandERR-6001Use VI, CA, AX, or DS.
Payment declined / rejectedERR-6002Check card details; in test use 4111111111111111.
Token expiredERR-8000 / 401Fetch a new bearer token (≈30-minute lifetime).
Read-only API key on bookERR-8001Need full transaction (book) permissions.

Catalog

CodeTypical HTTPMeaning
ERR-1000400Malformed XML.
ERR-1002404Unsupported version segment in the path.
ERR-1003400Missing required XML element.
ERR-1004400Invalid field value (currency, contact type, phone, email, cabin, ancillary ID, …).
ERR-1005422Request validation failed (schema / business rules on the body).
ERR-1006422Origin or destination is not a valid market.
ERR-1009400Request body larger than 1 MiB (XML).
ERR-1010400Wrong Content-Type for NDC/XML (use application/xml or text/xml).
ERR-2002500Availability could not be processed upstream.
ERR-3000404Referenced offer could not be found.
ERR-3001404Referenced offer has expired.
ERR-3002400One or more offer items not found on the offer.
ERR-3003400Invalid / partial selection (including package reshop item selection).
ERR-3004400Reshop offer sent to OfferPrice / price offer — use quote instead.
ERR-3005400Shop offer sent to OrderQuote / quote order — use price / OfferPrice instead.
ERR-3006409Stated payment amount does not match the live amount due.
ERR-4000404Order not found.
ERR-4001400Order could not be created from the selected offer.
ERR-4002400Requested change could not be applied or quoted.
ERR-4006400Referenced journey not found on the order.
ERR-5000501Operation not currently supported (e.g. standalone OrderCancel).
ERR-6000422Payment method not supported.
ERR-6001422Card brand not supported.
ERR-6002400Payment rejected.
ERR-6005503Payment processing timed out.
ERR-7003422Infants exceed adults.
ERR-7004422Missing order contact information (XML).
ERR-7007400Passenger update rejected.
ERR-7008422Loyalty number unrecognized or does not match the passenger name.
ERR-8000401Missing or invalid API key or bearer token.
ERR-8001403API key not authorized for this request (permissions / agency mismatch).
ERR-8002503Authentication store unavailable.
ERR-9000503A required service is unavailable.
ERR-9001500Unexpected upstream response.
ERR-9002503Offer cache unavailable.
ERR-9003500Upstream booking / change / lookup failure.

JSON error bodies may also include error.fields naming the invalid property — check that map before retrying.