Invoices

Create, send, and manage invoices. Invoices post to the double-entry ledger when sent — debiting Accounts Receivable and crediting revenue accounts.

The Invoice Object

FieldTypeDescription
idstringInvoice UUID
objectstringAlways 'invoice'
invoice_numberstringHuman-readable invoice number (e.g., INV-0001)
statusstringdraft, sent, paid, partially_paid, overdue, or void
issue_datestringISO 8601 date
due_datestringISO 8601 date
currencystringISO currency code (e.g., USD)
subtotal_centsnumberSubtotal before tax, in cents
tax_amount_centsnumberTotal tax in cents
total_centsnumberTotal including tax, in cents
amount_due_centsnumberRemaining balance in cents
termsstringPayment terms
memostringInternal memo
note_to_customerstringNote visible to customer
customerobject
line_itemsstring[]Invoice line items
sent_atstringISO 8601 timestamp when sent (null if unsent)
created_atstringISO 8601 timestamp
updated_atstringISO 8601 timestamp

Endpoints

GET/api/v1/invoices

List invoices

Returns a paginated list of invoices for the current organization.

Path & Query Parameters

ParameterTypeDescription
statusstringFilter by status (draft, sent, paid, overdue, void)
customer_idstringFilter by customer UUID
searchstringSearch by invoice number or memo
limitnumberNumber of results (1-50, default 25)
POST/api/v1/invoices

Create an invoice

Creates a new invoice with line items.

Body Parameters

ParameterTypeDescription
customer_idrequiredstringCustomer UUID
invoice_numberstringCustom invoice number
issue_datestringIssue date (YYYY-MM-DD)
due_datestringDue date (YYYY-MM-DD)
termsstringPayment terms
note_to_customerstringNote visible to customer
memostringInternal memo
line_items_attributesarrayLine items
GET/api/v1/invoices/:id

Retrieve an invoice

Returns a single invoice with its payments.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID
PATCH/api/v1/invoices/:id

Update an invoice

Updates an invoice. Recalculates totals and reposts to ledger.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID

Body Parameters

ParameterTypeDescription
customer_idstringCustomer UUID
invoice_numberstringCustom invoice number
issue_datestringIssue date (YYYY-MM-DD)
due_datestringDue date (YYYY-MM-DD)
termsstringPayment terms
note_to_customerstringNote visible to customer
memostringInternal memo
line_items_attributesarrayLine items
POST/api/v1/invoices/:id/send

Send an invoice

Sends the invoice to the customer via email. Posts to ledger if not already posted.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID

Body Parameters

ParameterTypeDescription
dimension_valuesobjectDimension tagging (dimension_id => value_id)
POST/api/v1/invoices/:id/remind

Send payment reminder

Queues a payment reminder email to the customer.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID
POST/api/v1/invoices/:id/void

Void an invoice

Voids the invoice and reverses its ledger entry.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID
POST/api/v1/invoices/:id/record_payment

Record a payment

Records a payment against the invoice.

Path & Query Parameters

ParameterTypeDescription
idrequiredstringInvoice UUID

Body Parameters

ParameterTypeDescription
amount_centsnumberPayment amount in cents (defaults to amount due)
datestringPayment date (YYYY-MM-DD, defaults to today)
payment_methodstringPayment method (check, cash, credit_card, bank_transfer, other)
deposit_to_account_idstringAccount to deposit into