---
title: "Update an order"
method: PUT
path: "/order/{order_slug}"
tags: ["Orders"]
---

# Update an order

`PUT /order/{order_slug}`

Updates the billing information and status of the order identified by the specified slug.

## Headers

- `Accept` 'application/vnd.Creative Force.v2.3+json' | 'application/vnd.Creative Force.v2.3+xml', required
- `x-api-language` string[]

## Request body

- object
  - `company` string — Billing company name.
  - `address` string — Billing address.
  - `city` string — Billing city.
  - `state` string — Billing state.
  - `postcode` string — Billing postcode.
  - `country` string — Two-letter country code. See [Two-letter country codes](https://support.awardforce.com/hc/en-us/articles/360000237856-Two-letter-country-codes).
  - `payment_status` 'paid' | 'awaiting_payment' — Status of the order.
  - `note` string — Annotation on the order.

## Response `200`

Order updated.

- Order — Order recording a purchase made on the account, including billing details, line items, applied discounts, tax and fees, totals, and payment and transaction status.
  - `address` string — Billing street address supplied for the order.
  - `city` string — Billing city supplied for the order.
  - `comments` string — Free-text comments recorded against the order.
  - `company` string — Billing company name supplied for the order.
  - `country` string — Billing country supplied for the order.
  - `created_at` string, date-time — Date and time the order was created, in ISO 8601 format.
  - `currency` string — Currency the order amounts are denominated in, as an ISO 4217 code.
  - `discount` number — Total discount applied to the order, in the order currency.
  - `discount_code` string — Discount code applied to the order. Empty string when no code was applied.
  - `e_invoice_status` string — Electronic invoicing status of the order.
  - `invoice_number` string — Invoice number assigned to the order.
  - `ip_address` string, ip-address — IP address the order was placed from.
  - `items` string — HTML-formatted summary of the line items for the order, suitable for display.
  - `items_array` object[] — Structured list of the line items for the order.
    - `amount` string — Formatted line amount, including currency symbol.
    - `description` string — Description of the line item.
    - `discount` string — Formatted discount applied to the line item, including currency symbol.
    - `entry` object — Entry the line item relates to. Present for entry line items.
      - `slug` string — Short URL-safe identifier for the entry.
      - `link` string, uri — Canonical URL for the entry resource.
      - `title` string — Title of the entry.
    - `item_type` string — Type of the line item.
    - `name` string — Display name of the line item.
    - `price` object — Price the line item was charged at.
      - `slug` string — Short URL-safe identifier for the price.
      - `link` string, uri — Canonical URL for the price resource.
      - `title` object — Map keyed by locale code (for example, `en_GB` or `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `quantity` integer — Number of units purchased for the line item.
  - `member_number` string — Membership number recorded against the order.
  - `payment_method` string — Method used to pay for the order.
  - `payment_status` string — Payment status of the order.
  - `postcode` string — Billing postcode supplied for the order.
  - `processing_fee` number — Processing fee charged on the order, in the order currency.
  - `processing_fee_rate` number, nullable — Rate used to calculate the processing fee, as a percentage. `null` when no processing fee applies.
  - `region` string — Billing region supplied for the order.
  - `season` object — Season the order was placed in.
    - `slug` string — Short URL-safe identifier for the season.
    - `link` string, uri — Canonical URL for the season resource.
    - `name` object — Map keyed by locale code (for example, `en_GB` or `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
  - `slug` string — Short URL-safe identifier for the order.
  - `state` string — Billing state supplied for the order.
  - `subtotal` number — Order subtotal before tax and fees, in the order currency.
  - `tax` number — Total tax charged on the order, in the order currency.
  - `tax_rate` number, nullable — Rate used to calculate tax, as a percentage. `null` when no tax applies.
  - `tax_rate_details` object — Details of the tax rate applied to the order.
    - `country` string — Country the tax rate applies to.
    - `link` string, uri — Canonical URL for the tax rate resource.
    - `name` string — Name of the tax rate.
    - `rate` number — Tax rate, as a percentage.
    - `region` string, nullable — Region the tax rate applies to. `null` when the tax rate is not region-specific.
    - `slug` string — Short URL-safe identifier for the tax rate.
    - `term` string — Display term for the tax, such as `VAT` or `GST`.
  - `tax_term` string — Display term used for tax on the order, such as `VAT` or `GST`.
  - `total` number — Order total including tax and fees, in the order currency.
  - `transaction_date` string, date-time, nullable — Date and time of the payment transaction, in ISO 8601 format. `null` when the order has no recorded payment transaction.
  - `transaction_provider` string — Payment provider that processed the transaction.
  - `transaction_reference` string — Reference assigned to the transaction by the payment provider.
  - `transaction_status` string — Status of the payment transaction.
  - `user` object — User who placed the order.
    - `slug` string — Short URL-safe identifier for the user.
    - `link` string, uri — Canonical URL for the user resource.
    - `name` string — Display name of the user.
    - `first_name` string — First name of the user.
    - `last_name` string — Last name of the user.
    - `email` string, email — Email address of the user.
  - `vat_number` string — VAT number supplied for the order.

## Other responses

- `400` — Request was rejected before the endpoint could process it. Common causes: invalid `Accept` header, unsupported `x-api-language` code, empty request body on `POST` / `PUT`, invalid JSON in the request body, or an invalid slug format in a path parameter.
- `401` — Missing `x-api-key` header.
- `403` — Authenticated request denied. Common causes: invalid or unknown API key, suspended account, or `api` feature not enabled for the account.
- `404` — Resource identified by the path slug does not exist. Returned when the slug is well-formed but no record matches it.
- `422` — Request was syntactically valid but could not be processed. Returned in two scenarios: - **Field-level validation failure** — one or more request fields violated the endpoint's validation rules. The body includes an `errors` map keyed by field name with one or more validation messages each. - **Resource-state precondition failure** — the request fields were all valid, but the target resource was in a state that does not permit the requested operation. The body carries only `message` and `status_code`; no `errors` map.
- `429` — Rate limit of 60 requests per minute exceeded.
- `503` — Service is temporarily unavailable due to regional maintenance.

---

[API](https://skmtc.net/tectonic/apis/award-force-api.md) · [All operations](https://skmtc.net/tectonic/apis/award-force-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tectonic/award-force-api/versions/e2511e46f9f2/schema)
