---
title: "Fulfil Order"
method: POST
path: "/order/fulfil"
tags: ["Order"]
---

# Fulfil Order

`POST /order/fulfil`

This method allows the calling application to fulfil an existing Order

## Headers

- `X-EES-AUTH-CLIENT-ID` string, string, required
- `X-EES-AUTH-HASH` string, string, required
- `Connection` 'close' | 'keep-alive'
- `Accept-Encoding` '' | 'gzip' | 'deflate' | 'gzip,deflate'
- `X-EES-TRANSACTION-ID` string, string
- `X-EES-RETRY` string, string
- `X-CUSTOM-SUBSYSTEM-ID` string, string
- `X-CUSTOM-KEY` string, string

## Request body

- TokenOrderFulfilPayload
  - `itemId` integer — EES AIR Order Item ID
  - `tokens` string[]
  - `amount` integer — Amount value denominated to smallest currency unit (for GBP this should be in pence)

## Response `201`

Created

- TokenOrderFulfilEntity
  - `itemId` integer — EES AIR Order Item ID
  - `orderId` integer — EES AIR Order ID
  - `programmeId` integer — EES AIR Campaign ID
  - `consumerId` integer — EES AIR Consumer ID
  - `quantity` integer — Order Item Token quantity
  - `status` 'COMPLETE' | 'AWAITING_FULFILMENT' | 'FAILED' — Order Item Fulfilment status
  - `deliveryId` integer — EES AIR Delivery ID
  - `delivery` object
    - `deliveryId` integer — EES AIR Delivery ID
    - `accountId` integer — EES AIR Account ID
    - `deliveryType` 'POSTAL' — Delivery Type
    - `templateId` integer — EES AIR Template ID
    - `content` object
      - `address` object
        - `firstName` string — First Name
        - `secondName` string — Last Name
        - `line1` string — Address Line 1
        - `line2` string — Address Line 2
        - `line3` string — Address Line 3
        - `line4` string — Address Line 4
        - `city` string — City
        - `county` string — County
        - `postcode` string — Postcode
        - `country` string — Country
      - `type` string — Type
      - `identity` string — Identity Value
      - `template` object
        - `templateId` integer — EES AIR Template ID
        - `content` object
          - `address` string — Template Variable Value
          - `TO` string — Template Variable Value
          - `FROM` string — Template Variable Value
          - `CUSTOM` string — Template Variable Value
          - `amount` string — Template Variable Value
  - `value` integer — Value
  - `total` integer — Total
  - `discountTotal` integer — Discount Total
  - `meta` MetaEntity
    - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
    - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
  - `accounts` string[]
  - `dateCreated` string, date-time — Creation Date Time
  - `lastUpdated` string, date-time — Last Updated Date Time
  - `tokens` string[]

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `415` — Unsupported Media Type
- `429` — Too Many Requests
- `500` — Server Error
- `503` — Service Unavailable
- `504` — Gateway Timeout

---

[API](https://skmtc.net/eagleeye/apis/wallet-api.md) · [All operations](https://skmtc.net/eagleeye/apis/wallet-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/eagleeye/wallet-api/revisions/90a122bb14cc/schema)
