v1

latestOpenAPI 3.1.0Proprietary2026-08-06177398877.4 KB
Invoices

Create an invoice

Create a new invoice for an order.

What happens

  • Invoice record is created for the order
  • Order status updates to DELIVERED_UNPAID
  • Due date calculated from payment term if not provided

Note

Each shipment can have only one AR invoice. Use POST /shipments/{id}/invoice/generate to generate the invoice PDF document.

post/invoices

Request body

orderIdstring uuid required

Order to invoice

invoiceDatestring date required

Invoice date

dueDatestring date

Payment due date

amountnumber required

Invoice amount (typically calculated from order charges)

referencestring

External reference number

currencystring

Currency code (defaults to customer currency)

paymentTermIdstring uuid

Payment term (defaults to customer default)

Response

Invoice created successfully

idstring uuid required
friendlyIdstring required

Human-readable invoice ID

keystring nullable

Client-defined key

orderIdstring uuid

Associated order ID

orderKeystring nullable

Order friendly ID

shipmentIdstring uuid

Associated shipment ID

shipmentKeystring nullable

Shipment friendly ID

status'DRAFT' | 'AWAITING_PAYMENT' | 'PARTIALLY_PAID' | 'PAID' | 'VOIDED' required

Current status of the invoice.

  • DRAFT: Invoice record exists but not finalized
  • AWAITING_PAYMENT: Invoice finalized, awaiting payment
  • PARTIALLY_PAID: Some payments received, balance remains
  • PAID: Fully paid
  • VOIDED: Invoice cancelled/voided
invoiceDatestring date required

Date invoice was issued

dueDatestring date nullable

Payment due date

amountnumber required

Total invoice amount

currencystring nullable

Currency code (USD, CAD)

referencestring nullable

External reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

creditsAppliednumber nullable

Total credits applied

factorName'DENIM' | 'HAULPAY'

Factoring provider for invoice financing.

  • DENIM: Denim factoring
  • HAULPAY: HaulPay factoring
factorJobIdstring nullable

External factoring job ID

factorStatusstring nullable

Current factoring status

qboIdstring nullable

QuickBooks Online invoice ID

documentIdstring uuid nullable

Generated invoice PDF document ID

documentUrlstring nullable

Download URL for invoice PDF

createdAtstring date-time required
updatedAtstring date-time nullable

Example response

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "friendlyId": "INV-00001",
  "customer": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "key": "ERP-CUSTOMER-ACME",
    "name": "Acme Manufacturing Corp",
    "friendlyId": "A123456",
    "status": "ACTIVE",
    "phoneNumber": "+1-555-123-4567",
    "website": "https://acme-manufacturing.com",
    "createdAt": "2025-01-15T10:00:00Z",
    "updatedAt": "2025-01-15T14:30:00Z"
  },
  "currency": "USD",
  "paymentTerm": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "key": "ERP-PAYTERM-NET30",
    "name": "Net 30",
    "description": "Payment due 30 days from invoice date",
    "days": 30,
    "quickPayFee": 0.05,
    "createdAt": "2025-01-15T10:00:00Z",
    "updatedAt": "2025-01-15T14:30:00Z"
  }
}