---
title: Order Data
description: Attributes on the order payload body for events with the topics order.created and order.updated.
sidebar:
  label: Orders
---

- `order.created` is triggered when an order is created.
- `order.updated` is triggered when an order is updated, including when order exceptions are added.

## `id`

The unique identifier for the order.

## `poNumber`

Purchase order number associated with this order. Defined by the person that placed the order. Is `null` when not available.

## `viewUrl`

A URL to view the order in the Sibi Web UI.

## `createdAt`

The timestamp when the order was created in ISO 8601 format.

## `propertyAddress`

The property address associated with this order. Broken down into separate string fields `line1`, `line2`, `city`, `stateOrProvince`, `postalCode`. If the address doesn't have a `line2`, it will return a value of `null`.

## `fulfillmentMethod`

How the order will be fulfilled. Will be one of `PICKUP` or `DELIVERY`.

## `requestedFulfillmentDate`

The date when the order is requested to be fulfilled in ISO 8601 format.

## `estimatedFulfillmentDate`

The estimated fulfillment date for the order in ISO 8601 format. Will return the fulfillment date from the distributor if available, falls back to the `requestedFulfillmentDate`.

## `actualFulfillmentDate`

The timestamp when the order was actually fulfilled — when it transitioned into a status of `Delivered` or `Picked_Up` — in ISO 8601 format in UTC. Will be `null` until the order reaches one of those statuses, so it is always `null` on `order.created`.

## `fulfillmentTimeStart`

The start of the time window when the order is requested to be fulfilled in ISO 8601 format in UTC. Will be `null` when not available.

## `fulfillmentTimeEnd`

The end of the time window when the order is requested to be fulfilled in ISO 8601 format in UTC. Will be `null` when not available.

## `status`

The current status of the order.

## `statusDetail`

Details about the current order status. Is generally provided as human readable text like "Order confirmation number updated", "Order is on hold", or "Shipped to Delivery Agent". Is not always provided and will be `null` when not available.

### Expected Order Statuses

The following values are the expected statuses of an order. All Order statuses have a `string` type.

#### `Pending`

The Order still requires approval. At this point, an order can be canceled or approved.

#### `Approved`

The Order was approved. This status is short-lived and quickly transitions to a status of `In_Process` and `Processed`.

#### `In_Process`

The Order is in the process of being submitted to the partner. This status is short-lived and quickly transitions to a status of `Processed` or `Delayed`.

#### `Processed`

The Order has been successfully processed.

#### `Delayed`

The Order has been delayed. Delayed orders are quickly resolved.

#### `Confirmed`

The Order has been confirmed by the partner. A confirmation number should be present on the order at this point.

#### `At_Distribution`

The Order is at the distribution center.

#### `In_Transit`

The Order is in transit to the fulfillment address.

#### `Delivered`

The Order has been delivered.

#### `Ready_For_Pickup`

The Order is ready for pickup at the partner distribution center fulfilling the order.

#### `Picked_Up`

The Order has been picked up from the partner distribution center.

#### `Canceled`

The Order has been canceled. This can happen either when a pending Order is canceled, or when an Order is canceled after being placed.

## `taxCents`

The tax amount for this order, represented in cents.

## `totalCents`

The total cost of the order, represented in cents.

## `lineItems`

A list of items included in the invoice.

## `lineItems.sku`

The stock-keeping unit (SKU) identifier for the item.

## `lineItems.name`

The human readable name of the product.

## `lineItems.quantity`

The number of units purchased for this item.

## `lineItems.unitOfMeasure`

The unit of measurement for this item (e.g., EA for each).

## `lineItems.unitPriceCents`

The price per unit of the item, represented in cents.

## `lineItems.totalPriceCents`

The total price for the line item, accounting for the quantity and unit price, represented in cents.

## `fees`

A list of fees associated with the order.

## `fees.title`

> **Deprecated**
>
> Only present on version `1` events. Removed from version `2` onward. Please use `name` instead.

The human readable name of the fee.

## `fees.name`

The human readable name of the fee.

## `fees.totalPriceCents`

The total price of the fee, represented in cents.

## `exceptions`

A list of exceptions that occurred during order processing. May be empty if no exceptions occurred.

## `exceptions.createdAt`

The timestamp when the exception occurred in ISO 8601 format.

## `exceptions.sku`

The SKU associated with the exception, if applicable. Note that this may be a distributor SKU that doesn't exist in the SIBI system. Will be `null` when not available or not applicable.

## `exceptions.message`

A description of the exception that occurred.

## `exceptions.category`

The category of the exception. Category will be `null` for now. As we add new categories we will update this documentation.

## `deliveryContact`

The delivery agent assigned to the order. Will be `null` when not available.

## `deliveryContact.name`

The name of the delivery agent.

## `deliveryContact.phone`

The phone number of the delivery agent. Will be `null` when not available.

## `deliveryContact.email`

The email address of the delivery agent. Will be `null` when not available.

## `orderingUser`

The user who placed the order. Will be `null` when not available.

## `orderingUser.firstName`

The first name of the user who placed the order.

## `orderingUser.lastName`

The last name of the user who placed the order.

## `orderingUser.email`

The email address of the user who placed the order.

## `images`

An array of installation images associated with the order.

## `images.url`

The URL of the image.

