> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brandgate.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Fortnox

> Fortnox with BrandGate: what it syncs and how to connect.

> [!NOTE]
>
> Status: **Built in**. The current list for your company is in **Settings → Integrations**.

## What it syncs

Invoices, payments and full credit notes can be booked in Fortnox. Fortnox can also send the invoice e-mail when you choose it as sender.

## How to connect

Connect with OAuth 2 from **Settings → Integrations**.

## Who owns which data

BrandGate creates orders and invoices; Fortnox books them. Choose the invoice sender under **Invoice delivery**. The general rules are in the [integration model](/integration-model).

## Limits and known differences

Ask us if your case needs something that is not listed here: [brandgate.dev/contact](https://www.brandgate.dev/contact). Building it yourself? Follow [Build an ERP integration](/build-an-integration).

## Connect it through the API

Building the connection yourself? These are the typical field matches. The steps are the same for every system: [Build an ERP integration](/build-an-integration).

| Fortnox | BrandGate |
| - | - |
| Article `ArticleNumber` | product `external_id` and `sku` |
| Article `Description`, `SalesPrice`, `VAT` | `name`, `unit_price`, `vat_rate` |
| Article `QuantityInStock` | [`POST /v1/inventory`](/guides/erp-sync#3-stock-from-the-erp) |
| Price list `Code` / prices with `FromQuantity` 0 | [price list](/guides/send-data#price-lists-and-customer-prices) `external_id` / `items` |
| Customer `CustomerNumber`, `Name`, `Email`, `VATNumber` | `customer_number` and `external_id`, `company_name`, `email`, `vat_number` |
| Customer `PriceList`, `Currency`, `TermsOfPayment` (code, convert to days) | `price_list`, `preferred_currency`, `payment_terms_days` |
| Order created from a BrandGate order | `YourOrderNumber` = `po_reference`, `ExternalInvoiceReference1` = BrandGate order `number`; acknowledge with the Fortnox `DocumentNumber` |

> [!NOTE]
>
> Field names are the ones your ERP usually exposes; check them against your version. Amounts go to BrandGate as decimal strings with at most two decimals (`"299.50"`), so round before you send: ERPs that hold prices as floating-point numbers need `Math.round(x * 100) / 100`.

## What the API cannot hold yet

* Quantity-break prices (`FromQuantity` above 0).
* Inactive articles (`Active: false`), article type, unit and EAN.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.