# Fortnox — Accounting API: overview

> Canonical URL: https://developers.apideck.com/apis/accounting/fortnox/overview

Fortnox is the leading Swedish SMB cloud accounting and ERP platform — invoicing, supplier-invoice management, bookkeeping, payments, and reporting for small and mid-sized Swedish businesses.
- Status: beta
- Authentication: oauth2

- **account type required:** Any Fortnox account with licences for the modules in the requested scopes.
- **apideck credentials available:** true
- **apideck credentials note:** OAuth consent shows Apideck; register your own integration only for custom branding.
- **authentication note:** Authorization Code flow with 12 scopes.
- **beta:** true
- **consumer access level:** System administrator — a restricted-role user must first be granted access covering all requested scopes.
- **costs:** No documented developer or API-access fee. Your consumers pay for their own Fortnox licences.
- **difficulty:** straightforward
- **difficulty reason:** Self-Service OAuth + Free Test Databases — No Partnership or App Review Required
- **environment notes:**   - **description:** Test environments are created and removed in the Fortnox Developer Portal (up to 30 at a time) and are administered like any other Fortnox company. Apideck holds a single set of Fortnox credentials, so a connection is distinguished by which company the consumer authorizes rather than by a separate sandbox key.
  - **environment:** Testing
  - **description:** Because credentials are shared across environments, a connection points at whichever Fortnox company the consumer authorizes. Confirm the intended company before running mutations — writes reach real bookkeeping data immediately.
  - **environment:** Production
- **external guides:**   - **source:** Fortnox
  - **title:** Get started with the Developer Portal
  - **url:** https://support.fortnox.se/kom-igang/integrationer/kom-igang-med-utvecklarportalen
  - **source:** Fortnox
  - **title:** Authorization (OAuth 2.0)
  - **url:** https://www.fortnox.se/developer/authorization
  - **source:** Fortnox
  - **title:** Rate limits for the Fortnox API
  - **url:** https://www.fortnox.se/developer/guides-and-good-to-know/rate-limits-for-fortnox-api
  - **source:** Fortnox
  - **title:** Pricing models for published integrations
  - **url:** https://www.fortnox.se/developer/guides-and-good-to-know/pricing-models
  - **source:** Fortnox
  - **title:** Fortnox API reference
  - **url:** https://developer.fortnox.se/documentation/
- **important to know:** Journal entries are immutable once posted (correct with a balancing voucher), and listing them is slower than other endpoints because each voucher's lines are fetched separately. Invoices and bills are cancelled rather than deleted; suppliers and ledger accounts are deactivated.
Attachments only auto-link for bills and vouchers. For invoices, purchase orders and offers, uploaded files land in a Fortnox inbox and a Fortnox user must attach them manually from the document view.
Credit notes cannot be created standalone — each one must be raised against an already-booked customer invoice.
Developer signup verifies your Fortnox ID with a Swedish e-ID. Developers without one cannot finish signup on their own: Fortnox developer support verifies them manually from a photo ID, so plan for that extra step before you can create test companies.
A connection left completely idle for 45+ days lapses — Fortnox refresh tokens expire on that clock, and the consumer has to reauthorize to restore it.
- **partnership note:** Publishing in the Fortnox marketplace needs an approved integration partner agreement; the free Developer Portal and its test companies need no partnership.
- **partnership required:** false
- **rate limits:** 300 requests/minute per client id and tenant, enforced as a 5-second sliding window (effectively 25 requests per 5 seconds). Exceeding it returns HTTP 429.
- **responsibility matrix:**   - **area:** Get Developer Portal access (self-service signup, or support ticket on an existing account)
  - **customer:** ✓ (only when using your own credentials)
  - **apideck:** Docs provided
  - **area:** Create & Configure Fortnox Integration
  - **customer:** ✓ (optional — Apideck credentials available)
  - **area:** Add Credentials to Apideck
  - **customer:** ✓ (only when using your own credentials)
  - **apideck:** Handles OAuth flow
  - **area:** Authorize Connection (OAuth)
  - **consumer:** ✓
  - **apideck:** Maintains connector
  - **area:** Build via Unified API
  - **customer:** ✓
  - **apideck:** ✓ Automatic
  - **area:** Token Refresh
  - **apideck:** Logs & alerts
  - **area:** Monitor Connections
  - **consumer:** ✓ Can revoke anytime
  - **customer:** ✓ Via Apideck Dashboard
