> For the complete documentation index, see [llms.txt](https://docs.zwapgrid.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zwapgrid.com/client-portal/systems/setup-guides/fortnox.md).

# Fortnox

Create a Fortnox integration, select scopes, and configure Zwapgrid.

Fortnox is a Swedish cloud-accounting and business-administration platform. Set up new Fortnox integrations with a System Setting containing the application credentials and scopes.

| Item                        | Details                                                                             |
| --------------------------- | ----------------------------------------------------------------------------------- |
| Client Portal configuration | Available                                                                           |
| Test option                 | Fortnox developer sandbox                                                           |
| Vendor documentation        | [Fortnox Developer Portal guide](https://www.fortnox.se/developer/developer-portal) |

## Create a Fortnox integration

1. Register for [Fortnox developer access](https://apps.fortnox.se/integration-developer/signup).
2. In Fortnox, open **Menu → Developer Portal**.
3. Create an integration and select only the scopes your product requires.
4. Record the Client ID and Client Secret securely.
5. Create a sandbox in the developer portal and complete the invitation sent by Fortnox.

Fortnox documents its available permissions in [Scopes](https://www.fortnox.se/developer/guides-and-good-to-know/scopes).

## Configure Zwapgrid

1. In the Client Portal, open **Systems → Fortnox → Configure**.
2. Create a System Setting with a descriptive name.
3. Copy the redirect URI displayed by Zwapgrid to the Fortnox integration.
4. Select the scopes required by your API.1 and Proxy.1 operations.
5. Make sure the Zwapgrid scopes match the scopes registered in Fortnox.
6. Enter the Fortnox Client ID and Client Secret when using your own application.
7. Save, review, and publish the setting.

See [System Settings](/client-portal/systems/system-settings.md) for lifecycle and Consent-selection rules.

## Test and move to production

1. Add representative accounting data to the Fortnox sandbox.
2. Create a Development Consent using the published setting.
3. Complete the [Onboarding Flow](/onboarding-flow/onboarding-flow.md).
4. Test every required operation, including write operations where applicable.
5. Follow Fortnox's publication or private-integration process before onboarding production customers.

{% hint style="warning" %}
Adding scopes to an existing Fortnox application does not automatically grant them to previously activated customers. Those customers may need to reactivate the integration.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.zwapgrid.com/client-portal/systems/setup-guides/fortnox.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
