Fortnox integration
Connect Huma to Fortnox to keep employee profiles, employment dates and absence in sync
Table of contents
- Roles and access
- How data flows
- Before you start
- Set up the integration
- After the integration is active
- Supported fields
- Error log and troubleshooting
- FAQ
- Related articles
Roles and access
| Role in Huma | System role with full access to Organization |
| In Fortnox | An active integration licence, and a Fortnox user who can approve the connection to Huma. Huma asks for access to salary and company information. |
💡 Not sure which roles you need in Fortnox? Contact Fortnox support for guidance.
How data flows
| Data | Huma → Fortnox | Fortnox → Huma | When |
|---|---|---|---|
| Profile fields | ✅ Automatic | ✅ Manual only | Huma changes are sent in real time. Fortnox changes are brought in when you click «Sync users». |
| New employees | ✅ Manual only | ✅ Manual only | During «Sync users» |
| Employment dates | ✅ Automatic | ❌ | When a position is created, changed or deleted in Huma |
| Absence | ✅ Automatic | ❌ | When absence is approved in Huma and has an end date |
| Salary | ❌ | ❌ | Not supported |
⚠️ Historical data is not transferred. Only positions and absence created or changed after the integration is active are sent to Fortnox.
Before you start
- You have a System role with full access to Organization in Huma.
- Your Fortnox account has an integration licence. See Step 1.
- Employees who exist in both systems have the same email address in Huma and Fortnox. Huma matches employees by email only.
- If you want to sync absence:
- Absence must be set up in Huma first (absence types or work schedules).
- All employees must have a valid working time schedule in Fortnox. Absence hours are calculated from it.
🔗 Getting started with Payroll & accounting integrations
Set up the integration
Step 1: Activate the integration licence in Fortnox
Fortnox requires an active integration licence to connect any third-party system. You only need one licence for all integrations. If you already have one, skip this step.
- Log in to Fortnox.
- Go to «Administrera användare» (Manage users).
- Click «Lägg till licenser» (Add licences).
- Scroll down to «Integration: Integrera Fortnox med ett annat system» (Integrate Fortnox with another system).
- Click «Lägg till» (Add).
💡 For questions about licences or the API in Fortnox, contact Fortnox.



Step 2: Connect Huma to Fortnox
- In Huma, go to «Integrations» and select «Fortnox».
- Read the «Overview» and «Details» tabs.
- Click «Set up» in the top right corner.
- Give the connection a name.
- Choose who should be part of this connection: everyone, or a specific team, location or company.
- Accept the terms and click «Continue».
- Choose your settings (see Step 3) and click «Save».
- A Fortnox window opens. Log in if needed, and click «Godkänn behörighet» (Approve permission).
🔗 Need more than one connection, for example one per company? See Multiple integrations.


Step 3: Choose what to sync
Fortnox has one setting. You can change it later.
| Setting | When it's on | When it's off |
|---|---|---|
| Absence: Create, update and delete in Fortnox when updated in Huma | Approved absence is sent to Fortnox as absence transactions. | Absence is not sent. |
💡 Employment dates are always sent. There is no setting for them.

Step 4: Map absence types
You only do this step if absence sync is on.
- Go through each absence type in Huma.
- Select the matching absence cause in Fortnox.
- Leave any type you don't want to send unmapped.
- Click «Save».
⚠️ Fortnox only has one absence type for sick leave, while Huma has both «Self-certification» and «Sick leave». We recommend mapping both to «Sjukfrånvaro» (Sick leave) in Fortnox.
⚠️ If you later map an absence type to a different cause, absence already sent to Fortnox is no longer updated from Huma. To reconnect it, change those entries in Fortnox to the new cause.

Step 5: Sync users to activate the integration
After setup, the integration page says «This integration has been set up, but is not active». Nothing is sent until you complete this step.
- Click «Sync users».
- Matching users are employees with the same email in both systems.
- Click «View users» to see fields with different or missing values.
- For each case, choose to update Huma with the value from Fortnox, update Fortnox with the value from Huma, or leave it.
- Click «Next».
- Non-matching users are employees that exist in only one system.
- Choose whether to create all of them, only the ones you select, or none.
- Choose the direction: Fortnox → Huma, or Huma → Fortnox.
- Click «Sync users».
The status changes to «Connected and active». You'll get an email with the result.
💡 Note
Before you sync, decide which system has the most up-to-date information. Your choices here overwrite data.
⚠️ Users missing required fields are not synced until the missing values are added.




After the integration is active

