# Pennylane (slim) > Pennylane is a French accounting and invoicing platform for companies and accounting firms. Its Company and Firm REST APIs cover invoices, supplier invoices, ledger entries, transactions and exports. A hosted read-only MCP server exposes the same books to AI assistants. - Full: https://www.anchorterminal.com/tools/pennylane.md (~8,350 tokens) · this version ~1,830 tokens · JSON https://www.anchorterminal.com/tools/pennylane.json · canonical https://www.anchorterminal.com/tools/pennylane - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · Updated: 2026-10-10 **B · 66.3/100 · rank #297 of 950 · #4 in Accounting & invoicing · not agent-ready · confidence medium** Assessment: The v2 API has per-resource read and write scopes, an OpenAPI definition on every reference page, llms.txt and a breaking-change process that ran over 24 weeks. Access needs a paid Essentiel plan or partner approval, creation endpoints are not idempotent, and the API agreement lets Pennylane change or revoke the API without notice. ## Facts - Kind: HTTP API · vendor: Pennylane SAS · category: Accounting & invoicing · legal entity: Pennylane SAS · provenance 80/100 - Endpoint: `https://app.pennylane.com/api/external/v2` (HTTP) - Auth: OAuth or key · pricing: Paid · x402: no · licence: Proprietary service under Pennylane's API agreement and customer terms - Probe metrics: not measured yet (probes haven't run) - APIs: Company API v2 (REST, JSON, 179 reference pages in llms.txt across accounting, exports, customer and supplier invoices, quotes, transactions, mandates, subscriptions, webhooks and changelogs), Firm API, Firm Group API on request. v1 was due for retirement at the end of 2025 - MCP server: Hosted at `https://mcp.pennylane.com/mcp`, Streamable HTTP, OAuth 2.1 with PKCE and dynamic client registration, 31 read-only tools, 100 records a page. Write tools are planned for a later version - Credentials: Company API token (read only or read and write, expiry of 1, 6 or 12 months or unlimited, shown once, deletable), Firm API token, or OAuth 2.0 authorisation code for partners with 24-hour access tokens and rotating 90-day refresh tokens - Scopes: `resource:readonly` and `resource:all` per resource, such as `customer_invoices:readonly`, `ledger_entries:all` and `exports:fec`. The bundled `ledger` scope was replaced in 2026 - Rate limits: 25 requests per 5 seconds per token, with `retry-after` on 429 and rate limit headers on every response - Pagination: Cursor-based with `cursor` and `limit` (default 20, 1 to 100 on the page read), plus JSON `filter` and `sort` parameters - Errors: JSON body with `error`, `message` and `details`. 400, 401, 403, 404, 409, 422, 429, 500 and 503 documented with fixes - Sandbox: Companies create one from the profile menu under Test environment. Integration partners request one from the Partnerships team. Firms have none - Prices: For sole traders and single-shareholder companies, before VAT, one user: Starter 7 euros a month, Basique 14, Essentiel 24, Premium 79, each with up to 1,200 invoices a year and a 15-day trial. The API and MCP need Essentiel or above. Accounting firms get the MCP at no extra cost - SLA: 99.9 per cent a month for `https://app.pennylane.com` in the customer terms, with credits and a right to terminate below 90 per cent. Outages under 15 minutes and partial faults are excluded. The API agreement itself gives no warranty - Certifications: ISO 27001 with a 2026 certificate on the security page, annual third-party penetration test under the customer terms, ACPR registration as an account information service provider - Hosting: AWS in Ireland, with the French e-invoicing platform on S3NS, Outscale and Scalingo in France - Sub-processors: 30 entries with locations, all in the European Union, last modified 16 December 2025, with a sign-up for updates and 30 days' notice - Status: Atlassian Statuspage at status.pennylane.com with seven components, one of them the API - Scores: Reliability 75, Performance pending, Schema & documentation 85, Agent ergonomics 66, Security & auth 68, Payments & pricing 20, Task success pending, Maintenance & community 65, Transparency & trust 76 · total over the 7 assessed categories - Why: Reliability, Graded on the hosted lines. · Schema & documentation, Each reference page carries an OpenAPI 3.0.1 definition for its operation, readable through the Markdown twin. · Agent ergonomics, The REST API is the main surface. · Security & auth, OAuth 2.0 authorisation code with 24-hour access tokens and rotating refresh tokens for partners, company and firm tokens with chosen scopes… · Payments & pricing, No x402, MPP or L402 (0). · Maintenance & community, Newest changelog entry 30 September 2026 (30). · Transparency & trust, Closed service. - Sources: 27, open questions: 11, both in the full twin - Capabilities: accounting.ledger, accounting.invoices, accounting.bills, accounting.reports - JSON: https://www.anchorterminal.com/api/v1/tools/pennylane.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/pennylane.svg` or a link to https://www.anchorterminal.com/tools/pennylane from a page on pennylane.com or one of its subdomains, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. ## Before you call it 1. Call `GET https://app.pennylane.com/api/external/v2/me` first to confirm the token, user and company context 2. Stay under 25 requests per 5 seconds per token and wait for the `retry-after` value on a 429 3. Do not retry a create after a timeout without checking first. Only supplier invoice imports are deduplicated 4. Send `filter` and `sort` again with every `cursor`. The cursor stores position only 5. Send amounts as strings such as "120.00", and ask for `:readonly` scopes when the task only reads 6. Use the MCP server for reads only. It cannot create, edit or delete, and firm connections need `company_id` ## Connect ```bash curl https://app.pennylane.com/api/external/v2/me \ -H "Authorization: Bearer $PENNYLANE_API_TOKEN" ``` ```bash claude mcp add --transport http pennylane https://mcp.pennylane.com/mcp ``` Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/pennylane ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | Apideck Accounting API + MCP | BB | 72.9 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/apideck-accounting.min.md | | Merge Accounting API | BB | 70 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/merge-accounting.min.md | | Xero API + MCP | B | 67.2 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/xero.min.md | | Codat | B | 64.3 | accounting.bills, accounting.reports, accounting.ledger, accounting.invoices | https://www.anchorterminal.com/tools/codat.min.md | | FreeAgent API | C | 57.2 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/freeagent.min.md | ## Panel reviews (0, desk reviews from public material, no calls made)