> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chataigne.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Set an order status



## OpenAPI

````yaml /api-reference/orders-v1.json put /v1/locations/{location_id}/orders/{order_id}/status
openapi: 3.0.0
info:
  title: Chataigne Orders API
  description: >-
    Read Chataigne orders and update their canonical status from a connected
    POS.
  version: '2026-05-01'
  contact: {}
servers:
  - url: https://server.chataigne.ai
security: []
tags: []
paths:
  /v1/locations/{location_id}/orders/{order_id}/status:
    put:
      tags:
        - Orders
      summary: Set an order status
      operationId: OrdersV1Controller_setStatus
      parameters:
        - name: location_id
          required: true
          in: path
          schema:
            type: string
        - name: order_id
          required: true
          in: path
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          description: Unique key for this status mutation.
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
                - status
              properties:
                status:
                  type: string
                  enum:
                    - accepted
                    - in_preparation
                    - awaiting_shipment
                    - awaiting_collection
                    - in_delivery
                    - completed
                    - rejected
                    - cancelled
                    - delivery_failed
                reason:
                  type: string
                  nullable: true
                  maxLength: 500
      responses:
        '200':
          description: The updated order.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderResource'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Authentication required for this endpoint.
        '403':
          description: The authenticated principal is not allowed to use this endpoint.
        '404':
          description: The requested order does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: Conflict or idempotency error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - organization-api-key: []
