PayValid

  • Purpose: Used to verify if the current order is eligible for payment, ensuring a high success rate for ticket issuance.
  • Request: POST
  • Encryption: No

Request

Name Type Required Description
requestId string Unique identifier for the request, ensuring uniqueness across various interfaces in the booking process. 32 characters in length.
orderNo string AeroHub’s order number, 20 characters in length. Suppliers need to save this, as it is used to associate with the ticket issuance process.
tripType int Type of trip: 1 for one-way, 2 for round trip. If 1 or 2 is passed, it means this search only requires trips of this type.
sessionId string Session identifier for the supplier to link various interfaces in the booking process. Consists of alphanumeric characters, maximum length 40 characters.
routing object/routing Element Itinerary and pricing information, refer to the object/routing Element in the Order interface.
pnrCode string PNR code used for quoting (holding space).
channelCode string ⬜️ Sales channel code. For specific sales channels, AeroHub will agree with suppliers on special ticketing or after-sales requirements.

object/routing Element

Name Type Required Description
data string Raw data from the Routing response of the Order interface, used for internal business correlation by suppliers.
fromSegments array/Segment Element Outbound itinerary information.
retSegments array/Segment Element ⬜️ Return itinerary information.

array/Segment Element

Name Type Required Description
marketingCarrier string Airline code using IATA two-letter code standard, corresponding to the first two digits in flightNumber.
depAirport string Departure airport code using IATA three-letter code standard.
depTime string Departure date and time (local time), format: YYYYMMDDHHMM, e.g., 202303100300 for March 10, 2023, 3:00 AM.
arrAirport string Arrival airport code using IATA three-letter code standard.
arrTime string Arrival date and time (local time), format: YYYYMMDDHHMM, e.g., 202303101305 for March 10, 2023, 1:05 PM.
stopCities string ⬜️ Transit cities, separated by ‘/‘, using ISO 3166 three-letter codes as the standard.
codeShare bool Whether the flight is a codeshare flight. True for codeshare, false otherwise. If true, operatingCarrier and operatingFlightNo must be returned.
seatClass string Cabin class.
aircraftCode string Aircraft type, using IATA three-letter code as the standard.
flightNumber string Flight number, e.g., CA123.

Sample Request:

{
    "requestId": "bc3461520668454e",
    "orderNo": "F1726885264686714880",
    "tripType": 2,
    "sessionId": "aNBOGd3p7Kf72ALZOQY",
    "routing": {
        "data": "DST_djlfOUNCMkNCSl9QVkd",
        "fromSegments": [{
            "marketingCarrier": "9C",
            "depAirport": "PVG",
            "depTime": "202302100915",
            "arrAirport": "HKG",
            "arrTime": "202302101220",
            "stopCities": "",
            "codeShare": false,
            "seatClass": "V",
            "aircraftCode": "",
            "flightNumber": "9C8921"
        }],
        "retSegments": [{
            "marketingCarrier": "9C",
            "depAirport": "HKG",
            "depTime": "202302151320",
            "arrAirport": "PVG",
            "arrTime": "202302151545",
            "stopCities": "",
            "codeShare": false,
            "seatClass": "V",
            "aircraftCode": "",
            "flightNumber": "9C8922"
        }],
    },
    "pnrCode":"R17ZCV",
    "channelCode": ""
}

Response

Name Type Required Description
marketErrorCode int Supplier system error code for assisting AeroHub and the supplier in troubleshooting.
marketErrorMsg string Supplier system error description. Provide the true error reason, with a length less than 300 characters.
sessionId string Session identifier for the supplier, linking various interfaces in the booking process. Consists of alphanumeric characters, maximum length 40 characters.
orderNo string Supplier’s own system order number, maximum 30 characters. AeroHub will record this field for later tracking.
routing object Itinerary and pricing information, referring to the object/routing Element in the Order interface.

Success Response:

{
    "marketErrorCode": 200,
    "marketErrorMsg": "Successful",
    "sessionId": "aNBOGd3p7Kf72ALZOQY",
    "orderNo": "231121164918540071",
    "routing": {
        "data": "DST_djlfOUNCMkNCSl9QVkdfSEtHXzIwMj",
        "fromSegments": [{
            "marketingCarrier": "9C",
            "depAirport": "PVG",
            "depTime": "202302100915",
            "arrAirport": "HKG",
            "arrTime": "202302101220",
            "seatGrade": "",
            "seatClass": "V",
            "flightNumber": "9C8921",
            "codeShare": false,
            "aircraftCode": "",
            "segmentNo": 1,
            "operatingCarrier": "",
            "operatingFlightNo": "",
            "stopCities": ""
        }],
        "retSegments": [{
            "marketingCarrier": "9C",
            "depAirport": "HKG",
            "depTime": "202302151320",
            "arrAirport": "PVG",
            "arrTime": "202302151545",
            "seatClass": "V",
            "seatGrade": "",
            "flightNumber": "9C8922",
            "codeShare": false,
            "aircraftCode": "",
            "segmentNo": 2,
            "operatingCarrier": "",
            "operatingFlightNo": "",
            "stopCities": ""
        }],
        "priceList": [{
            "passengerType": 0,
            "publishPrice": 0,
            "price": 608,
            "taxFeeAmount": 369,
            "taxFeeDisclosureList": []
        },
        "eligibility": "NOR",
        {
            "passengerType": 1,
            "publishPrice": 0,
            "price": 608,
            "taxFeeAmount": 369,
            "taxFeeDisclosureList": []
        }],
        "validatingCarrier": "9C",
        "productType": "",
        "fareBasis": "",
        "bookingOfficeNo": "",
        "ticketingOfficeNo": "",
        "reservationType": "",
        "posCode": "",
        "complexTerm": 0,
        "minAge": 0,
        "maxAge": 0,
        "planCategory": 0,
        "invoiceType": "E",
        "minPassengerCount": 1,
        "maxPassengerCount": 9,
        "note": "xxx",
        "airlineAncillaries": {
            "baggageService": true,
            "unFreeBaggage": true
        },
        "formatBaggageDetailList": [],
        "refundInfoList": [{
            "passengerType": 0,
            "refundType": 0,
            "refundStatus": "T",
            "refundFee": 0,
            "refNoshow": "T",
            "refNoShowCondition": 0,
            "refNoshowFee": 0,
            "conditionList": []
        },
        {
            "passengerType": 1,
            "refundType": 0,
            "refundStatus": "T",
            "refundFee": 0,
            "refNoshow": "T",
            "refNoShowCondition": 0,
            "refNoshowFee": 0,
            "conditionList": []
        }],
        "changesInfoList": [{
            "passengerType": 0,
            "changesType": 0,
            "changesStatus": "T",
            "changesFee": 0,
            "revNoshow": "T",
            "revNoShowCondition": 0,
            "revNoshowFee": 0,
            "conditionList": ""
        },
        {
            "passengerType": 1,
            "changesType": 0,
            "changesStatus": "T",
            "changesFee": 0,
            "revNoshow": "T",
            "revNoShowCondition": 0,
            "revNoshowFee": 0,
            "conditionList": ""
        }],
        "packageInfo": null,
        "currency": "USD",
        "ticketTimeUnit": 1000,
        "combineIndexs": [],
        "endorsement": 0
    }
}

Error Response

{
    "marketErrorCode": 5112,
    "marketErrorMsg": "Price changed to no seat"
}
Author:AeroHub  Create time:2023-07-10 16:14
Last editor:AeroHub  Update time:2025-07-29 17:21