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

# Order Status Change

> Event will fire whenever an Order changes status.

## Status Types

* **Reviewing** : Order is within hour cancellation window.
* **Printing** : Mail pieces are being sent to printer network.
* **Printed** : All mail pieces have been sent to printer network.
* **Fulfilled** : All processing related to order is completed (notifications, order settled.)
* **Shipped** : Mail pieces have been shipped.
* **Delivered** : A mail piece has been delivered for this order.
* **Cancelled** : Order was cancelled by client.
* **Error** : All items in order were not able to be printed.

## Status Fields

The payload reports the change with three fields:

* `order.status` — the order's status after the change, using the display names listed above. This is the same value the order endpoints return.
* `order.previous_status` — the status the order moved from, using the stored lower case values: `reviewing`, `paused`, `processing`, `printed`, `shipped`, `delivered`, `fulfilled`, and `cancelled`.
* `order.current_status` — the status the order moved to, using those same stored values.

The stored values are not always identical to the display names, so switch on `order.status` if you want to work with the names shown above.

## Example

```json theme={null}
{
    "event_type": "order.status_update",
    "event_id": "a8a59df0-516d-11f0-9ca2-31daad0e4f7f",
    "data": {
        "order.id": 42401,
        "order.status": "Printing",
        "order.previous_status": "reviewing",
        "order.current_status": "processing",
        "order.metadata": {
            "crm_deal_id": "D-1042"
        }
    },
    "timestamp": 1750819187,
    "date_time": "2025-06-25 02:39:47"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.