components:
  schemas:
    OrderResource:
      type: object
      required:
        - id
        - object
        - short_id
        - location_id
        - status
        - status_version
        - service_type
        - channel
        - created_at
        - updated_at
        - expected_time
        - expected_pickup_time
        - expected_delivery_time
        - customer
        - fulfillment
        - items
        - discounts
        - charges
        - payment
        - total
      properties:
        id:
          type: string
          description: Chataigne order identifier.
        object:
          type: string
          enum:
            - order
        short_id:
          type: string
          description: Human-readable restaurant order number.
        location_id:
          type: string
        status:
          type: string
          enum:
            - received
            - accepted
            - in_preparation
            - awaiting_shipment
            - awaiting_collection
            - in_delivery
            - completed
            - rejected
            - cancelled
            - delivery_failed
        status_version:
          type: integer
          minimum: 0
        service_type:
          type: string
          nullable: true
          enum:
            - delivery
            - collection
            - eat_in
            - null
        channel:
          type: string
          nullable: true
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        expected_time:
          type: string
          format: date-time
          nullable: true
        expected_pickup_time:
          type: string
          format: date-time
          nullable: true
        expected_delivery_time:
          type: string
          format: date-time
          nullable: true
        customer:
          type: object
          nullable: true
          required:
            - first_name
            - last_name
            - phone
            - email
            - language
          properties:
            first_name:
              type: string
              nullable: true
            last_name:
              type: string
              nullable: true
            phone:
              type: string
              nullable: true
            email:
              type: string
              nullable: true
            language:
              type: string
              nullable: true
        fulfillment:
          type: object
          required:
            - type
            - address
            - customer_notes
            - delivery_notes
            - collection_code
          properties:
            type:
              type: string
              nullable: true
            address:
              type: object
              nullable: true
              required:
                - line_1
                - line_2
                - postal_code
                - city
                - country
                - latitude
                - longitude
              properties:
                line_1:
                  type: string
                  nullable: true
                line_2:
                  type: string
                  nullable: true
                postal_code:
                  type: string
                  nullable: true
                city:
                  type: string
                  nullable: true
                country:
                  type: string
                  nullable: true
                latitude:
                  type: number
                  nullable: true
                longitude:
                  type: number
                  nullable: true
            customer_notes:
              type: string
              nullable: true
            delivery_notes:
              type: string
              nullable: true
            collection_code:
              type: string
              nullable: true
        items:
          type: array
          items:
            oneOf:
              - type: object
                required:
                  - type
                  - id
                  - name
                  - quantity
                  - unit_price
                  - customer_notes
                  - modifier_groups
                properties:
                  type:
                    type: string
                    enum:
                      - product
                  id:
                    type: string
                    nullable: true
                    description: External SKU identifier.
                  name:
                    type: string
                  quantity:
                    type: integer
                    minimum: 1
                  unit_price:
                    type: object
                    required:
                      - amount
                      - currency
                    properties:
                      amount:
                        type: number
                        example: 12.5
                      currency:
                        type: string
                        example: EUR
                  customer_notes:
                    type: string
                    nullable: true
                  modifier_groups:
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - name
                        - modifiers
                      properties:
                        id:
                          type: string
                          nullable: true
                          description: External modifier-group identifier.
                        name:
                          type: string
                          nullable: true
                        modifiers:
                          type: array
                          items:
                            type: object
                            required:
                              - id
                              - name
                              - quantity
                              - unit_price
                              - free_quantity
                            properties:
                              id:
                                type: string
                                nullable: true
                                description: External modifier identifier.
                              name:
                                type: string
                              quantity:
                                type: integer
                                minimum: 1
                              unit_price:
                                type: object
                                required:
                                  - amount
                                  - currency
                                properties:
                                  amount:
                                    type: number
                                    example: 12.5
                                  currency:
                                    type: string
                                    example: EUR
                              free_quantity:
                                type: integer
                                minimum: 0
              - type: object
                required:
                  - type
                  - id
                  - name
                  - quantity
                  - unit_price
                  - lines
                properties:
                  type:
                    type: string
                    enum:
                      - bundle
                  id:
                    type: string
                    nullable: true
                    description: External bundle identifier.
                  name:
                    type: string
                  quantity:
                    type: integer
                    enum:
                      - 1
                  unit_price:
                    type: object
                    required:
                      - amount
                      - currency
                    properties:
                      amount:
                        type: number
                        example: 12.5
                      currency:
                        type: string
                        example: EUR
                  lines:
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - name
                        - items
                      properties:
                        id:
                          type: string
                          nullable: true
                          description: External bundle-line identifier.
                        name:
                          type: string
                          nullable: true
                        items:
                          type: array
                          items:
                            type: object
                            required:
                              - type
                              - id
                              - name
                              - quantity
                              - unit_price
                              - customer_notes
                              - modifier_groups
                            properties:
                              type:
                                type: string
                                enum:
                                  - product
                              id:
                                type: string
                                nullable: true
                                description: External SKU identifier.
                              name:
                                type: string
                              quantity:
                                type: integer
                                minimum: 1
                              unit_price:
                                type: object
                                required:
                                  - amount
                                  - currency
                                properties:
                                  amount:
                                    type: number
                                    example: 12.5
                                  currency:
                                    type: string
                                    example: EUR
                              customer_notes:
                                type: string
                                nullable: true
                              modifier_groups:
                                type: array
                                items:
                                  type: object
                                  required:
                                    - id
                                    - name
                                    - modifiers
                                  properties:
                                    id:
                                      type: string
                                      nullable: true
                                      description: External modifier-group identifier.
                                    name:
                                      type: string
                                      nullable: true
                                    modifiers:
                                      type: array
                                      items:
                                        type: object
                                        required:
                                          - id
                                          - name
                                          - quantity
                                          - unit_price
                                          - free_quantity
                                        properties:
                                          id:
                                            type: string
                                            nullable: true
                                            description: External modifier identifier.
                                          name:
                                            type: string
                                          quantity:
                                            type: integer
                                            minimum: 1
                                          unit_price:
                                            type: object
                                            required:
                                              - amount
                                              - currency
                                            properties:
                                              amount:
                                                type: number
                                                example: 12.5
                                              currency:
                                                type: string
                                                example: EUR
                                          free_quantity:
                                            type: integer
                                            minimum: 0
            discriminator:
              propertyName: type
        discounts:
          type: array
          items:
            type: object
            required:
              - id
              - name
              - amount
            properties:
              id:
                type: string
                nullable: true
              name:
                type: string
              amount:
                type: object
                required:
                  - amount
                  - currency
                properties:
                  amount:
                    type: number
                    example: 12.5
                  currency:
                    type: string
                    example: EUR
        charges:
          type: array
          description: >-
            Only public delivery and service charges are listed. The total can
            include additional private or provider-specific charges.
          items:
            type: object
            required:
              - type
              - amount
            properties:
              type:
                type: string
                enum:
                  - delivery
                  - service
              amount:
                type: object
                required:
                  - amount
                  - currency
                properties:
                  amount:
                    type: number
                    example: 12.5
                  currency:
                    type: string
                    example: EUR
        payment:
          type: object
          nullable: true
          required:
            - status
            - amount
          properties:
            status:
              type: string
              enum:
                - authorized
                - captured
                - pending
                - failed
                - cancelled
                - partially_refunded
                - refunded
            amount:
              type: object
              required:
                - amount
                - currency
              properties:
                amount:
                  type: number
                  example: 12.5
                currency:
                  type: string
                  example: EUR
        total:
          type: object
          required:
            - amount
            - currency
          properties:
            amount:
              type: number
              example: 12.5
            currency:
              type: string
              example: EUR
          description: >-
            Canonical order total, including any private or provider-specific
            charges omitted from the public charges array.
    Error:
      type: object
      properties:
        error:
          type: object
          required:
            - type
            - code
            - message
            - request_id
          properties:
            type:
              type: string
              enum:
                - invalid_request_error
                - authentication_error
                - authorization_error
                - not_found_error
                - conflict_error
                - rate_limit_error
                - idempotency_error
                - api_error
            code:
              type: string
              example: resource_missing
            message:
              type: string
            param:
              type: string
            request_id:
              type: string
              example: req_8f2c…
            details:
              type: object
              additionalProperties: true
  securitySchemes:
    organization-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: Location/organization API key.

````