> This page is for Developer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.bigcommerce.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.bigcommerce.com/_mcp/server.

# Orders

Lesson 11 of 26 · 30 min

An order is a collection of items, along with customer and shipping information, that has been finalized with a payment or attempted payment. The Order object contains a record of the purchase agreement between a shopper and a merchant.

Orders can contain both digital or physical products. Digital items are delivered via email and do not require a shipping address, whereas physical items require a shipping address and a delivery method.

### Workflows

BigCommerce offers two possible workflows for creating orders via the API: the Server-to-Server Checkout API or the Orders API.

* The Management Checkout API represents an extension of the Management Cart API and can be used to complete a purchase from product selection to conversion
* The Orders API is used to retrieve or update existing orders or to push orders from a third party, like a POS, to BigCommerce

## Create an order

An order can be created by sending a **POST** request to:

`https://api.bigcommerce.com/stores/{{store_hash}}/v2/orders`

* At minimum, an order needs products and a billing address. If either of these fields are omitted the order will be rejected
* An order can be created with either an existing Product or a Custom Product
* You can specify a specific customer by adding `customer_id` in the create order request
* Other recommended fields include: Shipping Address, Status and Discounts (if applicable)

### Order Response

The response will have abbreviated order contents with sub-resources available to get the full order information.

The order is automatically set to a status of 1 or Pending.

The response also returns an id which is the order id.

> **Info**
>
> See [Orders Overview](/developer/docs/admin/checkout-and-cart/orders/overview) for more information on Order Statuses

## GET An Order

To retrieve details of a specific order, send a **GET** request to `/orders/{order_id}`.

```http showLineNumbers={false}
GET https://api.bigcommerce.com/stores/{{store_hash}}/v2/orders/{order_id}
```

## Update an Order

Update an order with a **PUT** request to `/orders/{order_id}`

```http showLineNumbers={false}
PUT https://api.bigcommerce.com/stores/{{store_hash}}/v2/orders/{order_id}
```

See the [Update an order](/developer/api-reference/rest/admin/management/orders/update-order) reference for further reference on what can be updated on an order.

## Archive an Order

To archive (delete) a specific order, send a **DELETE** request to /orders/\{order\_id}.

```http showLineNumbers={false}
DELETE https://api.bigcommerce.com/stores/{{store_hash}}/v2/orders/{order_id}
```

ALL orders can be deleted with a DELETE request to /orders

```http showLineNumbers={false}
DELETE https://api.bigcommerce.com/stores/{{store_hash}}/v2/orders
```

## Resources:

* [Orders Overview](/developer/docs/admin/checkout-and-cart/orders/overview)
* [Update an Order](/developer/api-reference/rest/admin/management/orders)
* [Archive an Order](/developer/api-reference/rest/admin/management/orders)