User Manual

Create a Booking

Commit a priced offer with ER, ET, or ETR, book by brand name instead of row number, read the held order back, and handle the common rejections.

The commit verbs

Four verbs commit a transaction, differing on two axes — does it ticket, and does it display the result:

ER                 # End & Retrieve — commit AND display the order
E                  # End — commit silently
ET                 # End & Ticket — commit and issue documents, no display
ETR                # End, Ticket & Retrieve — commit, ticket, display
  • ER is the default reflex: it creates (or updates) the order with the airline and immediately shows you what the airline recorded. Use it until reading the order back is automatic.
  • E commits without the display — for batch-shaped work where you'll verify separately.
  • ET and ETR fold ticketing into the same call — book and issue in one round-trip, no held stage. They need a form of payment in hand; that side is covered in Issue and Verify Tickets.

Booking an offer by row

After WP, prefix the verb with the offer number to book that rung of the ladder:

1ER                # Book offer 1, hold, display
2ER                # Book offer 2
1ETR               # Book offer 1 and ticket it — one call

A bare-number booking like 1ER creates a held order: confirmed space, no documents, awaiting issuance. The airline sets how long a hold survives unticketed — treat the ticketing deadline on the order as real.

Booking by brand name — and why

Row numbers have a flaw you must internalize: every WP re-shops, so the ladder is rebuilt run to run and row n is not a stable identity. 2ER books whatever happens to sit at row 2 right now — which, after a reprice, may be a different brand than the one you compared. The deterministic form names the brand instead:

ER/CLASSIC         # Hold-book the rung whose brand matches CLASSIC
ETR/BUSINESSFULL   # Book + ticket the brand matching "Business Full"

The brand word (3+ letters) is matched against the priced brand names as a contains-match, ignoring case and spaces; the cheapest matching offer is booked. A word that matches nothing fails with the list of priced brands — it will never silently book something else. When one word is ambiguous across cabins ("FULL" could be Economy Full or Business Full), use the compound form: ETR/BUSINESSFULL.

Interactively, booking by number right after reading the ladder is fine. Anything scripted, repeated, or delegated should always book by brand — a workflow keyed to row numbers is keyed to inventory noise.

Reading the order back

ER and ETR display the order the airline created. Check four things before moving on:

  1. The order ID — the record you'll retrieve with, e.g. *ABC123.
  2. The airline booking reference — the carrier-side PNR the traveler can use directly with the airline.
  3. The status — held (confirmed, unticketed) or ticketed. A held order shows its ticketing deadline; a ticketed one shows document numbers.
  4. Itinerary and passengers — exactly what the airline recorded, which is the only version that counts.
Confirmed order card after booking, showing the order ID, airline booking reference, itinerary, and passenger for a held order
The order card: order ID, airline reference, itinerary, passenger — a held order awaiting issuance.

From any later session, ABC123 retrieves the order fresh, redisplays the current one, and *H shows its version history.

When the booking is refused

The two rejections you'll actually meet:

  • Offer expired. Airline offers live for minutes. NDCTerm reprices a stale offer automatically during the commit and prompts if the total changed — confirm, or walk back to pricing. This is routine, not a failure. It is also the strongest argument for brand-word booking: after the reprice, the row numbers have reshuffled, but ER/CLASSIC still means Classic.
  • Missing required passenger data. The airline validates passengers at order creation — a missing date of birth on a child, no gender, an absent travel document on an itinerary that requires one — and the order simply does not create. Nothing partial is left behind. Complete the record (Add Passengers and Traveler Details), reprice, and book again. Note that a change to passengers clears priced offers, so the sequence is always fix → WP → book.

In both cases read the carrier's message: NDCTerm surfaces the airline's rejection verbatim rather than translating it into a generic error.

A held order's remaining life is about money: payment, issuance, and verifying documents landed — all on Issue and Verify Tickets.