Release Notes — May 9, 2026
This release improves the Invoice Provider Settings page (Settings → Invoice) with stricter validation, smarter document type handling, and better API key guidance for each provider.
Invoice Provider Settings improvements
API key must be tested before saving
When entering a new API key for an external provider (Billingo, Lexoffice, Pennylane, Holded, SmartBill), the Save button now stays disabled until the connection test passes.
- Entering a key and not testing → Save disabled, warning shown
- Testing and failing → Save disabled, error shown
- Testing and succeeding → Save enabled
If you are only changing other settings (currency, VAT %, payment terms) without re-entering the key, no re-test is required.
External providers lock Document Type to Legal Invoice
When an external provider is selected, the Document Type automatically switches to Legal Invoice and the Proforma / Work Summary options become unavailable.
| Provider | Available document types |
|---|---|
| Internal PDF | Proforma, Work Summary, Legal Invoice |
| Billingo, Lexoffice, Pennylane, Holded, SmartBill | Legal Invoice only |
Switching back to Internal PDF restores Proforma as the default document type.
Provider-specific API key guidance
Info banners now appear for all active providers, explaining exactly where to find your API key in each provider's interface:
| Provider | Where to find the API key |
|---|---|
| Billingo | app.billingo.hu → Beállítások → API → API kulcs létrehozása |
| Lexoffice | Erweiterungen → Weitere Apps → Public API → Verwalten → + API-Schlüssel erstellen |
| Pennylane | Paramètres → Intégrations → Accès API → Créer un token (scope: customer_invoices:all) |
| Holded | app.holded.com → Configuración → Integraciones → API → Nueva API Key |
| SmartBill | cloud.smartbill.ro → Configurare → Cont → Token API (+ account email + company CIF) |
Permission fix
The Invoice Provider Settings page is now accessible to all users with the settings.manage permission (unit owners and admins). Previously it incorrectly required billing.manage, which blocked admin-role users from accessing the page.
Summary of changes
| Layer | Change |
|---|---|
Frontend InvoiceProviderSettings.tsx | Save disabled until API key test passes; external provider locks Document Type to Legal Invoice; info banners added for Billingo and Holded |
Frontend InvoiceProviderSettings.tsx | Permission check changed from billing.manage to settings.manage |
Frontend locales/*/settings.json | New keys: warnApiKeyNotTested, warnApiKeyFailed, billingoApiKeyInfo, holdedApiKeyInfo (all 5 languages) |