Ancillary and EMD Guide

Ancillaries are any paid optional services filed by airlines and travel providers as available for selected air segments. Available ancillaries vary by airline and segment, but can include baggage, paid seats, pet/animal transportation, unaccompanied minors, and so on.

Although paid seats are an ancillary, they use different requests and are discussed in the Seats Guide.

Related Content: JSON APIs Guide, Booking Guide, Ancillary Shop API Reference, Ancillary Price API Reference, Ancillary Book API Reference

In this topic:

Basic Concepts

An ancillary is any paid optional service filed for a flight. Industry examples include paid baggage, carbon offsets, pet transport fees, and unaccompanied minor charges.

Ancillaries can be shopped and added to the reservation in a workbench session for either the initial booking workflow, or for an existing reservation.

Key points:

  • Ancillaries are airline specific.

  • Ancillary offers returned are specific to a traveler and to a segment.

  • An ancillary is paid for separately from the fare, and an electronic miscellaneous document (EMD) is issued for that payment.

Paid seats are also a type of ancillary but are detailed in the Seats Guide because they use the seat map and book requests instead of the ancillary shop and book requests detailed here.

Bundled Fares
If an ancillary is combined with an air offer, that offer is called a bundled fare and is returned in the Search API response. No additional price is charged for an ancillary in a bundled fare. An ancillary bundle can be a combination of ancillaries, or an ancillary and a seat assignment. At this time bundled fares are supported only for NDC in Search and AirPrice (i.e., they cannot yet be booked), and only for UA dynamic bundled fares.

Ancillary Support

The JSON APIs currently support the following ancillaries in the booking and post-booking workflows as noted below for NDC and GDS.

For detailed seats support, see the Seats Guide.
Ancillaries 23.11.12 and later add support for GDS to add baggage ancillaries to an existing booking that already has ancillaries. Additional ancillaries for NDC were already supported for NDC.
The NDC Instant Pay workflow (book the reservation and issue ticket in the same workbench session) does not support ancillaries.
The Add Product workflow does not support ancillaries or seats. Ancillaries can be added in a post-commit workbench after the reservation is created.
Paid ancillaries for GDS are supported for only one passenger on a single offer.
The following NDC carriers do not support ancillaries: AF/KLM, LHG, BA, QR, AV.

Ancillary type

Ancillary Shop after AirPrice (without a workbench) Shop and book ancilaries in the initial booking workflow: Shop and book ancilaries for an existing reservation

GDS

NDC

GDS

NDC

GDS

NDC

Paid baggage

No

Yes

No

No

Yes

Yes with exceptions above

Carbon offset

No

No

No

No

Yes

No

Ancillary Payment/EMDs

Payment for any ancillary, including paid seats, is issued through an EMD (electronic miscellaneous document) and is separate from the payment for the fare. EMDs can be either EMD-A (EMD is associated to a ticket) or EMD-S (standalone EMD). At this time the JSON APIs support only EMD-A.

EMDs for NDC ancillaries are issued directly from the carrier, so there are some differences from GDS:

For GDS ancillaries, you can pay for the ancillary either during booking or when you ticket the booking. In either case, to issue an EMD for the ancillary on the workbench commit, include the offer ID for the ancillary in the Add Payment request. See the Ticketing Guide for details.

NDC carriers vary as to when they require ancillary payment. The following table notes requirements for specific types of ancillaries on supporting NDC carriers.

NDC Carrier

Ancillary Payment Requirements

United Airlines (UA)

Must include payment during ancillary booking session, cannot hold and pay later.

Singapore Airlines (SQ)

For paid baggage only, must book and hold first, then pay later.

Qantas (QF)

For paid baggage ancillaries only, must book and hold first, then pay later.

For carbon offset ancillary, payment is optional; can book and hold or pay at booking.

American Airlines (AA)

For carbon offset ancillary, payment is optional; can book and hold or pay at booking.

A carbon offset ancillary can be added to a held booking, but not a ticketed booking.

