Overview Legend 🧭
Overview Legend 🧭
Introduction
Fortnox is the leading cloud accounting and business software in Sweden and one of the largest in the Nordics, widely used by SMEs and accounting firms. The Chift Fortnox connector exposes Fortnox’s bookkeeping features through Chift’s unified Accounting API (journals, chart of accounts, ledger/bank accounts, journal & financial entries).Costs & production options
- Integrator (Chift’s client): creates their own Fortnox developer account and Fortnox app (Client ID / Client Secret). Developing and testing is free.
- Private App (production): no additional requirement — deploy your integration for your own customers.
- Public Marketplace App (production): requires an App Partner agreement + Fortnox certification of your app. If listed on the Fortnox Marketplace, Fortnox operates a revenue-share model (partner receives 75%).
Configure Fortnox
Prerequisite(s)- Your own Fortnox app (Client ID + Client Secret).


companyinformation, invoice, supplierinvoice, customer, supplier, bookkeeping, payment, settings, costcenter, project, inbox, connectfile.
Further documentation is coming to explain which scopes to enable depending on your Chift use case.
Test Fortnox
Create up to 30 test companies from the Test environments tab of the Fortnox Developer Portal. Test companies behave like real Fortnox companies (same rate limits apply), come with the standard BAS chart of accounts and no pre-filled data.Connect Fortnox
To activate a connection with Fortnox, users will have to go through the following steps:- Help Center article: Help Center - Fortnox EN
Rate limits
- 300 requests / minute per Client ID + tenant (i.e. per access token), enforced via a sliding window of 5 seconds → 25 requests / 5 s.
- Exceeding the limit returns HTTP 429 (Too Many Requests); bursts are throttled until the average falls back under the limit.
- The limit scales per tenant: each connected Fortnox company has its own access token and therefore its own 300 req/min budget.
Technical limitations & specificities
- Single company currency — SEK. Fortnox accounts have no per-account currency. On a bank account, the currency is informational (surfaced in the account name), not enforced. On entries, a currency ≠ company currency requires an
exchange_rate(otherwiseERROR_CURRENCY_NOT_ALLOWED), and amounts are converted to the company currency. - Account & journal types are derived, not stored.
journal_typeand ledger account type are derived from the BAS number ranges / predefined series. A type sent on create is not stored — it’s ignored, or validated for consistency (an account type inconsistent with the number range is rejected). - Third-party accounts (customer/supplier/employee) on entries. Fortnox has no native journal ↔ account link and supplier objects carry no dedicated ledger account, so third-party lines must specify
force_general_account(otherwise a clear “not supported” error is returned). - Format constraints: ledger account number = numeric,
1000–9999; journal (VoucherSeries) code = 1–10 chars, digits / UPPERCASE only. postedis alwaystruefor entries— Fortnox posts vouchers immediately (thepostedinput has no effect).- Financial entries (bank/cash operations): items contain only the counterpart line(s) with a signed amount (
+= into the bank,−= out); the bank ledger account is passed via the mandatory query paramfinancial_counterpart_account, and the connector adds the balancing bank line (net of the amounts). - Chart-of-accounts type filter exposes only 6 of the 10 possible account types (
bank,cash,income,expense,other_expense,vat) —receivable,payable,other_financial,otherare returned in responses but cannot be filtered.