User Manual

Issue and Verify Tickets

Issue flight tickets and ancillary EMDs with the single ISSUE command, choose a form of payment, and verify the document numbers on the order.

One command for every document

In NDCTerm, issuance is a single verb: ISSUE. Flight tickets and ancillary EMDs — paid seats, bags, other services — go through the same command and the same cart. There is no separate ticketing entry for each document type, and nothing to remember about which document needs which transaction: if it's pending against the order and costs money, it's in the cart, and ISSUE issues it.

Bare ISSUE is always safe. It displays the cart and fires nothing.

The pending-issuance cart

After a held booking, an exchange held for later ticketing, or paid seats or services committed to a ticketed order, run ISSUE to see what's owed:

ISSUE              # View the cart — numbered items, amounts, payment on file. Changes nothing.

The cart lists every pending document as a numbered item — flight tickets and EMDs side by side, each with its amount — plus a held exchange as one order-level EXCHANGE row. Forms of payment on file are numbered F1, F2, … Those sets of numbers drive everything else on this page.

The ISSUE cart showing numbered pending items — flight tickets and a seat EMD with amounts — and the numbered list of cards on file below
The cart: pending tickets and EMDs as numbered items, cards on file as F-numbers.

Issue all of it, or any subset, by item number:

ISSUE/ALL          # Issue everything pending in one payment
ISSUE/1-3          # Items 1 through 3 (range)
ISSUE/1/3          # Items 1 and 3 (selective set)
ISSUE/2            # A single item

Selective issuance is how you split a settlement: tickets now on the agency card, the seat EMDs later on the traveler's own card, each run charged separately.

Forms of payment

Issuance needs a form of payment on the request. Enter one before you issue:

@FOPCC             # Credit card — secure entry form
FOP/CC             # Same thing, FOP spelling
FOP/CASH           # Cash (BSP/ARC settlement)
FOP/CHECK          # Check
FOP/INV            # Invoice / agency credit
FOP/INV/ACC123     # Invoice with an account number
FOP/CC-500/CASH-200  # Split payment: card 500 + cash 200, in the order's currency

A bare FOP opens the payment picker. Alongside cards, cash, check, and invoice, the picker supports IATA EasyPay: enter the payment number and expiry generated in the IATA EasyPay portal. Split payment (FOP/<type>-<amount>/<type>-<amount>) divides one issuance across parts; the parts must cover the total due. Cash and check availability depends on your agency's accreditation, and the available forms depend on the booking's payment capabilities.

Cards are tokenized the moment you enter them — NDCTerm keeps the brand and last four digits, not the number. Every card you enter lands on the numbered F-list shown in the cart, and a /F<n> suffix on any issue command picks which one pays:

ISSUE/ALL/F2       # Everything, charged to card F2
ISSUE/1/F1         # Item 1 on card F1
ISSUE/F2           # Everything on F2 — same as ISSUE/ALL/F2

Two behaviors here are worth internalizing:

  • The active card is single-use. Whatever you keyed with @FOPCC is consumed by the next commit or issuance, then cleared. It stays on the F-list for explicit /F<n> selection, but it will not silently ride along on a later transaction.
  • A card that ticketed an order is linked to that order. Come back tomorrow, in a fresh session, retrieve the order, buy a seat — the cart offers that card again with no re-entry. When the airline requires a fresh security code, the cart marks the card needs CVC: click it, enter only the three or four digits, then issue with /F<n>. The code is used for one authorization attempt and discarded.

Issue a held exchange

An accepted exchange can follow either settlement shape:

1ER                # Hold exchange, where supported
ISSUE              # Review the pending EXCHANGE row and add-collect
ISSUE/ALL          # Settle and issue replacements

1ETR               # Or exchange + ticket + retrieve

Some airlines do not permit the hold stage; the terminal then directs ER to ETR without committing or charging anything. A held exchange can also carry a carrier deadline. If it expires, follow the cart's recovery instruction: reprice where the booking supports that, or retrieve and begin a fresh exchange quote. Completion is proven by the replacement ticket numbers, not by the disappearance of the cart row alone.

Book and ticket in one step

When payment is in hand at booking time, skip the held stage entirely — suffix the offer number with ET (book + ticket) or ETR (book + ticket + retrieve):

@FOPCC             # Card first
2ETR               # Book offer 2, ticket it, display the order — one call

This is the shape to prefer. Because the active card is single-use, the two-step alternative has a gap: a bare 2ER hold consumes the card you entered, so a later stand-alone ISSUE/ALL finds no active payment and stops. The card is still on the F-list — charge it explicitly with ISSUE/ALL/F1 (supplying a fresh security code if the cart asks), or enter payment again. Hold deliberately, when the workflow needs it — approval waits, batch ticketing — not by default.

When the cart is empty

Some carriers collect payment at order creation — there is no separate issuance step to perform. Alaska works this way: the booking itself carries the form of payment (a hold without payment isn't offered), and the carrier tickets on its own after creating the order. On these carriers ISSUE shows nothing pending, and an issue command reports nothing to issue — that's not an error, it's the carrier's settlement model. Ticketing can complete moments after order creation, so if the documents aren't on the order yet, retrieve it again shortly.

An empty cart on a carrier that does issue separately simply means everything is settled. Either way, the check that matters is the same one, below.

Verify from the order, not the message

A success response means the airline accepted the request. The proof of issuance is the documents on the order. After issuing, redisplay it:

*                  # Redisplay the current order
*ABC123            # Or retrieve it fresh by order ID

On the order card, confirm three things:

  1. Status is ticketed — the order card states it explicitly; a held order and a ticketed order are never displayed alike.
  2. Every passenger has a ticket number — the 13-digit document numbers appear against each passenger. A missing number means that passenger is not ticketed, whatever any earlier message said.
  3. Every paid ancillary has its EMD number — seats and services you issued show their own document numbers alongside the items they cover.

*H shows the order's version history when you need to reconstruct what happened and when.

If an issuance times out or the connection drops mid-command, do not re-fire it. A request the carrier already accepted may still settle after the timeout — retrieve the order and read the documents first. NDCTerm blocks a second charge while the outcome is unknown; the block lifts when the documents appear on the order or the carrier definitively rejects the attempt.

Cancelling or reversing what you've issued — including refunding one ancillary service line with CANCEL/EMD/1 — is covered under Cancel, void, refund & credit in the command reference.