## `manufacturer`

The manufacturer / partner on the order, e.g. `"Carrier"`. `null` for legacy orders or when unresolved.

## `distributor`

The distributor company on the order, e.g. `"Carrier Enterprises"`. `null` when unresolved.

## `distributor.name`

The name of the distributor company.

## `distributionCenter`

The distribution center fulfilling the order, e.g. `"Carrier Enterprise(CE) Springfield #3934"`. `null` when unresolved.

## `distributionCenter.name`

The name of the distribution center.

## `distributionCenter.address`

The address of the distribution center.

## `distributionCenter.address.line1`

The first line of the distribution center's address.

## `distributionCenter.address.line2`

The second line of the distribution center's address. `null` when not provided.

## `distributionCenter.address.city`

The city of the distribution center's address.

## `distributionCenter.address.stateOrProvince`

The state or province of the distribution center's address.

## `distributionCenter.address.postalCode`

The postal code of the distribution center's address.

## `distributionCenter.phone`

The phone number of the distribution center, as the distributor publishes it. `null` when the distributor has not provided one.

## `cancellationRequest`

The cancellation request associated with this order, if one exists. This field is omitted when the order has no cancellation request.

## `cancellationRequest.status`

The current status of the cancellation request. Will be one of:

- `Pending` - The cancellation request is awaiting review
- `Approved` - The cancellation request was approved and the order has been cancelled
- `Denied` - The cancellation request was denied and the order continues processing

## `cancellationRequest.reason`

The reason provided for the cancellation request.

## `cancellationRequest.createdAt`

The timestamp when the cancellation request was created in ISO 8601 format.

## `cancellationRequest.updatedAt`

The timestamp when the cancellation request was last updated in ISO 8601 format.

## `confirmationNumbers`

An array of confirmation numbers objects. Multiple confirmation numbers are usually an indication that the order has been split into multiple shipments.

## `confirmationNumbers.value`

The value of the confirmation number. Confirmation numbers are a reference number from a fulfillment partner that enable you to track your order. They are issued when we submit the order to the partner.

### Example payload

```json
{
  "topic": "order.created",
  "data": {
    "id": "ORD-12345XYZ",
    "poNumber": "123456",
    "viewUrl": "https://web.sibipro.com/orders/ORD-12345XYZ",
    "createdAt": "2025-03-18T15:30:45.123Z",
    "propertyAddress": {
      "line1": "12345 E Main St",
      "line2": "Unit 3",
      "city": "Anytown",
      "stateOrProvince": "AZ",
      "postalCode": "85233"
    },
    "fulfillmentMethod": "DELIVERY",
    "requestedFulfillmentDate": "2025-03-22T00:00:00.000Z",
    "estimatedFulfillmentDate": "2025-03-22T00:00:00.000Z",
    "fulfillmentTimeStart": "2025-03-22T12:00:00.000Z",
    "fulfillmentTimeEnd": "2025-03-22T16:00:00.000Z",
    "actualFulfillmentDate": null,
    "status": "Processed",
    "statusDetail": "Order confirmation number updated",
    "taxCents": 4500,
    "totalCents": 90500,
    "fees": [
      {
        "name": "Standard Delivery",
        "totalPriceCents": 2500
      }
    ],
    "lineItems": [
      {
        "name": "Ashton 2.0 - Benton Blonde",
        "sku": "VTRBENBLO7X48-4.4MM-12MIL",
        "quantity": 879,
        "unitOfMeasure": "Sq Ft",
        "unitPriceCents": 139,
        "totalPriceCents": 122181
      }
    ],
    "exceptions": [
      {
        "createdAt": "2025-03-18T15:35:22.456Z",
        "sku": "VTRBENBLO7X48-4.4MM-12MIL",
        "message": "Product temporarily out of stock at nearest distribution center",
        "category": "installation-failed"
      },
      {
        "createdAt": "2025-03-18T15:36:10.789Z",
        "sku": null,
        "message": "Delivery address outside of standard service area, additional fees may apply",
        "category": null
      }
    ],
    "deliveryContact": {
      "name": "Jay Doe",
      "phone": "123-456-7890",
      "email": "jay.doe@example.com"
    },
    "orderingUser": {
      "firstName": "Jane",
      "lastName": "Doe",
      "email": "jane.doe@example.com"
    },
    "confirmationNumbers": [{ "value": "1234567890" }],
    "images": [
      { "url": "https://s3.us-east-2.amazonaws.com/sibi.images/fund/Sibi.png" },
      { "url": "https://s3.us-east-2.amazonaws.com/sibi.images/auth/logo.png" }
    ],
    "manufacturer": "Carrier",
    "distributor": { "name": "Carrier Enterprises" },
    "distributionCenter": {
      "name": "Carrier Enterprise(CE) Springfield #3934",
      "address": {
        "line1": "456 W Distribution Ave",
        "line2": null,
        "city": "Springfield",
        "stateOrProvince": "AZ",
        "postalCode": "85234"
      },
      "phone": "(480) 555-0134"
    },
    "cancellationRequest": {
      "status": "Approved",
      "reason": "Customer requested cancellation - wrong item ordered",
      "createdAt": "2025-03-18T15:30:45.123Z",
      "updatedAt": "2025-03-18T16:45:22.456Z"
    }
  }
}
```
