Skip to main content
POST

Authorizations

Authorization
string
header
required

Authenticate using a bearer token. To create a token, navigate to /settings/api-tokens and click Create API Token.

Body

application/json
channel_id
integer
required

ID of the channel this order belongs to

Example:

1

order_number
string
required

Unique order number identifier

Maximum string length: 255
Example:

"ORD-2024-001"

order_date
string<date>
required

Date when the order was placed (YYYY-MM-DD)

Example:

"2024-01-15"

order_status
enum<string>
required

Current status of the order

Available options:
pending,
shipped,
fulfilled,
cancelled,
awaiting_shipment,
partially_shipped,
on_hold,
backorder,
partially_refunded,
committed,
processing,
completed
Maximum string length: 255
Example:

"pending"

items
object[]
required

Array of line items for the order

Minimum array length: 1
customer_email
string<email> | null

Customer's email address

Maximum string length: 255
Example:

"customer@example.com"

customer_username
string | null

Customer's username

Maximum string length: 255
Example:

"customer123"

customer_po_number
string | null

Customer's purchase order number

Maximum string length: 255
Example:

"PO-2024-5678"

company_id
integer | null

ID of the company (business account) to associate with this sales order. When provided, the system will automatically populate the bill_to and ship_to addresses from the company's information. If company_id is provided, the bill_to and ship_to fields become optional.

Example:

123

bill_to
object

Billing address information. Required when company_id is not provided. When company_id is provided, this field is optional and will be populated from the company's billing address if not specified.

ship_to
object

Shipping address information. Required when company_id is not provided. When company_id is provided, this field is optional and will be populated from the company's default shipping address if not specified.

ship_date
string<date> | null

Date when the order was or will be shipped (YYYY-MM-DD)

Example:

"2024-01-20"

hold_until_date
string<date> | null

Date to hold the order until (YYYY-MM-DD)

Example:

"2024-01-18"

ship_by_date
string<date> | null

Required ship by date (YYYY-MM-DD)

Example:

"2024-01-25"

earliest_ship_date
string<date> | null

Earliest date the order can be shipped (YYYY-MM-DD)

Example:

"2024-01-18"

total_tax
number<float> | null

Total tax amount for the order

Required range: x >= 0
Example:

15.75

total_shipping
number<float> | null

Total shipping cost for the order

Required range: x >= 0
Example:

12.5

total_discount
number<float> | null

Total discount amount applied to the order. If omitted, any header trade discount configured on the linked company (see header_discount_enabled, header_discount_type, and header_discount_value on the company) is computed and applied automatically. Provide an explicit value to override.

Required range: x >= 0
Example:

10

requested_shipping_service
string | null

Requested shipping service or carrier

Maximum string length: 255
Example:

"FedEx Ground"

customer_notes
string | null

Notes from the customer

Example:

"Please handle with care - fragile items"

internal_notes
string | null

Internal notes for order processing

Example:

"Rush order - expedite processing"

custom_fields
object | null

Custom field values for the sales order

Example:
tags
string[] | null

Tags to associate with the sales order

Maximum string length: 255
Example:

Response

Sales order created successfully

data
object