Invoices

Create invoice

Create a new invoice for a business with line items and optional payments. Supports optional document upload via multipart field file (with optional document_type, upload_source, metadata, tags). JSON-only requests remain supported when no file is provided.

post/v1/platform/businesses/{business_id}/invoices/

Request

  • Base URL
    https://docs.thredfi.com (the document declares no server; this is the origin it was published from)
  • Auth
    • HTTP bearer
    • or HTTP bearer
    • or HTTP basic
    • or HTTP bearer
    • or HTTP bearer

Path parameters

business_idstring uuid required

Business UUID provided by Thred (unique identifier for the business)

Request body

external_idstring required

External system identifier for this invoice

sent_atstring date-time required

When the invoice was sent (ISO 8601 format)

due_atstring date-time

When payment is due (ISO 8601 format). Defaults to 30 days from sent_at

voided_atstring date-time

When the invoice was voided (not used - we use cancelled status)

invoice_numberstring

Invoice number for display. Auto-generated if not provided

invoice_type'invoice' | 'receipt'

Type of invoice: invoice or receipt

  • invoice - Invoice
  • receipt - Receipt
customer_idstring uuid nullable

Existing customer ID to assign invoice to

customer_external_idstring

External customer ID. Will create customer if not found

memostring

Invoice description or memo

additional_discountinteger

Additional invoice-level discount in cents

additional_sales_taxesobject[]

Array of additional tax objects

additional_sales_taxes_totalinteger

Total additional sales taxes in cents

tipsinteger

Tips amount in cents

tips_accountunknown
transaction_tagsstring[]

Array of transaction tags for categorization

metadataunknown

Response

typestring required

Resource type identifier

idstring uuid required

Unique invoice identifier

business_idstring uuid required

Business this invoice belongs to

external_idstring

External system identifier

status'DRAFT' | 'SENT' | 'PAID' | 'PARTIALLY_PAID' | 'OVERDUE' | 'CANCELLED' | 'REFUNDED' required

Invoice status in uppercase format

sent_atstring date-time required

When the invoice was sent to customer

due_atstring date-time required

When payment is due (ISO timestamp)

paid_atstring date-time required

When the invoice was fully paid

voided_atstring date-time nullable required

When the invoice was voided (always null - we use cancelled status)

is_overdueboolean required

True if invoice is past due date and has outstanding balance

invoice_numberstring required

Invoice number for display and reference

invoice_type'invoice' | 'receipt' required

Type of invoice: invoice or receipt

  • invoice - Invoice
  • receipt - Receipt
currencystring required

ISO 4217 currency code (e.g., EUR, GBP, USD)

memostring

Invoice description or memo

subtotalinteger required

Subtotal amount in cents before taxes

additional_discountinteger required

Additional invoice-level discount in cents

additional_sales_taxes_totalinteger required

Total additional sales taxes in cents

tipsinteger required

Tips amount in cents

tips_accountstring nullable required

Tips account information

total_amountinteger required

Total invoice amount in cents including taxes

outstanding_balanceinteger required

Outstanding balance in cents

imported_atstring date-time required

When the invoice was imported/created

updated_atstring date-time required

When the invoice was last updated

Example response

{
  "status": "SENT"
}

Changes

No recorded changes to this operation across all 1 revision of this API.