Lexoffice Integration
Lexoffice (Haufe Group) is an online accounting and invoicing platform for the German-speaking market (DE / AT / CH). When configured in CADENSA, you can issue legally valid invoices directly from your tracked time entries — including automatic E-Rechnung (ZUGFeRD) generation for German B2B invoices, which is mandatory from 2025.
Lexoffice is designed for businesses in Germany 🇩🇪, Austria 🇦🇹, and Switzerland 🇨🇭.
Before You Begin
You need:
- An active Lexoffice account (any plan — the Public API is available on all paid plans)
- A Lexoffice API key (see below)
- CADENSA unit with at least Admin role
Step 1 — Get Your Lexoffice API Key
- Log in to app.lexoffice.de
- In the left sidebar, click Erweiterungen (Extensions)
- Under the Weitere Apps section, find the Public API card
- Click Verwalten (Manage)
- Click + API-Schlüssel erstellen (Create API key)
- Copy the generated key immediately — it is only shown once
Never share your API key or commit it to version control. Anyone with the key can create and manage invoices on your behalf.
Step 2 — Configure in CADENSA
- Open Settings → Invoice in CADENSA
- Select Lexoffice 🇩🇪 as the provider
- An info box will appear:
Find your Lexoffice API key at: Erweiterungen → Weitere Apps → Public API → Verwalten → + API-Schlüssel erstellen
- Paste your API key into the API Key field
- Click Test Connection — a green
confirms the key is valid
- Click Save
Step 3 — Set Defaults
Configure defaults so the Generate Invoice dialog is pre-filled with sensible values:
| Setting | Recommended value (DE) | Description |
|---|---|---|
| Default Currency | EUR | Currency used on new invoices |
| Default VAT % | 19 | Standard German VAT rate (reduced: 7, exempt: 0) |
| Payment Terms Days | 14 or 30 | Days until due date |
| Default Document Type | Invoice | Pre-selects "Invoice" in the dialog |
- Austria: standard VAT is 20%
- Switzerland: standard VAT is 8.1%
Issuing an Invoice via Lexoffice
Once configured, follow the standard invoice generation flow:
- Open Reports → apply date range and project filters
- Click Generate Invoice
- In the Document Type field, select Invoice — the output channel shows
Lexoffice - (Optional) Use the partner picker to select a client from your Lexoffice contacts address book
- Fill in client details, VAT %, and due date
- Click Preview Invoice → review line items and totals
- Click Issue Invoice (Lexoffice)
CADENSA sends the invoice to the Lexoffice API, receives the invoice number, and downloads the PDF.
- A new invoice is created in draft state, then immediately finalized (which assigns the invoice number)
- Finalized invoices appear in your Lexoffice invoice list
- German B2B invoices automatically include a ZUGFeRD / E-Rechnung XML attachment
Partner Picker
When Lexoffice is configured, the Generate Invoice dialog shows a partner picker — a searchable dropdown of your Lexoffice contacts.
Selecting a contact auto-fills:
- Company name
- Contact name
- Street, postal code, city, country
- Tax number (Steuernummer / USt-IdNr.)
This avoids re-entering client data for repeat invoices. Contacts are fetched live from the Lexoffice /contacts API (customer role only).
VAT Rates
Lexoffice enforces specific valid VAT rates:
| Rate | Use case |
|---|---|
| 19% | Standard German VAT (Regelsteuersatz) |
| 7% | Reduced German VAT (ermäßigter Steuersatz) |
| 0% | VAT-exempt, intra-community supply, third-country |
If you enter a VAT rate other than 0, 7, or 19, CADENSA automatically rounds to the nearest valid Lexoffice value. Use 0 for VAT-free invoices (e.g. Kleinunternehmerregelung § 19 UStG).
Document Routing
| Document Type | Output |
|---|---|
| Proforma | Internal PDF (never sent to Lexoffice) |
| Work Summary | Internal PDF (never sent to Lexoffice) |
| Invoice | Sent to Lexoffice API → PDF returned |
Only Invoice type documents are sent to Lexoffice. Proforma and Work Summary are always generated internally, regardless of provider setting.
Invoice History & PDF Download
After a successful invoice creation:
- The invoice appears in Billing → Invoice History in CADENSA
- The invoice also appears in your Lexoffice account under Umsätze → Ausgangsrechnungen
- You can re-download the PDF at any time from either place
Testing the Connection
Use the Test Connection button after entering your API key. CADENSA calls the Lexoffice /profile endpoint to verify:
- The API key is valid and not expired
- The account is active
A successful test shows:
✓ Connection successful
Troubleshooting
"401 Unauthorized" error
The API key is invalid or has been revoked.
Fix: Generate a new API key in Lexoffice (Erweiterungen → Public API → + API-Schlüssel erstellen) and re-enter it in CADENSA.
"INVOICE_NO_ENTRIES" error
No time entries were found for the selected date range and project filters.
Fix: Adjust the date range or project filter and try again.
Invoice stuck in draft / no invoice number
Lexoffice requires invoices to be finalized before an invoice number is assigned. CADENSA finalizes the invoice immediately on creation (?finalize=true). If finalization fails (e.g. missing required fields), the invoice may remain in draft.
Fix:
- Log in to Lexoffice and check Umsätze → Ausgangsrechnungen for draft invoices
- Review the missing fields (typically: country code or VAT number)
- Complete the invoice manually in Lexoffice, or delete it and retry from CADENSA with complete client details
PDF download takes a long time
Lexoffice generates PDFs asynchronously. CADENSA polls the API for up to 30 seconds waiting for the PDF. If the PDF is not ready in time, an error is shown.
Fix: Wait a moment and re-download from Billing → Invoice History.
VAT rate not accepted
Lexoffice only accepts 0, 7, and 19 as valid tax rates.
Fix: In the Generate Invoice dialog, use one of these values in the VAT % field.
Client country code not recognized
Lexoffice requires a valid ISO 3166-1 alpha-2 country code (e.g. DE, AT, CH, US). Free-text country names are auto-converted, but unusual names may fail.
Fix: Enter the 2-letter ISO country code directly in the Country field (e.g. DE instead of Germany).
Lexoffice vs. Billingo
| Feature | Lexoffice 🇩🇪 | Billingo 🇭🇺 |
|---|---|---|
| Market | DE / AT / CH | Hungary |
| Legal standard | ZUGFeRD / E-Rechnung | NAV Online Számla 3.0 |
| Auth | Bearer token (API key) | API key (v3) |
| Sandbox mode | ||
| Partner picker | /contacts endpoint | /partners endpoint |
| PDF generation | Async (polling) | Synchronous |
| Invoice finalization | Explicit (?finalize=true) | Automatic |
Related Pages
- Invoice Provider Settings — configure provider, defaults, and API key
- Invoice Generation — how to generate invoices from time entries
- Billing — Subscription Plans — which CADENSA plan is required