# Seats Workflows

The diagram below illustrates workflows to add seats either during booking or to an existing reservation, and, optionally, to send payment and issue the EMD for the seats in the same session. For carriers that do support payment and EMD for seats in the same session as seat book, you can send payment in either the initial booking workbench or for an existing reservation.

Payment and EMD Workflow for Seats and Ancillaries
For all GDS and some NDC carriers, you  must commit the booking workbench to confirm the seat or ancillary, and then create a new workbench to send payment and issue the  [EMD](/docs/flights/guides/seats-and-ancillaries/ancillaries-and-emd-guide#ancillary-payment-and-emds). Payment and EMD in the same workbench as booking is supported only for specific NDC carriers.  For ancillary requirements by NDC carrier, see NDC capabilities by airline through TripServices API
in the Travelport Knowledge Base. (If you need login assistance, see [Knowledge Base NDC Resources](/docs/flights/ndc/ndc-guide#knowledge-base-ndc-resources).)

Seats are also supported in the [NDC Instant Pay](/docs/flights/guides/booking-and-reservations/flights-booking-guide#ndc-instant-pay-workflow-book-and-ticket-in-same-workbench) workflow by sending seat map and seat book requests after adding travelers.

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

### Seat Workflows

#### Add seats during booking

```mermaid
flowchart TD
A["Create new\nworkbench"]
B["Add offer"]
C["Add\ntraveler/s"]
D["Seat map"]
E["Seat book\n(one request\nper flight)"]
F["Commit\nworkbench"]


    A --> B --> C --> D --> E --> F
```

#### Add seats to existing reservation

```mermaid
flowchart TD
A["Create post-\ncommit\nworkbench"]
B["Seat map"]
C["Seat book\n(one request\nper flight)"]
D["Form of payment\nfor seats\n(optional,\nNDC only)"]
E["Payment\nfor seats\n(optional,\nNDC only)"]
F["Commit\nworkbench\n(issues EMD\nif payment sent;\nNDC only)"]


    A --> B --> C --> D --> E --> F
```