What happens automatically
- Changes to supported profile fields in Huma are sent to Fortnox in real time.
- Employment dates are updated in Fortnox when a position is created, changed or deleted in Huma.
- Absence is sent when it changes in Huma, if absence sync is on.
When you need to sync manually
Click «Sync users» when:
- You have changed a supported field in Fortnox and want it in Huma.
- You have added employees in Fortnox that should be created in Huma.
- You have added employees in Huma that should be created in Fortnox. New employees are never created in Fortnox automatically.
New employees created from Huma
- The employee gets the personnel type «TJM» (salaried employee) in Fortnox.
- Employment dates are taken from the employee's positions in Huma.
- The employee gets a working time schedule of 0 hours. All absence will then be 0 hours. Assign a valid working time schedule in Fortnox under the «Anställning» (Employment) tab.
When an employee leaves
Deactivated in Huma:
- The employee is not deactivated in Fortnox.
- The employee is locked for updates from the integration.
Deleted in Huma:
- The employee is not deleted in Fortnox.
- The next «Sync users» suggests creating them in Huma again.
- The employee can't be synced if they were changed in Fortnox after they were deleted in Huma.
💡 To register the end of employment in Fortnox, set the contract end date on the employee's last position in Huma.
Change settings
- Go to the Fortnox integration in Huma.
- Click ··· in the top right corner.
- Select an option:
- «Edit connection settings» to turn absence sync on or off.
- «Edit connection details» to change the name or who is part of the connection.
- «Map absence types» to change the absence mapping.
Disconnect or remove
- Disconnect: Stops syncing but keeps your configuration.
- Remove: Stops syncing and deletes all stored configuration.
Supported fields
Profile fields
Changes in Huma are sent automatically. Changes in Fortnox are brought in with «Sync users».
| Huma field | Field in Fortnox | Required | Notes |
|---|---|---|---|
| First name | Förnamn | API name: Employee.FirstName |
|
| Last name | Efternamn | API name: Employee.LastName |
|
| Email address | E-post | ✅ | Used to match employees. Must be unique in Huma. API name: Employee.Email |
| Phone number | Telefon 1 | Must be unique in Huma. If the number in Fortnox has no country code, the Swedish code (+46) is used. API name: Employee.Phone1 |
|
| Employee ID | Anställningsnummer | ✅ | Must be unique in Huma. Only sent when the employee is created in Fortnox, and never updated after that. Changing it in Huma disconnects the employee from the integration. API name: Employee.EmployeeId |
| Bank account | Clearingnummer / Kontonummer | Only Swedish bank accounts. International accounts are not supported. API names: Employee.ClearingNo, Employee.BankAccountNo |
|
| Address | Adress 1, Adress 2, Postnummer, Ort, Land | The country is sent with its Swedish name. API names: Employee.Address1, Employee.Address2, Employee.PostCode, Employee.City, Employee.Country |
Employment dates (Huma → Fortnox)
| Huma field | Field in Fortnox | Required | Notes |
|---|---|---|---|
| Contract start date | Anställningsdatum | Uses the contract start date of the employee's first position in Huma. API name: Employee.EmploymentDate |
|
| Contract end date | Anställd t.o.m. | Uses the contract end date of the employee's last position in Huma. API name: Employee.EmployedTo |
Absence (Huma → Fortnox)
| Huma field | Field in Fortnox | Required | Notes |
|---|---|---|---|
| Absence type | Orsak | ✅ | Set up in Step 4. API name: AbsenceTransaction.CauseCode |
| Time period | Datum | ✅ | One absence transaction per absence day. Maximum 50 workdays per absence. API name: AbsenceTransaction.Date |
| Percentage | Omfattning | ✅ | Hours are calculated from the employee's working time schedule in Fortnox. API name: AbsenceTransaction.Extent |
💡 The absence note in Huma is not sent to Fortnox.
Error log and troubleshooting
Where to find the error log
- Go to the Fortnox integration in Huma.
- Open the «Error log» tab.
Errors are grouped by day. Each entry shows a message, the time, the employee it applies to and a level:
| Level | Meaning |
|---|---|
| 🔴 Error | Something was not sent to Fortnox. You need to act. |
| 🟡 Warning | Something needs your attention. |
| 🔵 Info | For your information. No action needed. |
Integration status
| Status on the integration page | What to do |
|---|---|
| This integration has been set up, but is not active | Click «Sync users» to activate it. |
| Connected and active | Everything is running. |
Common errors
| Problem | What it means | How to fix |
|---|---|---|
| Absence is 0 hours in Fortnox | The employee has no working time schedule, or a schedule of 0 hours, in Fortnox. | Assign a valid working time schedule under the «Anställning» tab in Fortnox. |
| Absence longer than 50 workdays is not in Fortnox | Huma can't create, change or delete absence longer than 50 workdays in Fortnox. | Register the absence manually in Fortnox, or split it into shorter periods in Huma. |
| Email mismatch when trying to update | The email address in Fortnox no longer matches the employee in Huma. | Make the email address the same in both systems, then click «Sync users». |
| Rate limit exceeded for request… | Huma sent too many requests to Fortnox in a short time. | Wait a moment, then try the change again. |
| The connection to Fortnox stops working | The approval in Fortnox has expired or been removed, or the integration licence is no longer active. | Check the integration licence in Fortnox. Then reconnect the integration in Huma and approve the permission in Fortnox again. |
When Fortnox rejects absence
If Fortnox rejects an absence, the relevant employees and managers are notified, and the error is logged. Open the «Error log» to see the message from Fortnox.
FAQ
Why are changes I make in Fortnox not showing in Huma?
Changes only go automatically from Huma to Fortnox. To bring changes from Fortnox into Huma, click «Sync users».
Which position information is sent to Fortnox?
Only the employment dates. The contract start date of the first position is sent as the employment date, and the contract end date of the last position is sent as the end date. Other position fields, such as contract type and position percentage, are not sent.
When is absence created, updated or deleted in Fortnox?
Created: when the absence is approved, has an end date, and its type is mapped to a cause in Fortnox.
Updated: when the percentage changes. If the dates or the type change, Huma deletes the absence in Fortnox and creates it again.
Deleted: when the absence is deleted in Huma, its end date is removed, or it's no longer approved.
Huma matches absence by employee, type and time period.
How are absence hours calculated?
Fortnox calculates the hours from the employee's working time schedule under the «Anställning» (Employment) tab. Employees created from Huma get a schedule of 0 hours, so make sure everyone has a valid schedule.
Why isn't salary sent to Fortnox?
The Fortnox integration doesn't support salary. Register salary changes manually in Fortnox.
Can I transfer historical absence or positions?
No. Only data created or changed after the integration is active is sent. To get historical absence into Fortnox, register it in Huma and approve it after the integration is active.
Do I need more than one integration licence in Fortnox?
No. One integration licence covers all integrations in your Fortnox account.
Related articles
🔗 Getting started with Payroll & accounting integrations
🔗 How positions work in integrations
🔗 How absence works in integrations