Developers
Frihet exposes a full REST API and a webhook system so you can integrate your ERP with any tool. Automate workflows, sync data with your existing systems, or build custom integrations. See all Frihet features and available integrations.
Core resources
REST API
RESTful API with API key authentication. Access invoices, expenses, clients, products, and quotes programmatically.
- Full CRUD endpoints for 5 resources
- Pagination, filtering, and sorting
- 100 requests/minute limit per key
- Standardized JSON responses
Webhooks
Receive real-time notifications when events occur in your Frihet account. 14 event types with HMAC-SHA256 signatures to verify the authenticity of every payload.
- 14 event types (invoices, expenses, quotes, clients, products)
- Cryptographic signature on every delivery
- Automatic retries with exponential backoff
- Delivery logs accessible from the dashboard
Integration tier model
Frihet organizes its 100+ integrations into three levels based on connection depth:
| Tier | Name | Description |
|---|---|---|
| Tier 1 | Full Sync | Complete bidirectional sync via dedicated services (import + webhooks + reconciliation). |
| Tier 2 | Credentials Only / Beta | Credentials stored securely. Full automatic sync on the roadmap. |
| Tier 3 | Webhook URL | Generates a webhook URL to connect with your automations. No bidirectional sync. |
The tier badge for each integration is visible on the connection screen inside the app.
Supported integrations
Frihet connects natively with 100+ tools. Each integration can be extended with the REST API and webhooks to cover advanced use cases. See all available integrations on the website.
Tier 1 — Full Sync (41 integrations)
Complete bidirectional sync. Production-ready.
| Category | Services |
|---|---|
| Payments | PayPal, GoCardless, Stripe Revenue, Stripe Connect |
| Banking | Mercury, Pleo, Wise, Qonto |
| E-commerce | Shopify, WooCommerce, Gumroad, Lemon Squeezy, Etsy, Square, Squarespace, PrestaShop |
| Accounting | Xero, QuickBooks Online, FreshBooks, Wave Accounting, Zoho Books, Sage Business Cloud, Holded, Lexoffice |
| Time tracking | Toggl, Clockify, Harvest |
| Productivity | Asana, Trello, Notion |
| Calendar | Google Calendar, Outlook Calendar |
| Storage | Google Drive, Google Sheets, Dropbox |
| Communication | Slack |
| CRM | HubSpot, Pipedrive, Intercom |
| eSign | PandaDoc, DocuSign, HelloSign |
| Expenses | Expensify |
| Mailchimp |
Tier 2 — Credentials Only / Beta (56 integrations)
Credentials connected and configuration ready. Full sync on the roadmap.
| Category | Services |
|---|---|
| E-commerce | eBay, TikTok Shop, Printful, BigCommerce, Magento/Adobe Commerce |
| CRM | Salesforce, Zoho CRM, Freshsales, Close CRM, Copper CRM |
| Logistics | Sendcloud, ShipStation, Correos Spain, SEUR, DHL Express, FedEx, UPS, Shippo |
| HR | Factorial, Personio, BambooHR, Gusto, PayFit |
| Marketing | Brevo, ConvertKit, ActiveCampaign, Lemlist, Beehiiv, Meta Marketing API, Google Ads API |
| POS | SumUp POS, SumUp Payments, SumUp Invoices, Lightspeed Restaurant, Lightspeed X-Series |
| Communication | Discord Webhooks, Microsoft Teams Webhooks, Telegram Bot API |
| Freelance | Upwork |
| Payments | Adyen, Checkout.com, Braintree, Mollie, Bunq, Brex, Monzo Business, N26 Business, Starling Bank |
| Open Banking | Tink, OpenBanking, PayPal Sandbox, Plaid, Revolut |
| Banking | N26 |
| Messaging | |
| Marketplaces | Amazon Seller |
| Accounting | Bexio |
Tier 3 — Webhook URL (3 integrations)
Connect via custom webhook to your automation flows.
| Service | Description |
|---|---|
| n8n | Custom automation flows via webhook |
| Zapier | Connect 6,000+ apps without code via webhooks |
| Make | Visual automation with hundreds of apps via webhooks |
MCP Server
Official MCP server published on npm as @frihet/mcp-server (v1.5.1), registered as io.frihet/erp in the MCP Registry. Connect your AI assistant (Claude, Cursor, Windsurf, Cline) directly to your ERP.
- 52 tools, 11 resources, 10 prompts (invoices, expenses, clients, products, quotes, vendors, webhooks)
- Local transport (stdio) and remote (mcp.frihet.io)
- Open source (MIT) on GitHub
- Automatic rate-limit retry with exponential backoff
Claude Code Skill
Official skill that adds business intelligence on top of the MCP server. Conversational commands, workflow recipes, and formatted financial reports.
- Commands:
/frihet invoice,/frihet expense,/frihet report,/frihet clients - Natural language workflows for monthly close, tax prep, and overdue follow-up
- Install:
npx skills add Frihet-io/frihet-mcp
Security
Security is a priority throughout Frihet's integration layer.
- AES-256-GCM encryption for sensitive stored data (integration tokens, webhook secrets)
- HMAC-SHA256 on every webhook delivery to verify payload authenticity
- SHA-256 hashing of API keys on the server — the plaintext key is shown only once at creation
- Rate limiting of 100 requests per minute per API key
- URL validation on webhooks: only HTTPS endpoints are allowed (except localhost in development)
- Private IP blocking to prevent SSRF attacks on webhook URLs
- Configurable key expiration — create keys with an expiry date
SDKs and CLI
Official SDKs to integrate Frihet into your stack:
| Package | Install | Description |
|---|---|---|
@frihet/sdk | npm i @frihet/sdk | TypeScript SDK — frihet.invoices.create(), full types, auto-retry |
frihet | npm i -g frihet | CLI — frihet invoices list --status overdue |
| Python | Coming soon | In development |
import Frihet from '@frihet/sdk';
const frihet = new Frihet({ apiKey: 'fri_...' });
const invoice = await frihet.invoices.create({
clientName: 'Acme Corp',
items: [{ description: 'Consulting', quantity: 10, unitPrice: 150 }],
});
Repository: github.com/Frihet-io/frihet-sdk
Limits and quotas
| Resource | Limit |
|---|---|
| API requests | 100/minute per key |
| Request body size | 1 MB maximum |
| Webhook payload size | 100 KB maximum |
| Webhooks per account | 20 maximum |
| Webhook retries | 3 attempts per delivery |
| Results per page | 100 maximum (50 default) |
Getting started
- Go to Settings > API in your Frihet account
- Create a new API key and copy it (shown only once)
- Test the connection with a GET request to
/api/v1/clients - Configure webhooks to receive events in real time
curl -s https://api.frihet.io/v1/clients \
-H "X-API-Key: fri_your-key-here" | head -c 200
If the response includes your clients, the integration is working. See the REST API reference for all available endpoints.