Optimaite

Invoices

2 min readUpdated May 26, 2026Auch auf Deutsch verfuegbar

The Invoices API handles invoicing, open-item tracking, DATEV export for German accounting, and dunning automation.

Endpoints

MethodPathDescription
GET/api/v1/invoicesList invoices
POST/api/v1/invoicesCreate an invoice
GET/api/v1/invoices/{id}Get an invoice
PUT/api/v1/invoices/{id}Update an invoice
DELETE/api/v1/invoices/{id}Delete a draft invoice
POST/api/v1/invoices/{id}/sendSend invoice to party
POST/api/v1/invoices/{id}/mark-paidMark as paid
GET/api/v1/invoices/open-itemsList open (unpaid) items
POST/api/v1/invoices/datev-exportExport to DATEV format

Required scope: invoices:read for GET, invoices:write for POST/PUT/DELETE.

The Invoice Object

{
  "id": "inv_01ABCDEFG",
  "case_id": "550e8400-e29b-41d4-a716-446655440000",
  "party_id": "pty_01ABCDEF",
  "invoice_number": "RE-2026-042",
  "status": "sent",
  "issue_date": "2026-05-15",
  "due_date": "2026-06-14",
  "total_net": 2250.00,
  "total_gross": 2677.50,
  "tax_rate": 0.19,
  "currency": "EUR",
  "lines": [
    {
      "description": "Legal consultation (3h x 250 EUR)",
      "quantity": 3,
      "unit": "hours",
      "unit_price": 250.00,
      "total": 750.00,
      "time_entry_ids": ["tte_01", "tte_02", "tte_03"]
    }
  ],
  "paid_at": null,
  "created_at": "2026-05-15T10:00:00Z"
}

Create an Invoice

POST /api/v1/invoices
{
  "case_id": "550e8400-e29b-41d4-a716-446655440000",
  "party_id": "pty_01ABCDEF",
  "lines": [
    {
      "description": "Legal consultation",
      "quantity": 3,
      "unit": "hours",
      "unit_price": 250.00
    }
  ],
  "time_entry_ids": ["tte_01", "tte_02", "tte_03"]
}

When time_entry_ids are provided, the linked time entries are automatically marked as billed.

DATEV Export

POST /api/v1/invoices/datev-export
{
  "from": "2026-01-01",
  "to": "2026-03-31"
}

Returns a DATEV-compatible file download for import into German accounting software.

Next Steps

  • Cases -- Link invoices to cases
  • Parties -- Manage invoicing contacts
Was this helpful?