Warehouse module for Stock

Updated July 15, 2026

The Fortnox warehouse module and stock management

If your business uses the Fortnox warehouse module (lagermodul), your integration behaves differently than a standard Shopify → Fortnox setup.

What the warehouse module is

Fortnox offers an optional warehouse module that turns Fortnox from an invoicing tool into a light warehouse management system. When enabled in Fortnox, it adds:

  • Stock points (lagerställen) — logical warehouse locations

  • Pick lists (plocklistor) — printable documents for warehouse staff

  • Delivery status — orders progress through Order → Ready to deliver → Delivered → Invoiced rather than jumping straight from order to invoice

  • Per-stock-point inventory levels — quantities tracked per location, not just a single number per SKU

For merchants running fulfillment out of their own warehouse and needing physical pick/pack visibility inside their accounting system, this module is a natural fit. For pure drop-ship or 3PL setups where Shopify (or a WMS) handles fulfillment, it usually isn't needed.

Why this matters for the integration

Standard Junipeer configurations assume a simple flow: order lands in the source system, Junipeer sends it to Fortnox, an invoice is created. But if the warehouse module is active, that flow is wrong — you cannot invoice an order that hasn't been picked yet.

The integration has to respect the extra step. Instead of order → invoice, it becomes order → warehouse ready / delivered → invoice. And stock needs to be tracked per stock point, not globally.

Junipeer supports this. But you have to tell the integration that the warehouse module is in play, and configure the related settings accordingly.

The settings involved

Four settings across two sections of the Junipeer configuration determine warehouse module behaviour:

Invoice Settings — Mark order as Warehouse Ready / Delivered before creating invoice

Under Configure → Settings → Invoice Settings, this checkbox controls whether Junipeer marks an order as Warehouse Ready or Delivered in Fortnox before creating the invoice.

  • If the warehouse module is active, this setting is relevant — without it, invoices may be created against orders that haven't been picked

  • If the warehouse module is not active, this setting is not applicable

Stock Settings — Use Warehouses for stock

Under Configure → Settings → Stock, tick this checkbox to tell Junipeer that stock in Fortnox is managed per stock point (rather than globally).

Enabling this unlocks the next two settings. If the warehouse module is active in Fortnox but this checkbox is unticked in Junipeer, stock sync will not behave correctly.

Stock Settings — Select the default Stock Point (Warehouse)

Once Use Warehouses for stock is enabled, choose the default stock point. Junipeer uses this default in two situations:

  • When syncing stock levels — the default point is the one whose quantity is pushed to Shopify unless multi-stock-point sync is configured

  • When creating an order row in Fortnox — if no explicit stock point mapping is found for that row, the default is used

The dropdown reads from your Fortnox account, so any stock point you create in Fortnox becomes selectable here.

Stock Settings — Map Warehouse Allocations to Stock Points

If Shopify sends warehouse allocation data on orders (i.e. it tells you which of your Shopify locations the order should ship from), you can map each Shopify location to a specific Fortnox stock point here.

  • If a mapping is found, the order row uses that stock point

  • If no mapping is found, the row uses the default from the previous setting

  • If a row has multiple allocations, only the first is used

This lets a single Junipeer integration route orders to different Fortnox stock points based on where Shopify wants them fulfilled — useful for multi-location merchants.

Common Error

In cases where users of the Fortnox system have the Inventory Module enabled, there's no capability to create an order or customer invoice through the Fortnox API with a Delivered Quantity greater than 0 for an item that has an inventory balance in Fortnox of 0 or less.

Regardless of what our integrations submit as the Delivered Quantity in these scenarios, Fortnox will set the Delivered Quantity for the specific item to 0, which in turn results in the item line total being 0. Unfortunately, there's nothing we can do on our end in these situations.

Possible solutions include one of the following options:

  1. Deactivate the Fortnox Inventory Module - this allows for the creation of invoice lines with a Delivered Quantity greater than 0 even if the inventory balance for the item is 0 or less.

  2. Ensure that the inventory balances for your items in Fortnox always exceed 0.

  3. Allow Negative Inventory Balances in your Fortnox account, as per https://support.fortnox.se/produkthjalp/lager/aktivering-av-fortnox-lager#negativa-lagersaldon 

Was this article helpful?