Billing · Invoices
Create invoice
Creates an invoice for one of your clients and emails it to them right away, even as a DRAFT. The total is worked out from the line items.
environment is LIVE or TEST: the mode of the key that made the invoice. It never changes. A TEST key makes a sandbox invoice; see Test mode.
Authorization
HeaderBody parameters
clientId string Required
The client to bill. Must be one of your clients.amount number Required
At least 0.01. The saved total is worked out from lineItems, so this value is replaced.currency string
USD (default), EUR, GBP, CAD, AUD, AED, SGD, INR, BDT or BRL.dueDate date
ISO 8601 date, e.g. 2026-12-31.status enum
DRAFT or PENDING. Default PENDING. PAID comes only from a payment, and CANCELLED is set by Update invoice.description string
A note shown to the client.issuedAt date-time
Issue date, ISO 8601. Default: now.country string
Country shown on the invoice.contractId string
Links the invoice to one of your contracts. Must be of the invoice’s own mode (a sandbox invoice can’t bill a live project or contract): 404 otherwise.clientProjectId string
Links the invoice to one of your client projects. The invoice must use the project’s currency. Must be of the invoice’s own mode (a sandbox invoice can’t bill a live project or contract): 404 otherwise.metadata object
Your own JSON data. String notes and footer keys are printed on the invoice PDF.vizibility enum
PUBLIC (default) or PRIVATE. Stored for your records.partialPayment boolean
Stored for your records; the client still pays the full total. Default false.recurring boolean
Stored for your records; it doesn’t schedule repeat invoices. Default false.quantity number
Whole number stored for your records. Default 1.Line items
lineItems is required: at least one item, with a total above zero. Each item is unitPrice × quantity (quantity defaults to 1), minus discount, plus tax percent. discountType is % (the default) or $ for a fixed amount. An item can also carry a description.