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_key string

S3 key of the uploaded CSV file containing invoice data.

finalize boolean

If true, immediately finalize all created invoices.

Responses

201 Successful Response

items array · InvoiceResponse requiredInvoiceResponse

List of items

25 fields
id string required

Invoice UUID.

business_id string required

Business UUID.

created_at string · date-time required

Creation timestamp.

updated_at string · date-time required

Last update timestamp.

status string required

Status: draft, open, partially_paid, manual_paid, stripe_paid, void.

currency string

Currency for the invoice (USD, CAD, AUD, EUR, or GBP).

stripe_invoice_id string

Stripe invoice ID if synced.

total integer

Total amount in cents.

total_paid integer

Running total of payments received in cents.

balance_due integer

Remaining balance in cents (total - total_paid).

description string

Invoice description/notes.

customer_id string required

Customer UUID.

customer_name string

Customer name (resolved).

customer_email string

Customer email (resolved).

due_date string

Due date (YYYY-MM-DD).

line_items array · LineItemResponse

Invoice line items.

pdf_url string

URL to download invoice PDF.

number string

Invoice number (assigned on finalize).

delivered boolean

Whether invoice was delivered.

delivered_on string · date-time

Delivery timestamp.

hosted_invoice_url string

URL for customer payment portal.

paid_on string · date-time

Payment timestamp.

journal_entries array · object

Associated accounting journal entries.

payments array · InvoicePaymentResponse

Payment records linking bank transactions to this invoice.

recurring_template_id string

ID of recurring template if invoice was generated from one, or if one was created.

total integer

Total number of items (null when not calculated for performance)

limit integer

Pagination limit

next_cursor string

Cursor for next page

prev_cursor string

Cursor for previous page

has_next boolean required

Whether there are more items

has_prev boolean required

Whether there are previous items

400 Bad Request - Invalid input

401 Unauthorized - Authentication required

403 Forbidden - Insufficient permissions

422 Validation Error

detail array · ValidationError ValidationError
5 fields
loc array · string | integer required
msg string required
type string required
input object
ctx object