- **sandbox available:** true
- **sandbox note:** Up to 30 free test databases via the Developer Portal.
- **sandbox url:** https://www.fortnox.se/developer/developer-portal
- **supported resource categories:**   - **name:** Core Financial
  - **resources:** ledger-accounts
journal-entries
tax-rates
bank-accounts
company-info
  - **name:** Accounts Receivable
  - **resources:** invoices
invoice-items
customers
payments
credit-notes
sales-orders
  - **name:** Accounts Payable
  - **resources:** bills
bill-payments
suppliers
purchase-orders
  - **name:** Other
  - **resources:** attachments
tracking-categories
- **webhooks:** Virtual webhooks — created and updated events for invoices, customers, suppliers, bills, ledger accounts and payments.

## Supported resources

[Accounting data model](/guides/accounting-data-model.md)

- **custom field support:** true
- **downstream id:** invoices
- **downstream name:** Invoices
- **id:** invoices
- **name:** Invoices
- **status:** live
- **custom field support:** true
- **downstream id:** customers
- **downstream name:** Customers
- **id:** customers
- **name:** Customers
- **status:** live
- **custom field support:** true
- **downstream id:** suppliers
- **downstream name:** Suppliers
- **id:** suppliers
- **name:** Suppliers
- **status:** live
- **custom field support:** true
- **downstream id:** supplier-invoices
- **downstream name:** Supplier Invoices
- **id:** bills
- **name:** Bills
- **status:** live
- **custom field support:** true
- **downstream id:** accounts
- **downstream name:** Accounts
- **id:** ledger-accounts
- **name:** Ledger Accounts
- **status:** live
- **custom field support:** false
- **downstream id:** voucher-series
- **downstream name:** Voucher Series
- **id:** journals
- **name:** Journals
- **status:** beta
- **custom field support:** false
- **downstream id:** fiscal-periods
- **downstream name:** Fiscal Periods
- **id:** fiscal-periods
- **name:** Fiscal Periods
- **status:** beta
- **custom field support:** true
- **downstream id:** vouchers
- **downstream name:** Vouchers
- **id:** journal-entries
- **name:** Journal Entries
- **status:** live
- **custom field support:** true
- **downstream id:** invoice-payments
- **downstream name:** Invoice Payments
- **id:** payments
- **name:** Payments
- **status:** live
- **custom field support:** true
- **downstream id:** articles
- **downstream name:** Articles
- **id:** invoice-items
- **name:** Invoice Items
- **status:** live
- **custom field support:** false
- **downstream id:** company-information
- **downstream name:** Company Information
- **id:** company-info
- **name:** Company Info
- **status:** live
- **custom field support:** false
- **downstream id:** invoices-credit
- **downstream name:** Invoices Credit
- **id:** credit-notes
- **name:** Credit Notes
- **status:** live
- **custom field support:** false
- **downstream id:** supplier-invoice-payments
- **downstream name:** Supplier Invoice Payments
- **id:** bill-payments
- **name:** Bill Payments
- **status:** live
- **custom field support:** false
- **downstream id:** accounts-bank
- **downstream name:** Accounts Bank
- **id:** bank-accounts
- **name:** Bank Accounts
- **status:** beta
- **custom field support:** false
- **downstream id:** tax-rates
- **downstream name:** Tax Rates
- **id:** tax-rates
- **name:** Tax Rates
- **status:** live
- **custom field support:** false
- **downstream id:** purchase-orders
- **downstream name:** Purchase Orders
- **id:** purchase-orders
- **name:** Purchase Orders
- **status:** live
- **custom field support:** true
- **downstream id:** sales-orders
- **downstream name:** Sales Orders
- **id:** sales-orders
- **name:** Sales Orders
- **status:** beta
- **custom field support:** false
- **downstream id:** attachments
- **downstream name:** Attachments
- **id:** attachments
- **name:** Attachments
- **status:** live
- **custom field support:** false
- **downstream id:** projects
- **downstream name:** Projects
- **id:** tracking-categories
- **name:** Tracking Categories
- **status:** live

An omitted operation list does not establish operation support. Verify the selected operation in the coverage matrix.

[API reference](https://developers.apideck.com/apis/accounting/reference.md) · [Coverage matrix](https://developers.apideck.com/apis/accounting/coverage)
