Create invoice

POST/api/v1/invoices

Create a new invoice for a customer. Optionally include 'recurring' config to also create a recurring template.

Operation ID: create_invoice_api_v1_invoices_post·View as markdown·OpenAPI slice

Authentication

Bearer token authentication. Pass your DayZero API token in the Authorization header and the target business UUID in x-business-id.

Request body

customer_idstringrequired

UUID of the customer to invoice.

currencystring

Currency for the invoice (USD, CAD, AUD, EUR, or GBP). Defaults to business default.

line_itemsarray · LineItemRequestrequiredLineItemRequest

Line items (at least one required). Can be variant-linked or custom.

6 fields
variant_idstring

UUID of product variant. Omit or use 'custom' for manual line items.

quantityinteger

Quantity ordered. Defaults to 1 for custom items.

descriptionstring

Line item description (required for custom items).

unit_priceinteger

Price per unit in cents. Required for custom items. For variant-linked items this is an OPTIONAL override - if omitted, the current catalog price is used; if provided, the catalog price is ignored for this invoice. The override is snapshotted onto the invoice line item.

amountinteger

Total amount in cents. Deprecated for custom items - use unit_price instead. For backward compatibility, if unit_price is not set, amount is treated as unit_price.

location_idstring

Optional warehouse UUID to deduct this line from. Overrides the invoice's fulfillment_location_id and the business default. Ignored for custom (non-variant) lines.

due_datestringrequired

Payment due date in YYYY-MM-DD format.

issue_datestring

Optional 'Date of issue' to display on the invoice in YYYY-MM-DD format. Use this to backdate an invoice. When set, it replaces the system-generated issue date on the invoice PDF and receipt.

descriptionstring

Optional invoice description or notes.

fulfillment_location_idstring

Default warehouse UUID for inventory deductions when the invoice is delivered. Per-line location_id overrides this.

recurringInvoiceRecurringConfig

If provided, creates a recurring template for this invoice.

Responses

201Successful Response

successboolean
messagestring
codestring
dataInvoiceResponse

400Bad Request - Invalid input

401Unauthorized - Authentication required

403Forbidden - Insufficient permissions

422Validation Error

detailarray · ValidationErrorValidationError
5 fields
locarray · string | integerrequired
msgstringrequired
typestringrequired
inputobject
ctxobject