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

# Order Status Update | Webhook Events

> Fires when the payment or fulfillment status of an order changes.

The `OrderStatusUpdate` event fires whenever the `status` or `fulfillmentStatus` field on an existing order is changed — for example, when a pending order is marked as completed or when fulfillment is initiated. Use this event to keep external fulfillment systems, dashboards, and customer communications in sync with the current order state.

## Payload

| Field               | Type      | Description                                                                |
| ------------------- | --------- | -------------------------------------------------------------------------- |
| `type`              | `string`  | Always `"OrderStatusUpdate"`                                               |
| `locationId`        | `string`  | Account ID where the order resides                                         |
| `_id`               | `string`  | Unique identifier for the order                                            |
| `altId`             | `string`  | Account (location) ID — matches `locationId`                               |
| `altType`           | `string`  | Resource type for `altId` — always `"location"`                            |
| `status`            | `string`  | Updated order payment status (e.g., `pending`, `completed`)                |
| `fulfillmentStatus` | `string`  | Updated shipping/fulfillment status (e.g., `unfulfilled`, `fulfilled`)     |
| `contactId`         | `string`  | ID of the contact who placed the order                                     |
| `contactSnapshot`   | `object`  | Point-in-time snapshot of the contact at the time of the update            |
| `currency`          | `string`  | ISO 4217 currency code (e.g., `USD`)                                       |
| `amount`            | `number`  | Total order amount including tax and shipping                              |
| `liveMode`          | `boolean` | `true` when the event originates from a live account; `false` in test mode |
| `items`             | `array`   | Line items in the order                                                    |
| `amountSummary`     | `object`  | Breakdown of the order total (subtotal, discount, tax, shipping)           |
| `taxSummary`        | `array`   | Per-tax-rule breakdown                                                     |
| `source`            | `object`  | Origin of the order (type, subType, id, name)                              |
| `createdAt`         | `string`  | ISO 8601 timestamp when the order was originally created                   |
| `updatedAt`         | `string`  | ISO 8601 timestamp of this status update                                   |

## Example payload

```json theme={null}
{
  "type": "OrderStatusUpdate",
  "locationId": "Z4Bxl8J4SaPEPLq9IQ8g",
  "_id": "660ed43bfdf9fc05a0de7a40",
  "altId": "Z4Bxl8J4SaPEPLq9IQ8g",
  "altType": "location",
  "status": "completed",
  "fulfillmentStatus": "unfulfilled",
  "contactId": "ff2JstbQJfRuofXzeT0M",
  "currency": "USD",
  "amount": 150.1,
  "liveMode": false,
  "amountSummary": {
    "subtotal": 138,
    "discount": 0,
    "tax": 12.1,
    "shipping": 0
  },
  "createdAt": "2024-04-04T16:24:27.036Z",
  "updatedAt": "2024-04-04T16:24:31.297Z"
}
```

## Related

* [Order Create](/api-reference/webhooks/order-create) — fires when a new order is placed
* [Payments API](/api-reference/payments/overview) — query orders and transactions programmatically
