Skip to main content
POST
This is the purchase: the call that books seats and moves money.
No request body. In order, the platform:
  1. Checks the order belongs to your agency.
  2. Checks your USD wallet covers price.total. If not, it returns 402 WALLET_INSUFFICIENT_BALANCE before anything is booked.
  3. Reserves the seats with the airline, re-checking the price. A change returns 409 FLIGHT_PRICE_CHANGED and nothing is charged.
  4. Charges the wallet.
  5. Waits for the tickets and returns them.
Expect 10 to 60 seconds. Set your client timeout to at least 120 seconds. For an order created with holdOnly, step 3 is skipped (the PNR already exists) and the order must still be within hold.expiresAt. issue is idempotent per order. Once the order is paid, repeating it (after a 504, a network failure or by mistake) skips the wallet and only reports the ticketing state. Keep calling until status is terminal.

Path

integer
required
The orderId returned by create order.

Response

string
Overall order status. HTTP 200 only means the request was processed, so always check this. Values are listed below.
object[]
code 0 and Info on success. Otherwise one entry per failed item: code, msg, severity.
integer
Human-readable order number for customers and support.
object[]
One entry per flight segment.
object[]
One entry per passenger per segment group.

Status values

Errors