Bulk create invoices

POST/api/v1/invoices/bulk

Create multiple invoices from CSV data in a single request.

Operation ID: create_bulk_invoices_api_v1_invoices_bulk_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

s3_keystring

S3 key of the uploaded CSV file containing invoice data.

finalizeboolean

If true, immediately finalize all created invoices.

allow_duplicatesboolean

By default a row that matches an invoice a previous import already created (same customer, due date, total, description and line items) is skipped and reported under duplicates, so uploading the same file twice is safe. Set true to import those rows anyway — they are created without a fingerprint and will not be deduplicated against on future uploads.

historicalboolean

The file holds invoices that were already issued elsewhere — a books migration rather than new billing. Every row is written locally and none reach Stripe, even if the business has an account connected, so nothing can be sent to or charged to a customer. Past due dates are accepted, which they otherwise are not. Use the invoice_date and invoice_number columns to keep each invoice's original date and number.

Responses

201Successful Response

successboolean
messagestring
codestring
dataInvoiceBulkCreateResponse

400Bad Request - Invalid input

401Unauthorized - Authentication required

403Forbidden - Insufficient permissions

422Validation Error

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