FX-Port API
Flights

POST /api/v1/flights/get_order_quote

Get the current price and payment status for a held order before paying.

Get the current quote (price, status, and available actions) for a held order. This step is optional — call it only when you want to preview or refresh the price before paying.

Permission: Read

Identifying the booking

Provide one of the following. order_id is strongly preferred.

FieldDescription
order_idSupplier order ID returned when the hold booking was created
booking_idFX-Port booking ID
pnrAirline record locator

PNRs are not unique. The same PNR can be issued by a different supplier, GDS, or airline. Looking a booking up by PNR alone can be ambiguous. Always use order_id when possible.

Request example

curl --request POST \
  --url https://api.fx-port.com/api/v1/flights/get_order_quote \
  --header 'Authorization: Bearer fxp_test_YOUR_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "order_id": "eJzTd9ePMo_0NXMEAAtYAlQ"
  }'

Response example

Same held Amadeus order used in Book (hold), before it's paid:

{
  "environment": "sandbox",
  "success": true,
  "requestId": "256ebe7e",
  "orderId": "eJzTd9ePMo_0NXMEAAtYAlQ",
  "processingTime": 0.272,
  "orderQuote": {
    "orderId": "eJzTd9ePMo_0NXMEAAtYAlQ",
    "bookingReference": "Z7YM6A",
    "status": "awaiting_payment",
    "pricing": {
      "supplierCurrency": "DZD",
      "agencyCurrency": "DZD",
      "basePrice": 3160.0,
      "taxesAndFees": 1921.44,
      "agencyCommission": 5.09,
      "finalPrice": 5086.53,
      "b2bPrice": 5081.44,
      "additionalServices": [],
      "totalAmount": 5081.44
    },
    "paymentStatus": {
      "awaitingPayment": true,
      "paymentRequiredBy": null,
      "priceGuaranteeExpiresAt": null,
      "priceGuaranteed": true,
      "canPay": true
    },
    "liveMode": false
  },
  "supplier": {
    "id": "amadeus_aqc_dz_1",
    "technology": "amadeus_aqc",
    "name": "Amadeus Algeria"
  },
  "agency": {
    "agencyId": "2e800fb6-0bbf-4fc1-b0bd-0f3be3b5bcc4",
    "currency": "DZD"
  },
  "meta": {
    "priceGuaranteed": true,
    "paymentDeadline": null,
    "canPay": true
  }
}

Field meanings

FieldMeaning
orderQuote.bookingReferenceThe PNR for this order
orderQuote.status"awaiting_payment" while held; matches the booking's own status
orderQuote.pricing.b2bPrice / .totalAmountThe amount that will be debited from your agency balance — the two fields are aliases of each other, always equal
orderQuote.paymentStatus.canPayWhether the hold can currently be paid — see warning below
orderQuote.paymentStatus.priceGuaranteedWhether the price is guaranteed not to change before priceGuaranteeExpiresAt
orderQuote.liveModefalse in sandbox, true in live
agency.agencyId / agency.currencyYour agency's ID and settlement currency

Do not treat canPay as a hard guarantee. Payment can fail because the PNR has expired or been cancelled, the hold/payment deadline has passed, or the airline released the reservation before the expected date or time. The only authoritative outcome is the pay_order response. Always handle payment failure gracefully even when canPay was true moments earlier.

On this page