Order Detail
The Retrieve service allows to retrieve a booking from the Partner reservation system and returns all the details with its booking elements (e.g. passenger names, segments, flight info, class booked, etc.). Retrieve can be used for: checking on the success of ticket issue, ticket status, segments status, price breakdown etc.
Endpoint
Method: POST
URL: /json/orderDetail
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| └ authentication | Object | Yes | Authentication details |
| └ partnerId | String | Yes | Partner Id |
| └ sign | String | Yes | Signature for the request |
| └ data | Object | Yes | |
| └ orderNum | String | Yes | Unique order number on the Partner side |
Request Example
{
"authentication": {
"partnerId": "{{PARTNER_ID}}",
"sign": "{{SIGN}}"
},
"data": {
"orderNum": "917685547687690201"
}
}Response Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| └ errorCode | String | Yes | Error code, refer to Error Code List |
| └ errorMsg | String | Yes | Error message |
| └ data | Object | Yes | Only if the errorCode returns "0", returned data would not be null |
| └ orderStatus | String | Yes | Order Status, refer to Order Status List |
| └ orderNum | String | Yes | Unique order number on the Partner side |
| └ createdTime | String | No | Order creation time [yyyy-MM-ddTHH:mm:ss±HH:MM] |
| └ ticketTimeLimit | String | Yes | Ticket time limit [yyyy-MM-ddTHH:mm:ss±HH:MM] |
| └ pnr | String | Yes | A reference number in the Provider system. This value must be unique and not repeated across different orders of the Partner |
| └ passengers | [Object] | Yes | Passenger information |
| └ passengerId | String | Yes | Passenger sequence ID |
| └ firstName | String | Yes | First name |
| └ lastName | String | Yes | Last name |
| └ nationality | String | Yes | Nationality [country code] |
| └ psgType | String | Yes | Passenger type (ADT, CHD, INF) |
| └ gender | String | Yes | Gender, M or F |
| └ birthday | String | Yes | Birthday, format [yyyy-mm-dd] |
| └ cardType | String | Yes | Travel document type |
| └ cardNum | String | Yes | Travel document number |
| └ cardExpiredDate | String | Yes | Travel document expired date, format [yyyy-mm-dd] |
| └ solutions | [Object] | Yes | Pricing information |
| └ fareSource | String | No | Fare source type, e.g. Regular, Charter, NDC, B2B |
| └ category | String | No | Product type, e.g. VI (virtual interlining) |
| └ fareType | String | Yes | Fare type: Public or Private |
| └ validatingCarrier | String | Yes | Ticketing airline |
| └ currency | String | Yes | Currency code |
| └ adtFare | Number | Yes | Adult fare |
| └ adtTax | Number | Yes | Adult tax |
| └ chdFare | Number | No | Child fare |
| └ chdTax | Number | No | Child tax |
| └ infFare | Number | No | Infant fare |
| └ infTax | Number | No | Infant tax |
| └ tktFee | Number | No | Ticketing fee |
| └ adults | Integer | No | Number of adult passengers |
| └ children | Integer | No | Number of child passengers |
| └ infants | Integer | No | Number of infant passengers |
| └ baggageMap | Object | No | Baggage rules Map by passenger type (ADT, CHD, INF) |
| └ ADT | [Object] | No | Baggage rules for ADT |
| └ segmentIdList | [String] | Yes | Array of segment IDs (segments -> segmentId) |
| └ baggageAmount | String | No | Free baggage amount: (e.g., "1PC") |
| └ baggageWeight | String | No | Free baggage weight: Unity: KG - kilogram, LB - pounds (e.g., "23KG") |
| └ baggageSize | [String] | No | Baggage dimensions [L, W, H]: Unity: CM - centimeter, IN - inches (e.g., ["76CM", "50CM", "30CM"] or ["158CM"]) |
| └ carryOnAmount | String | No | Free carry-on amount: (e.g., "1PC") |
| └ carryOnWeight | String | No | Free carry-on weight: Unity: KG - kilogram, LB - pounds (e.g., "10KG") |
| └ carryOnSize | [String] | No | Carry-on dimensions [L, W, H]: Unity: CM - centimeter, IN - inches (e.g., ["55CM", "40CM", "20CM"] or ["115CM"]) |
| └ CHD | [Object] | No | Baggage rules for CHD (fields are the same as ADT) |
| └ INF | [Object] | No | Baggage rules for INF (fields are the same as ADT) |
| └ journeys | [Object] | Yes | Itinerary information |
| └ segments | [Object] | Yes | Segment information |
| └ segmentId | String | Yes | Segment ID, unique identification |
| └ marketingCarrier | String | Yes | Marketing Carrier [IATA airline code] |
| └ flightNum | Integer | Yes | Flight Number |
| └ operatingCarrier | String | No | Operating Carrier [IATA airline code] |
| └ equipment | String | No | Aircraft equipment IATA-code |
| └ cabinClass | String | Yes | Cabin class, refer to Сabin Class List |
| └ bookingCode | String | Yes | Booking Code |
| └ departure | String | Yes | Departure [IATA airport code] |
| └ arrival | String | Yes | Arrival [IATA airport code] |
| └ departureTerminal | String | No | Departure Terminal |
| └ arrivalTerminal | String | No | Arrival Terminal |
| └ flightTime | Integer | Yes | Fly Time, Unit: minutes |
| └ departureDate | String | Yes | Departure Date [yyyy-MM-dd](Local time of departure location) |
| └ departureTime | String | Yes | Departure Time [HH:mm](Local time of departure location) |
| └ arrivalDate | String | Yes | Arrival Date [yyyy-MM-dd](Local time of arrival location) |
| └ arrivalTime | String | Yes | Arrival Time [HH:mm](Local time of arrival location) |
| └ fareBasis | String | Yes | Fare basis code |
| └ stops | [Object] | No | Details about technical stops |
| └ location | String | No | Airport IATA code of the stop location |
| └ arrivalDate | String | No | Technical stop arrival date (yyyy-MM-dd) |
| └ arrivalTime | String | No | Technical stop arrival time (HH:mm) |
| └ departureDate | String | No | Technical stop departure date (yyyy-MM-dd) |
| └ departureTime | String | No | Technical stop departure time (HH:mm) |
| └ pnrList | [Object] | No | PNR list as per passengers and flight segments. More information you can find here: PNRList explanation |
| └ segmentId | String | Yes | Segment ID, unique identification (journeys -> segments -> segmentId) |
| └ ticketNums | [Object] | Yes | Passengers and corresponding ticket information |
| └ airPnr | String | Yes | Airline PNR |
| └ ticketNum | String | No | Ticket number |
| └ passengerId | String | Yes | Passenger sequence ID. Consistent with the passengerId under each passenger |
Response Example
{
"errorCode": "0",
"errorMsg": "ok",
"data": {
"orderStatus": "TO_BE_PAID",
"orderNum": "917685547687690201",
"createdTime": "2026-01-16T09:12:48+00:00",
"ticketTimeLimit": "2026-02-28T10:00:00+00:00",
"pnr": "WCREDC",
"passengers": [
{
"passengerId": "1",
"firstName": "GEORGE",
"lastName": "TAYLOR",
"nationality": "GB",
"psgType": "ADT",
"gender": "M",
"birthday": "1998-04-26",
"cardType": "P",
"cardNum": "6970406",
"cardExpiredDate": "2030-04-26"
},
{
"passengerId": "2",
"firstName": "SOPHIA",
"lastName": "TAYLOR",
"nationality": "GB",
"psgType": "CHD",
"gender": "F",
"birthday": "2023-06-14",
"cardType": "P",
"cardNum": "54645854",
"cardExpiredDate": "2028-07-25"
}
],
"solutions": [
{
"fareSource": "Regular",
"category": "VI",
"fareType": "Private",
"validatingCarrier": "W9",
"currency": "EUR",
"adtFare": 146.93,
"adtTax": 0.86,
"chdFare": 146.93,
"chdTax": 0.86,
"infFare": null,
"infTax": null,
"tktFee": 0,
"baggageMap": {
"ADT": [
{
"segmentIdList": [
"1"
],
"baggageAmount": "1PC",
"baggageWeight": "23KG",
"baggageSize": ["76CM", "50CM", "30CM"],
"carryOnAmount": "1PC",
"carryOnWeight": "10KG",
"carryOnSize": ["55CM", "40CM", "20CM"]
},
{
"segmentIdList": [
"2"
],
"baggageAmount": "1PC",
"baggageWeight": "23KG",
"baggageSize": ["76CM", "50CM", "30CM"],
"carryOnAmount": "1PC",
"carryOnWeight": "10KG",
"carryOnSize": ["55CM", "40CM", "20CM"]
}
],
"CHD": [
{
"segmentIdList": [
"1"
],
"baggageAmount": "1PC",
"baggageWeight": "23KG",
"baggageSize": ["76CM", "50CM", "30CM"],
"carryOnAmount": "1PC",
"carryOnWeight": "10KG",
"carryOnSize": ["55CM", "40CM", "20CM"]
},
{
"segmentIdList": [
"2"
],
"baggageAmount": "1PC",
"baggageWeight": "23KG",
"baggageSize": ["76CM", "50CM", "30CM"],
"carryOnAmount": "1PC",
"carryOnWeight": "10KG",
"carryOnSize": ["55CM", "40CM", "20CM"]
}
]
}
}
],
"journeys": [
{
"segments": [
{
"segmentId": "1",
"marketingCarrier": "W9",
"flightNum": "5772",
"operatingCarrier": null,
"equipment": "JET",
"cabinClass": "Economy",
"bookingCode": "X",
"departure": "IST",
"arrival": "LGW",
"departureTerminal": "",
"arrivalTerminal": "0",
"flightTime": 245,
"departureDate": "2026-08-14",
"departureTime": "16:50",
"arrivalDate": "2026-08-15",
"arrivalTime": "18:55",
"fareBasis": "YRT",
"stops": [
{
"location": "IST",
"arrivalDate": "2026-08-15",
"arrivalTime": "10:00",
"departureDate": "2026-08-15",
"departureTime": "12:30"
}
]
}
]
},
{
"segments": [
{
"segmentId": "2",
"marketingCarrier": "W9",
"flightNum": "5729",
"operatingCarrier": null,
"equipment": "JET",
"cabinClass": "Economy",
"bookingCode": "X",
"departure": "LGW",
"arrival": "IST",
"departureTerminal": "S",
"arrivalTerminal": "",
"flightTime": 240,
"departureDate": "2026-08-22",
"departureTime": "13:35",
"arrivalDate": "2026-08-22",
"arrivalTime": "19:35",
"fareBasis": "YRT",
"stops": null
}
]
}
],
"pnrList": [
{
"segmentId": "1",
"ticketNums": [
{
"airPnr": "AAAAAA",
"ticketNum": "333-544235677",
"passengerId": "1"
},
{
"airPnr": "AAAAAA",
"ticketNum": "333-544235111",
"passengerId": "2"
}
]
},
{
"segmentId": "2",
"ticketNums": [
{
"airPnr": "BBBBBB",
"ticketNum": "333-544235678",
"passengerId": "1"
},
{
"airPnr": "CCCCCC",
"ticketNum": "333-544235222",
"passengerId": "2"
}
]
}
]
}
}PnrList explanation
pnrList - PNR list as per passengers and flight segments. If the order has not been issued, this object should be returned empty:
"pnrList": []. If the order has been issued, all fields in this object must be filled, except for"ticketNum"if the Partner's provider does not return it.segmentId - Segment ID, unique identification. It takes the value from the
Response -> data -> journeys -> segments -> segmentId.ticketNums - Passengers and corresponding ticket information.
airPnr - Airline PNR. This parameter must always be provided without exceptions.
If"airPnr"is the same for multiple segments or passengers, the value of this field should be duplicated accordingly.
INFO
It is important not to confuse "airPnr" (Airline PNR) with the order "pnr". The order "pnr" identifies the entire booking in provider's system, while the "airPnr" is the vendor locator generated directly by the operating airline. Passengers must use the "airPnr" for online check-in and booking management on the airline's official website.
ticketNum - Ticket number. If the order has been issued, this field must be filled in, except when the Partner's provider does not return it (for example, for LCC content).
If"ticketNum"is the same for multiple segments or passengers, the value of this field should be duplicated accordingly.passengerId - Passenger sequence ID. Consistent with the
passengerIdunder each passenger.
Error Code List
| errorCode | errorMsg | Description |
|---|---|---|
| 0 | ok | Request has been processed successfully |
| S001 | System error | System error |
| S002 | Timeout | Request timeout |
| P001 | - | Parameter is illegal |
| B002 | Partner is not exists. | PartnerID does not exist |
| B003 | Illegal sign | Illegal sign. Please check your signature |
| B048 | Invalid buyer | Request buyer is not matched with order |
| B037 | Order is not exists. | Order is not exist |