What You Can Build on the Fortnox API
By CodexierPublished 6 min read
Fortnox is the accounting system a large share of Swedish small companies run on, and its API is the reason so many other tools can talk to it. If you have a webshop, a booking system, a CRM or a spreadsheet that ends in double entry into Fortnox, the API is how that stops. This guide explains what it exposes, the patterns we build most, and the limits that decide whether an integration is a week of work or a month.
The short answer
Fortnox integrations are the most common item in our integration and automation work, which is why we can be specific about where the time goes.
What the API gives access to
| Area | Objects | Typical use |
|---|---|---|
| Sales | Customers, articles, offers, orders, invoices, invoice payments | Push orders from a shop or booking system, create and send invoices |
| Purchasing | Suppliers, supplier invoices, supplier invoice payments | Register incoming invoices from a capture flow, mark as paid |
| Accounting | Vouchers, accounts, financial years, cost centres, projects | Post journal entries from payroll, payments or stock systems |
| Files | Attachments, inbox, archive | Attach the PDF to the voucher or invoice it belongs to |
| Register data | Price lists, units, currencies, terms of payment, VAT codes | Keep product and pricing data consistent across systems |
Coverage depends on the customer's Fortnox plan and on which scopes the customer grants; an endpoint that exists is not always available to a given connection.
What the API does not do well: reading large ledgers efficiently, running reports, and anything real-time. It is designed for record-by-record operations, and integrations that respect that are the ones that stay reliable.
Common integration patterns
Webshop to Fortnox
Each paid order becomes a customer, articles as needed, and an invoice or order in Fortnox with the payment matched. Shopify and WooCommerce have connectors; custom work starts when you sell bundles, B2B terms or several sales channels.
Booking or CRM to invoicing
A completed job or booking creates an invoice draft with the right customer, article and project. Removes the month-end invoice marathon in service companies.
Supplier invoice capture
A capture tool or Peppol flow registers supplier invoices with coding suggestions and attachments, ready for approval.
Payroll and time to vouchers
Hours from a time-reporting tool become the basis for payroll, and payroll postings land as vouchers on the right accounts.
Reporting and dashboards
Nightly extraction of invoices and payments into a data store you can query, because the API is not a reporting engine.
Rate limits and error handling
The API allows a limited number of requests per second per connected company and returns a throttling response when you exceed it. That sounds generous until a nightly sync tries to update every article at once. Design for it: queue work, send it at a steady pace, retry throttled requests after a pause, and keep an idempotency scheme so that a retried invoice does not become a duplicate. Use the last-modified filters to fetch only what changed, and subscribe to webhooks where Fortnox offers them so you react to events instead of polling for them. Log every request with the Fortnox error message; their error codes are specific and save hours of guessing.
Ready-made apps vs custom
You should not commission a custom Fortnox integration if a marketplace app already does what you need. For standard webshop, payment, time-reporting and invoice-capture cases the apps exist, cost a modest monthly fee, and are maintained by someone else when Fortnox changes. Custom work is right when the other system is your own, when the rules are specific to how you sell or project-code, when several systems must be reconciled, or when no app supports your platform. If you are also choosing the accounting system itself, our comparison of Fortnox and Visma eEkonomi integrations comes first. When you have a specific double-entry problem, book a call and describe it; fixed prices for integration work are on the pricing page.
Frequently asked questions
Do we need a Fortnox developer account to build an integration for our own company?
Yes. Even a private integration is registered as an app in Fortnox's developer portal and connected through OAuth by your company's Fortnox user. The registration is free; what you do not need for a private integration is the marketplace review.
Can the API create and send invoices, including e-invoices?
It can create invoices and trigger sending through Fortnox's own channels, including e-invoice where the customer is reachable via Peppol, email and print services. Bookkeeping the invoice and registering payments are separate calls, so an integration must decide who owns each step.
Is it possible to read data for reporting without hitting limits?
Yes, if you fetch incrementally using last-modified filters and store the results yourself. Trying to build a live dashboard directly on the API fails on rate limits and response times; a nightly or hourly extraction into your own database is the pattern that works.
What happens to the integration when Fortnox updates the API?
Fortnox announces changes to developers with notice periods, and most are additive. Somebody must read those announcements and test; this is the ongoing cost of any custom integration, and it is why we bundle a maintenance option with the ones we build.
Typing the same data into Fortnox twice?
Describe the system on the other side and the records that get re-entered. In fifteen minutes we tell you whether a marketplace app covers it, what a custom integration would involve, and what it costs.
Book a free 15-minute call