Pennylane Integration
Pennylane is an online accounting and invoicing platform designed for the French market (FR / BE / LU / CH). When configured in CADENSA, you can issue legally valid invoices directly from your tracked time entries, compliant with the Factur-X standard — mandatory for French B2B e-invoicing from September 2026.
Pennylane is designed for businesses in France 🇫🇷, Belgium 🇧🇪, Luxembourg 🇱🇺, and Switzerland 🇨🇭.
Factur-X (PDF/A-3 with embedded XML) becomes mandatory in France:
- September 2026 — large companies
- 2027 — phased rollout to all businesses
CADENSA's Pennylane integration is ready for this requirement.
Before You Begin
You need:
- An active Pennylane account — Essentiel plan or higher (the API is not available on the Basique plan)
- A Pennylane API token (see below)
- CADENSA unit with at least Admin role
The Pennylane Public API is only available on the Essentiel (€24/mo) and Premium (€79/mo) plans. The Basique plan (€14/mo) does not include API access.
Step 1 — Create a Pennylane Account
- Go to pennylane.com
- Click "Démarrer maintenant" (top right)
- Select "Essentiel" and click "Essayer"
- Register with your email and password
- Create a company (required — tokens are company-scoped)
A 15-day free trial starts automatically. No commitment required.
Step 2 — Get Your Pennylane API Token
- Log in to app.pennylane.com
- In the left sidebar, click Paramètres (Settings — gear icon, bottom left)
- Navigate to Intégrations → API
- Click "Générer un token" (Generate a token)
- Copy the generated Bearer token
Never share your token or commit it to version control. Anyone with the token can create and manage invoices on your behalf.
For the official Pennylane guide, see: pennylane.readme.io/docs/generating-my-api-token
Step 3 — Configure in CADENSA
- Open Settings → Invoice in CADENSA
- Select Pennylane 🇫🇷 as the provider
- Paste your API token into the API Key field
- Click Test Connection — a green
confirms the token is valid and shows your company name
- Click Save
Step 4 — Set Defaults
Configure defaults so the Generate Invoice dialog is pre-filled with sensible values:
| Setting | Recommended value (FR) | Description |
|---|---|---|
| Default Currency | EUR | Currency used on new invoices |
| Default VAT % | 20 | Standard French VAT (TVA) rate |
| Payment Terms Days | 30 | Days until due date (30 days is standard in France) |
| Default Document Type | Invoice | Pre-selects "Invoice" in the dialog |
| Issuer Country | FR | Your company's country — enables automatic VAT suggestion |
- 10% — Reduced rate (hospitality, transport)
- 5.5% — Super-reduced rate (food, books, some cultural services)
- 0% — Exempt (intra-community supply, export)
Issuing an Invoice via Pennylane
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
Pennylane - Fill in client details (name, address, country, VAT number if applicable)
- Set the VAT rate (default: 20%)
- Click Preview Invoice → review line items and totals
- Click Issue Invoice (Pennylane)
CADENSA sends the invoice to the Pennylane API. A customer record is automatically found or created by name match. The invoice is created and finalized, and the PDF is downloaded from Pennylane.
- A new customer invoice is created in Pennylane under Ventes → Factures clients
- The invoice is finalized immediately (status:
waiting_payment) - PDF is available for download both from CADENSA (Invoice History) and from Pennylane
Draft Mode
To create a draft invoice without finalizing it:
The Pennylane integration creates finalized invoices by default (draft: false). For testing or review purposes, contact your Pennylane account to set invoices to draft manually, or delete test invoices from the Pennylane dashboard after testing.
Since Pennylane has no sandbox environment, use Proforma or Work Summary document types in CADENSA for test runs — these are always generated as internal PDFs and never sent to Pennylane.
VAT Rate Codes
Pennylane uses specific French VAT rate codes internally:
| Tax Rate | Pennylane Code | Use case |
|---|---|---|
| 20% | FR_200 | Standard TVA (taux normal) |
| 10% | FR_100 | Reduced rate (taux intermédiaire) |
| 5.5% | FR_055 | Super-reduced rate (taux réduit) |
| 0% | exempt | VAT-exempt, export, intra-EU |
CADENSA maps your numeric tax rate to the correct Pennylane code automatically.
Document Routing
| Document Type | Output |
|---|---|
| Proforma | Internal PDF (never sent to Pennylane) |
| Work Summary | Internal PDF (never sent to Pennylane) |
| Invoice | Sent to Pennylane API → PDF returned |
Only Invoice type documents are sent to Pennylane. 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 Reports → Invoices in CADENSA
- The invoice also appears in your Pennylane account under Ventes → Factures clients
- You can re-download the PDF at any time from either place
Testing the Connection
Use the Test Connection button after entering your API token. CADENSA calls the Pennylane /me endpoint to verify:
- The token is valid
- The company name is returned
A successful test shows:
✓ Connection successful — Pennylane account: Your Company Name
Troubleshooting
"401 Unauthorized" error
The API token is invalid, expired, or from the wrong Pennylane account.
Fix: Generate a new token in Pennylane (Paramètres → Intégrations → API → Générer un token) and re-enter it in CADENSA.
"API not available" / 403 error
Your Pennylane plan does not include API access.
Fix: Upgrade to the Essentiel (€24/mo) or Premium (€79/mo) plan — the Basique plan does not include API access.
"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.
Customer not created / wrong customer matched
CADENSA searches for an existing Pennylane customer by company name. If no match is found, a new customer is created. If the name matches incorrectly, manually verify or update the customer in Pennylane.
Fix: Check Contacts in Pennylane and merge or correct duplicate customer records.
PDF download fails
Pennylane generates PDFs asynchronously. If the PDF is not immediately available, CADENSA retries for a short period.
Fix: Wait a moment and re-download from Reports → Invoices.
See Also
- Invoice Provider Settings — Overview of all providers
- Invoice Generation — How to create invoices from time entries
- Invoice History — View and re-download past invoices