BookingRefund

  • Purpose: Used to push refund orders to suppliers, including refund application information, itineraries, passengers, etc.
  • Request: POST
  • Encryption: No

Request

Parameter Name Type Required Description
requestId string ✅ Request ID, which is unique for each call in the ticket issuance process and has a length of 32 digits.
refundOrderNo string ✅ AeroHub refund order number
pricingMode int ⬜ Quotation mode, when refundStatus=PENDING_QUOTE, you need to accept this parameter, the default is manual quotation: 1. Manual quotation, no need to return in real time 2. Automatic quotation, real-time confirmation of the quotation price
isRefundConfirm int ✅ Confirm the submission of the refund order for verified price 0 Submit the refund after verifying the price (when it is 0, the refund order has been created successfully, and the status of the original refund order needs to be updated to the corresponding status in refundStatus), 1 Other submissions
purchaseOrderNo string ✅ AeroHub order number
refundType string ✅ INVOLUNTARY: involuntary, VOLUNTARY: voluntary, OTHER: other
refundReason string ✅ Reasons for refund: VOLUNTARY_CANCELLATION: Voluntary refund, VOID_TICKET: Wasted ticket, OTHER: Others, FLIGHT_CHANGE: Flight change, FLIGHT_CANCEL: Flight cancellation, CANCELLATION_DUE_TO_ILLNESS: Refund due to illness, CANCELLATION_DUE_TO_DEATH: Refund on death
refundNote string ⬜ Notes on refund
refundStatus string ✅ Refund order status: PENDING_QUOTE: Pending quotation, PENDING: Pending refund, WITHDRAWN: Canceled
isDocumentationRequired int ⬜️ Whether information is required: 1 No need to provide, 3 Already provided
documentation array/documentation Element ⬜ You can obtain the URL of supporting documents, such as ID photos, hospital certificates, etc.
refundFee float ✅ AeroHub’s refund service fee paid to suppliers
passengers array/passengers Element ✅ Passenger information
segments array/segments Element ✅ Itinerary information

array/passengers Element

Parameter Name Type Required Description
passengerNo int ✅ Passenger’s serial number, starting from 0
name string ✅ Passenger name, separated by / between last name and first name, LastName/FirstName MiddleName
birthday string ✅ Date of birth, format: YYYYMMDD
cardNo string ✅ ID number, maximum 15 characters

array/segments Element

Parameter Name Type Required Description
segmentNo int ✅ Flight sequence, 1 outbound trip, 2 return trip
sequence int ✅ The sequence of flight segments starts from 1. Note: If it is a round trip, both the outbound and return journeys start from 1.
flightNumber string ✅ Flight number, such as: CA123
depAirport string ✅ Departure airport code, using IATA three-letter code as the standard
arrAirport string ✅ Arrival airport code, using IATA three-letter code as the standard

array/documentation Element

Parameter Name Type Required Description
url string ⬜ You can obtain the URL of supporting documents, such as ID photos, hospital certificates, etc.

Sample Request

{
    "requestId": "PcrNq8964iFUkE0CyVV4bhgXXX",
    "refundOrderNo": "FBRF2403112526",
    "isRefundConfirm": 0,
    "purchaseOrderNo": "F1745527321051406356",
    "refundType": 1,
    "refundReason": "VOLUNTARY_CANCELLATION",
    "refundNote": "Passenger decided to cancel the trip.",
    "refundStatus": "PENDING_QUOTE",
    "pricingMode": 2,
    "isDocumentationRequired": 1,
    "documentation":[
          {
            "url": "https://cdn.aerohub.com/upload/2024031218/998a7d64775f9bfe6ffdf7c3583b26aa1.png"
        },
        {
            "url": "https://cdn.aerohub.com/upload/2024031218/5f43518a76129749e8830960379ed2716.pdf"
        }],
    "refundFee": 50.00,
    "passengers": [
        {
        "passengerNo": 0,
        "name": "Doe/John",
        "birthday": "19900101",
        "cardNo": "ABC123456789"
        },
        {
        "passengerNo": 1,
        "name": "Doe/Jane",
        "birthday": "19910101",
        "cardNo": "XYZ987654321"
        }
        ],
    "segments": [
        {
        "segmentNo": 1,
        "sequence": 1,
        "flightNumber": "CA123",
        "depAirport": "PEK",
      "arrAirport": "SFO"
      }
    ]
}

Response

Parameter Name Type Required Description
marketErrorCode int ✅ Supplier system error code is used to assist AeroHub and suppliers in troubleshooting problems. Please return the true error truthfully.
marketErrorMsg string ✅ Supplier system error description, please truthfully return the real error reason, the length is less than 300 characters
data array/data Element ⬜ Quotation data, returned when in automatic quotation mode

array/data Element

Parameter Name Type Required Description
refundMethod float ✅ Refund method: cash: cash refund voucher: voucher refund
amount int ✅ Total amount refunded
currency string ✅ USD
passengers passengers Element ⬜️ Passenger refund details
array/passengers Element
Parameter Name Type Required Description
passengerNo float ✅ Passenger serial number, the same as the passenger serial number in the order details
name int ✅ Passenger’s name, the same as the passenger’s name in the order
birthday string ⬜️ Passenger’s date of birth, same as in the order
cardNo string ⬜️ ID number, the same as in the order
amount string ✅ The quoted amount for this passenger’s refund review

Response Example

Manual Quotation Success Response:

{
    "marketErrorCode": 200,
    "marketErrorMsg": "Successful"
}

Automatic quotationSuccess Response:

{
  "marketErrorCode": 200,
  "marketErrorMsg": "Successful",
  "data": {
    "refundMethod": "cash",
    "amount": 201,
    "currency": "USD",
    "passengers": [
      {
        "passengerNo": 0,
        "name": "Doe/John",
        "birthday": "19900101",
        "cardNo": "ABC123456789",
        "amount": 100.5
      },
      {
        "passengerNo": 1,
        "name": "Smith",
        "birthday": "19910101",
        "cardNo": "XYZ987654321",
        "amount": 100.5
      }
    ]
  }
}

Real-time quotation failed Error Response

{
    "marketErrorCode": 300,
    "marketErrorMsg": "The final refund amount will be confirmed after manual verification."
}
marketErrorCode marketErrorMsg
300 The final refund amount will be confirmed after manual verification.
301 The ticket is not refundable.
Author:AeroHub  Create time:2024-03-15 09:57
Last editor:AeroHub  Update time:2026-10-20 11:28