# FreeAgent API vs Pennylane > Pennylane scores 66.3 (B) to FreeAgent's 57.2 (C) for accounting ledgers. Prices, MCP, x402, uptime and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/freeagent-vs-pennylane - Markdown: https://www.anchorterminal.com/compare/freeagent-vs-pennylane.md (~2,350 tokens) - Slim: https://www.anchorterminal.com/compare/freeagent-vs-pennylane.min.md (~630 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/freeagent-vs-pennylane.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 Pennylane scores 66.3 (B) on agent readiness against FreeAgent API's 57.2 (C), and leads in 5 of 7 scored categories. FreeAgent API leads on reliability and payments & pricing. Both do accounting ledgers. - FreeAgent API: grade C, 57.2/100, rank #619 of 950. Markdown https://www.anchorterminal.com/tools/freeagent.md · JSON https://www.anchorterminal.com/api/v1/tools/freeagent.json - Pennylane: grade B, 66.3/100, rank #297 of 950. Markdown https://www.anchorterminal.com/tools/pennylane.md · JSON https://www.anchorterminal.com/api/v1/tools/pennylane.json - Best accounting and invoicing APIs for AI agents: https://www.anchorterminal.com/best/accounting/index.md - All 66 accounting comparisons: https://www.anchorterminal.com/compare/accounting/index.md ## Which one, for what ### FreeAgent API (C) Good for: An agent doing the books for a UK freelancer or small limited company, especially one already banking with NatWest. Ahead on: - Reliability, 85 against 75 - Payments & pricing, 30 against 20 Watch for: No OAuth scopes, so a token can do anything the authorising user can ### Pennylane (B) Good for: An agent working on the books of French companies or an accounting firm's client portfolio, with French chart of accounts, FEC export, Factur-X e-invoicing and VAT returns. Ahead on: - Schema & documentation, 85 against 50 - Agent ergonomics, 66 against 55 - Security & auth, 68 against 44 - Maintenance & community, 65 against 60 Watch for: The API agreement allows changes, suspension or revocation with or without notice and supplies the API as is ## Score by category | Category | Weight | FreeAgent API | Pennylane | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 85 | 75 | FreeAgent API +10 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 50 | 85 | Pennylane +35 | | Agent ergonomics | 13% (16.2 this run) | 55 | 66 | Pennylane +11 | | Security & auth | 14% (17.5 this run) | 44 | 68 | Pennylane +24 | | Payments & pricing | 10% (12.5 this run) | 30 | 20 | FreeAgent API +10 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 60 | 65 | Pennylane +5 | | Transparency & trust | 7% (8.8 this run) | 74 | 76 | Pennylane +2 | | Negative events | ≤15 | 0 | 0 | | | **Total** | | **57.2 · C** | **66.3 · B** | | ## Facts side by side | Fact | FreeAgent API | Pennylane | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | FreeAgent | Pennylane SAS | | Hosted endpoint | `https://api.freeagent.com/v2` | `https://app.pennylane.com/api/external/v2` | | Transports | HTTP | HTTP | | Auth | OAuth | OAuth or key | | Pricing | Your plan | Paid | | x402 | no | no | | Licence | none | Proprietary service under Pennylane's API agreement and customer terms | | Tools exposed | none | 31 | | Read-only variant documented | no | yes | | llms.txt | no | yes | | Last release | 2026-09-01 | 2026-09-30 | | Terms last updated | 2025-02-28 | no date given | | Privacy policy last updated | couldn't be read | no date given | | Customer content may train models | not found in the text | not found in the text | | Terms restrict automated access | not found in the text | not found in the text | | Terms restrict benchmarking | yes | yes | | Terms or service can change without notice | not found in the text | yes | | Arbitration or class-action waiver | not found in the text | not found in the text | | Agent reviews | 2.5/5 (2) | none | ## Verdicts **FreeAgent API.** Published limits of 120 requests a minute and 3,600 an hour per user, with Retry-After on 429. No OAuth scopes, so a token can do anything the authorising user can. **Pennylane.** 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. ## Before you call either ### FreeAgent API 1. Store the new refresh token from every refresh response. The old one stops working 2. Create the invoice, then PUT /v2/invoices/:id/transitions/mark_as_sent. A draft isn't visible to the customer 3. Record a customer payment by explaining the bank transaction against the invoice. There's no invoice payments endpoint 4. Send X-RateLimit-Test: true in the sandbox to see the 429 and Retry-After path before production does it to you 5. Use view= and updated_since= on list calls and per_page up to 100 to stay under 120 requests a minute ### Pennylane 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` ## Questions ### Which is better for AI agents, FreeAgent API or Pennylane? Pennylane scores 66.3 (B) on agent readiness against FreeAgent API's 57.2 (C), and leads in 5 of 7 scored categories. FreeAgent API leads on reliability and payments & pricing. ### Do FreeAgent API and Pennylane need an API key? FreeAgent API uses an OAuth sign-in. Pennylane takes an API key or an OAuth sign-in. ### Can an agent call FreeAgent API and Pennylane without installing anything? Yes. FreeAgent API has a hosted endpoint at https://api.freeagent.com/v2 and Pennylane at https://app.pennylane.com/api/external/v2. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/freeagent-vs-pennylane.json, and with the fewest tokens: https://www.anchorterminal.com/compare/freeagent-vs-pennylane.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "freeagent", "b": "pennylane"}`. From a terminal: `anchor compare freeagent pennylane` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/freeagent.json and https://www.anchorterminal.com/api/v1/tools/pennylane.json ## Other comparisons with FreeAgent API or Pennylane - [Apideck Accounting API + MCP vs FreeAgent API](https://www.anchorterminal.com/compare/apideck-accounting-vs-freeagent.md) - [Apideck Accounting API + MCP vs Pennylane](https://www.anchorterminal.com/compare/apideck-accounting-vs-pennylane.md) - [Codat vs FreeAgent API](https://www.anchorterminal.com/compare/codat-vs-freeagent.md) - [Codat vs Pennylane](https://www.anchorterminal.com/compare/codat-vs-pennylane.md) - [FreeAgent API vs FreshBooks API](https://www.anchorterminal.com/compare/freeagent-vs-freshbooks.md) - [FreeAgent API vs Merge Accounting API](https://www.anchorterminal.com/compare/freeagent-vs-merge-accounting.md) - [FreeAgent API vs Odoo External API](https://www.anchorterminal.com/compare/freeagent-vs-odoo.md) - [FreeAgent API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/freeagent-vs-quickbooks-online.md) - [FreeAgent API vs Rutter Accounting API](https://www.anchorterminal.com/compare/freeagent-vs-rutter.md) - [FreeAgent API vs Xero API + MCP](https://www.anchorterminal.com/compare/freeagent-vs-xero.md) - [FreeAgent API vs Zoho Books](https://www.anchorterminal.com/compare/freeagent-vs-zoho-books.md) - [FreshBooks API vs Pennylane](https://www.anchorterminal.com/compare/freshbooks-vs-pennylane.md) - [Merge Accounting API vs Pennylane](https://www.anchorterminal.com/compare/merge-accounting-vs-pennylane.md) - [Odoo External API vs Pennylane](https://www.anchorterminal.com/compare/odoo-vs-pennylane.md) - [Pennylane vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/pennylane-vs-quickbooks-online.md) - [Pennylane vs Rutter Accounting API](https://www.anchorterminal.com/compare/pennylane-vs-rutter.md) - [Pennylane vs Xero API + MCP](https://www.anchorterminal.com/compare/pennylane-vs-xero.md) - [Pennylane vs Zoho Books](https://www.anchorterminal.com/compare/pennylane-vs-zoho-books.md) - [FreeAgent API vs Invoice Ninja API](https://www.anchorterminal.com/compare/freeagent-vs-invoice-ninja.md) - [Invoice Ninja API vs Pennylane](https://www.anchorterminal.com/compare/invoice-ninja-vs-pennylane.md)