AA does not issue an EMD for a carbon offset ancillary. A confirmation email is generated from an external service vendor.

The carbon offset ancillary is charged for all passengers/segments in the booking. Applies to full itinerary.

Air France / KLM (AF/KLM)

Ancillary support is under development.

Lufthansa Group (LHG)

Ancillary support is under development.

British Airways (BA)

Ancillary support is under development.

Workflow Summary

The ancillary workflow is supported only for an existing reservation, not during the initial booking session.

Ancillary Workflow for Existing Reservation

As noted above in Ancillary Support, you can add most ancillaries to an existing reservation.

Follow these steps to add an ancillary to an existing booking. For all seats, see the Seats Guide.

Step #

Ancillary Booking Workflow Step

Description and Notes

API Reference

1

Create workbench for existing reservation

Returns a system-generated identifier for the workbench that must be sent in subsequent requests for that workbench.

Create Post-Commit Workbench API Reference

2

Ancillary shop request

Shop for available ancillaries.

Ancillary Shop API Reference

3

Ancillary price request

Price selected ancillary.

Required for NDC. Not supported for GDS.

Ancillary Price API Reference

4

Ancillary book request

Add selected ancillary to workbench.

Ancillary Book API Reference

5

Add form of payment (optional)

Optional. Ancillary payment requirements vary, see Ancillary Payment and EMDs above.

Add form of payment (FOP) information to be used for the paid ancillary, if issuing the EMD at end of session.

The response returns a system-generated identifier for the FOP that is part of the reservation record and sent in the Add Payment request next. (Note FOP is not stored in the reservation for NDC.)

Add Form of Payment API Reference

6

Add payment (optional)

Optional. Send to issue EMD for the ancillary on commit. Include IDs for offer/s to pay for and FOP to use.

Add Payment API Reference

7

Commit the workbench

Final step in the workflow.

Depending on payment, one of the following occurs:

  • If no payment was sent, the commit updates the held booking with the ancillary.

  • If FOP and payment for the ancillary were sent, the commit updates the held booking with the ancillary and issues an EMD for the ancillary.

  • If FOP and payment for the ancillary and the air offer were sent, the commit issues the ticket and an EMD for the ancillary.

Commit Workbench API Reference

 

Workflow Diagrams

Each box in the diagram represents one API call in the workflow.

*Ancillary price is required for NDC; not supported for GDS.

**FOP and Payment requirements for NDC vary by carrier per Ancillary Support above.

Add FOP and Payment (optional)

As part of the workflow, you can send form of payment (if not already in the reservation) and payment for the ancillary offer. If you are also ready to ticket the booking, send payment for both the ancillary offer and the air offer. Reference both the offer and the FOP in the request. See the Add Payment API Reference for endpoint and payload details.

The following example adds payment for both an offer ("id": "offer_1",) and an ancillary ("id": "an_o1").

Commit

As the last step in the flow, commit the workbench.

For an initial booking, the commit creates a reservation with the ancillary details. If FOP and payment for the ancillary were also sent, an EMD for the ancillary is issued.

For an existing reservation, the commit causes one of the following:

  • If no payment was sent, the commit updates the held booking with the ancillary.

  • If FOP and payment for the ancillary were sent, the commit updates the held booking with the ancillary and issues an EMD for the ancillary.

  • If FOP and payment for the ancillary and the air offer were sent, the commit issues the ticket and an EMD for the ancillary.

The commit response returns the following ancillary-specific details in these objects:

  • Product: Product and ancillary identifiers, and the seat assignment if the ancillary is a paid seat.
  • Document: The Document object includes both the ticket number and the EMD number, if issued.

Request and Response Layout Diagrams

The following overview diagrams illustrates the basic structure of the requests and responses for ancillary shop and price. These diagrams don't include every object that might be returned, and diagrams may not reflect minor updates.

Ancillary Shop

The following diagram illustrates the general structure of the Ancillary Shop request and response, including most high-level objects.

Ancillary Price

The following diagram illustrates the general structure of the Ancillary Price request and response, including most high-level objects.