Skip to main content
PUT

Authorizations

Authorization
string
header
required

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

Path Parameters

id
integer
required

ID of the purchase order to update

Body

application/json
order_date
string<date>
required

Date when the purchase order was created (YYYY-MM-DD)

Example:

"2024-01-15"

supplier_id
integer
required

ID of the supplier

Example:

123

items
object[]
required

Array of line items for the purchase order

Minimum array length: 1
warehouse_id
integer | null

ID of the warehouse

Example:

1

location_id
integer | null

ID of the location

Example:

1

order_status
default:active

Milestone status (token or numeric id). Also accepts 30 (production_active) and 88 (delivered) by id. Writes a milestone row and updates the PO header.

Available options:
active,
production_started,
production_completed,
in_transit,
completed,
deleted
Example:

"active"

order_numbers
string[] | null

Array of purchase order numbers used to identify the purchase order across various systems

Maximum string length: 255
Example:
invoice_date
string<date> | null

Date when the purchase order was invoiced (YYYY-MM-DD)

Example:

"2024-01-16"

total_shipping_cost
number<float> | null
default:0

Total shipping cost

Required range: x >= 0
Example:

50

total_tax
number<float> | null
default:0

Total tax amount

Required range: x >= 0
Example:

80

public_note
string | null

Public notes visible to suppliers

Example:

"Please ship via express delivery"

private_note
string | null

Internal private notes

Example:

"Rush order - expedite processing"

requested_ship_date
string<date> | null

Requested shipping date (YYYY-MM-DD)

Example:

"2024-01-20"

arrival_due_date
string<date> | null

Expected arrival date (YYYY-MM-DD)

Example:

"2024-01-25"

ship_to
object | null

Shipping address information

payments
object[] | null

Array of payments for this purchase order. If provided, replaces all existing payments. Totals are automatically recalculated after payments are updated.

custom_fields
object | null

Custom field values for the purchase order

Example:
tags
string[] | null

Tags to associate with the purchase order

Maximum string length: 255
Example:

Response

Purchase order updated successfully

data
object