Skip to main content
PUT
Update Invoice
The PUT request is used to fully replace an existing entity with a new one based on the provided ID. This means:
  • All fields in the request body will overwrite the existing entity.
  • Any missing fields will be removed from the entity.
  • The request is idempotent, meaning multiple identical PUT requests will always result in the same final state.

Authorizations

X-API-Key
string
header
required

API Key for authentication

Path Parameters

id
string
required

Invoice ID

Body

application/json

Invoice

reference_id
string
required
Maximum string length: 255
Example:

"INV-20250101"

order_ids
string[]
required

All orders covered by this invoice; the first entry is treated as the primary order.

Minimum array length: 1
Example:
invoice_number
string
required
Maximum string length: 255
Example:

"INV-20250101"

paid_amount
number
required
Required range: x >= 0
Example:

0

due_date
string
required
Example:

"2025-01-01T00:00:00Z"

items
object[]
required
status
enum<string>
Available options:
PAID,
PENDING,
PARTIALLY_PAID,
OVERPAID
Example:

"PAID"

invoice_status
enum<string>

Lifecycle status of the invoice. Omit on update to leave the stored value unchanged.

Available options:
DRAFT,
OPEN,
SENT,
PARTIALLY_PAID,
CLOSED,
OVERDUE,
CANCELLED,
CREDIT_NOTE_ISSUED
Example:

"SENT"

payment_method
string

Omit on update to leave unchanged.

Maximum string length: 64
Example:

"card"

payment_terms
string

Omit on update to leave unchanged.

Maximum string length: 255
Example:

"Net 30"

po_number
string

Customer PO number. Omit on update to leave unchanged.

Maximum string length: 255
Example:

"PO-2026-001"

sales_rep_id
string

User id the invoice was created for. Omit on update to leave unchanged.

Example:

"01f5d171-d3e3-4b2b-bd57-0727194b5bed"

shipped_date
string

Date the invoice shipped (stored as a date). Omit on update to leave unchanged.

Example:

"2026-07-15T00:00:00Z"

shipping_method
string

Omit on update to leave unchanged.

Maximum string length: 255
Example:

"FedEx Ground"

remarks
string
Maximum string length: 255
Example:

"Remarks"

url
string
Example:

"https://example.com/invoice/INV-20250101"

created_at
string
Example:

"2025-01-01T00:00:00Z"

updated_at
string

Updated at must be later than the order creation date

Example:

"2025-01-01T00:00:00Z"

charges
object[]

On update the array is the full desired set: charges missing from it are removed. Omit the key to leave charges untouched.

attributes
object[]

Custom invoice attributes by name; the attribute must exist for the tenant (entity type "invoice"). Upsert-only on update: listed attributes are added or overwritten, attributes missing from the list are left unchanged and cannot be removed.

Response

OK

data
object