Skip to main content

Create Order

POST 

/api/channel/orders

Creates a new sales order from a channel integration.

Authentication: Requires channel integration token (channel:write ability).

Rate limits: 500 requests per 60 seconds.

All inbound events are automatically captured for audit/replay.

Fields:

  • sales_order_number (required, unique per channel): External order identifier
  • order_date (required): Order date
  • ship_by_date (optional): Must be >= order_date
  • deliver_by_date (optional): Must be >= order_date
  • customer_po_number (optional): Customer's PO reference
  • requested_shipping_method (optional): Requested shipping service
  • shipping_charge (optional): Shipping amount
  • customer (optional): Customer info — must have EITHER id OR name, not both
    • customer.id: Existing customer ID
    • customer.name: Customer name
    • customer.email: Email
    • customer.phone: Phone
    • customer.company: Company name
  • billing_address (optional): Billing address object
  • shipping_address (optional): Shipping address object
    • *.name, *.company, *.address1, *.address2, *.city, *.province_code, *.zip, *.country_code, *.phone
  • sales_order_lines (required, min 1): Order lines
    • lines.*.sku (required): Product SKU (must exist)
    • lines.*.quantity (required): Quantity (min 1)
    • lines.*.unit_price (optional): Unit price
    • lines.*.description (optional): Line description
  • notes (optional): Array of note strings
  • tags (optional): Array of tag strings
  • sales_rep (optional): Sales rep — must have EITHER id OR name, not both
    • sales_rep.id: Existing active sales rep ID
    • sales_rep.name: Sales rep name

Request

Responses

Successful response