Get started with Fortnox ↔ HubSpot

A step-by-step guide to installing the integration and choosing what should sync between Fortnox and HubSpot.

Setup in HubSpot

You need the Fortnox app from the HubSpot Marketplace for the integration to work.

  1. Search for Fortnox in the Marketplace, or open the app page here.
  2. Click Install (or the equivalent install button).
  3. Choose the HubSpot account where you want the app, then click Choose account.

Choose HubSpot account

  • Click Connect app to allow the Fortnox app in your HubSpot account.

Connect HubSpot app

  • You are then redirected to Fortnox to sign in and approve access.

Setup in Fortnox

  1. Enter the username for the Fortnox account the integration should use.

Enter the username for Fortnox

  1. Enter the password for that Fortnox account.

Enter the password for Fortnox

  1. Click Godkänn behörighet to approve access.

Connect Fortnox app

Finish setup

When both HubSpot and Fortnox are connected, installation is complete.

If you turn on Sync Companies in App settings, Fortnox customers are imported into HubSpot on the next scheduled sync. Only customers that changed since the last run are updated.

Companies in HubSpot

Syncing

The integration can move data in two directions. Use App settings to choose what runs automatically.

  • Fortnox → HubSpot — scheduled imports (customers, products, invoices, orders, projects).
  • HubSpot → Fortnox — triggered when you change certain fields or use app cards on records.

How scheduled imports work

  • Turn each import on or off under the Fortnox → HubSpot tab in app settings.
  • Each run only picks up records that changed since the last sync.
  • When a sync is on, its tile shows last run time, how many records were queued, and a Reset sync button to start over from the beginning.
  • Sync timing is managed on our side — there is no interval setting in the app.

Fortnox → HubSpot

HubSpot → Fortnox

App settings

Open the Fortnox app inside HubSpot to choose what should sync and how. Settings are split into three tabs:

  • Fortnox → HubSpot — automatic imports from Fortnox
  • HubSpot → Fortnox — actions when you create or update records in HubSpot
  • Connection — reconnect HubSpot and Fortnox if access needs to be refreshed

App settings in HubSpot

Invoicing in HubSpot

Choose whether Fortnox invoices in HubSpot are represented as Deals or native HubSpot Invoice records. This portal-wide default applies to both directions unless you override a direction below.

Portal default (Deal vs HubSpot Invoice)

Top-level tile Invoicing in HubSpot — toggle Import as HubSpot Invoice (instead of Deal).

  • On: default object type is HubSpot Invoice.
  • Off: default object type is Deal.

Requires HubSpot invoice OAuth scopes when enabling Invoice mode. Re-authenticate under Connection if the toggle is disabled.

Per-direction overrides

On the Fortnox → HubSpot and HubSpot → Fortnox invoice tiles, use Object type for this direction to keep the portal default or override import/create independently.

Example: import Fortnox invoices as HubSpot Invoices, but create Fortnox invoices from Deals — or the reverse.

Fortnox → HubSpot

Turn these on to keep HubSpot up to date with data from Fortnox. Each enabled sync runs in the background and only processes changes since the last run.

Sync Companies

Imports Fortnox customers as HubSpot companies.

When enabled, the tile shows when the sync last ran, how many records were queued, and a Reset sync option.

Exclude inactive customers

Under Sync Companies. Default: off.

When on, customers marked inactive in Fortnox are skipped. When off, inactive customers are included like any other.

Create contact for private persons

Under Sync Companies. Default: off.

Private customers in Fortnox are always synced as HubSpot companies. Turn this on to also create or update a HubSpot contact and link it to that company.

  • Uses the email address from Fortnox (Email, not invoice email).
  • Name, phone, and address are copied to the contact.
  • If Fortnox has no email, only the company is synced — no contact is created.

More about private person customers

Company import filters

Under Sync Companies. Optional rules to limit which Fortnox customers are imported (for example by cost center or customer type).

Leave filters off to import all customers — same behaviour as before.

Sync Products

Imports Fortnox articles as HubSpot products.

When enabled, the tile shows last run, queued records, and Reset sync.

Auto-enable missing HubSpot currencies

Under Sync Products. Default: off.

If a Fortnox price list uses a currency that is not yet enabled in HubSpot, the app can add it automatically using Fortnox exchange rates. When off, those prices are skipped.

Exclude inactive articles

Under Sync Products. Default: off.

When on, Fortnox articles marked inactive or expired are skipped and not synced to HubSpot. When off, all articles are imported — their status is still mapped to the HubSpot product Status field either way.

Fortnox invoice to HubSpot

Imports Fortnox invoices into HubSpot on a schedule.

  • Default: invoices sync as Deals in the Fortnox invoice pipeline (created on first enable).
  • Alternative: turn on Import as HubSpot Invoice under Invoicing in HubSpot to sync to native HubSpot Invoice records instead.

HubSpot Invoices · Deal import

Import as HubSpot Invoice (instead of Deal)

Portal default under Invoicing in HubSpot; per-direction override available on this tile when import should differ from the default.

  • On: sync to native HubSpot Invoice records.
  • Off (default): sync to Deals in the Fortnox invoice pipeline.

Changing this does not move records you already have — it only affects future imports. You may need to re-authenticate under Connection for invoice permissions.

Invoice import filters & options

Under Fortnox invoice to HubSpot. Optional rules for which invoices to import, plus:

  • Amount includes VAT — off by default (amounts exclude VAT).
  • Update existing deal — deal import only; update a matching deal instead of creating a new one.
  • Link HubSpot Invoice to existing deal — connect imported invoices to deals that match on order number.
  • Link only — associate invoice and deal without updating deal fields.

Full list of filter options

Exclude cancelled invoices

Under Fortnox invoice to HubSpot. Default: off.

When on, cancelled Fortnox invoices are skipped and not synced to HubSpot (as either a Deal or an Invoice). When off, all invoices are imported.

Fortnox orders to HubSpot orders

Imports Fortnox orders as HubSpot Order records.

Orders can be linked to deals when Fortnox carries a HubSpot deal reference (for example after an offer was created from a quote).

How order import works

Exclude cancelled orders

Under Fortnox orders to HubSpot orders. Default: off.

When on, cancelled Fortnox orders are skipped and not synced to HubSpot. When off, all orders are imported.

Fortnox order pipeline (HubSpot Orders)

Optional. Creates a Fortnox order pipeline in HubSpot and sets each imported order’s stage from Fortnox status (open, shipped, delivered, cancelled, and so on).

Order pipeline details

Sync projects

Imports Fortnox projects as HubSpot Project records. Default: off.

Requires the HubSpot Projects object in your portal and re-authentication for project OAuth scopes on both Fortnox and HubSpot. When enabled, the tile shows last run, queued records, and Reset sync.

How project sync works · Invoice project linking

HubSpot → Fortnox

These settings allow users to create or update records in Fortnox from HubSpot. Most flows are triggered by setting a Yes/No field on the record, or by using an app card in the sidebar.

HubSpot deal to Fortnox invoice

Lets users create Fortnox invoices from HubSpot deals when the effective HubSpot → Fortnox create object type is Deal.

HubSpot invoice to Fortnox invoice

Lets users create Fortnox invoices from native HubSpot Invoice records when the effective HubSpot → Fortnox create object type is HubSpot Invoice.

  • Trigger via the Fortnox invoice app card on invoice records, or a workflow on Create Fortnox invoice from this HubSpot invoice (create_fortnox_invoice_from_invoice_object).
  • Requires exactly one associated company with a Fortnox ID, line items in a single currency, and the same validation rules as deal create.

Field mapping & options · Invoice app card

Invoice from existing Fortnox order when linked

Under HubSpot deal to Fortnox invoice. Default: off.

When a deal is linked to a Fortnox order, invoice creation uses Fortnox Fakturera order instead of creating a separate invoice.

How linking works

Sync Fortnox invoice row values to line items

Under HubSpot deal to Fortnox invoice. Default: off.

After an invoice is created in Fortnox, writes row-level VAT and totals back to the deal’s line items in HubSpot. Does not change prices or tax on the line items themselves.

More about line item sync

Periodiseringskonto (Fortnox)

Under HubSpot deal to Fortnox invoice (visible when that toggle is on).

Portal-wide BAS account used for Fortnox invoice accrual (periodisering) when Fortnox accrual period is set on a deal or HubSpot Invoice. Choose from your Fortnox chart of accounts (bookkeeping scope) and click Save accrual account. Default at runtime is 2990 until saved.

How periodisering works · Release notes (July 15, 2026) · July 16 fixes

Invoice template mapping

Under HubSpot deal to Fortnox invoice (visible when that toggle is on).

Map free-text HubSpot names to Fortnox print templates (loaded from Fortnox). Saving updates the company select property fortnox_invoice_template with those names. When an invoice (or customer) is created, the company's selected name is resolved to Fortnox PrintTemplate / DefaultTemplates.Invoice.

  • Use for region- or customer-type layouts (e.g. EU, US, collection agency).
  • Requires Fortnox print (Utskrift) scope — re-authenticate under Connection if templates do not load.
  • Deal/invoice Följesedel (fortnox_print_template = ps) always overrides the company mapping.

How template mapping works · Release notes (July 16, 2026)

HubSpot company to Fortnox customer

Lets users create Fortnox customers from HubSpot companies (via workflow or the company app card).

HubSpot quote to Fortnox offer

Creates Fortnox offers when Create offer in Fortnox is set to Yes on a quote, or when users click Create Fortnox offer on the deal app card.

Requires a HubSpot automation for the property path — or use the Fortnox offer app card on deals. See Create offer from quote.

HubSpot order to Fortnox order

Creates Fortnox orders when Create order in Fortnox is set to Yes on a HubSpot order, or when users click Create Fortnox order on the order or deal app card.

  • If the order has no line items but one linked deal, the deal’s line items are used.

Create order from order · Fortnox order app card

Connection

Re-authenticate HubSpot and Fortnox

Use this if access has expired or after the app has been updated with new permissions.

Re-authentication refreshes the connection and ensures all required fields exist in HubSpot for companies, deals, quotes, orders, invoices, line items, and projects. The Connection tab shows what is connected and which fields are in place.

OAuth opens in a new browser tab. When finished, use the link on the completion page to return to Fortnox app settings in HubSpot, then click Refresh status on the Connection tab.

Toggle sync settings

Automations in HubSpot

Several HubSpot → Fortnox actions run when a specific field is set to Yes. In practice you set this up with a HubSpot workflow (or CRM subscription) that watches the field and notifies the app.

Typical fields to watch:

  • Company — Create customer in Fortnox
  • Deal — Create invoice in Fortnox
  • Invoice — Create Fortnox invoice from this HubSpot invoice
  • Quote — Create offer in Fortnox
  • Order — Create order in Fortnox

The corresponding app setting must also be turned on (see App settings). If nothing happens, check that the workflow fired and that the field value is Yes, not just checked in the UI in an unexpected way.

Technical details for developers

Target URL:

POST https://<your-app-domain>/hubspot_event_subscriptions

HubSpot may send modern object.propertyChange events or older event type names — the app accepts both. Release notes (March 20, 2026).

The integration provides HubSpot app cards (UI extensions) in the record sidebar for quick Fortnox actions.

How to add the cards

  1. Open a company, deal, invoice, or order record in HubSpot.
  2. Customize the right sidebar (record layout).
  3. In the Apps section, add the Fortnox cards you need (see table below).
Record type App card name What it does
Company Fortnox customer Create a Fortnox customer from the company, or show that it is already linked.
Deal Fortnox invoice Create a Fortnox invoice from the deal, or show the linked invoice number. Available when create object type is Deal.
Invoice Fortnox invoice from invoice (preview) Preview app card — create a Fortnox invoice from the HubSpot Invoice record, or show the linked Fortnox invoice number. Add under Settings → Objects → Invoices → Preview (not the record sidebar). Available when create object type is HubSpot Invoice.
Deal Fortnox offer Trigger a Fortnox offer (offert) from the quote linked to the deal.
Deal Fortnox order Validate and create a Fortnox order from the HubSpot order linked to this deal (exactly one order required).
Order Fortnox order Validate requirements and create a Fortnox order from this HubSpot order.

Release notes (May 11, 2026) — first app cards (customer & invoice on deals). The Fortnox offer card on deals and Fortnox order card on deals and orders were added later — see Release notes (July 2, 2026). The Fortnox invoice card on HubSpot Invoice records was added in Release notes (July 14, 2026).

Shows whether the company is linked to Fortnox and lets you create a customer with one click.

Fortnox customer app card on a company record

The card shows Already linked to Fortnox when a Fortnox customer number exists. Otherwise, use Create Fortnox customer when:

  • HubSpot company to Fortnox customer is enabled in app settings.
  • The company has an organisation number (Organization number from Fortnox) but no Fortnox ID yet.
  • No customer with the same organisation number already exists in Fortnox.

Shows the Fortnox invoice number when the deal is linked, or lets you create an invoice from the deal.

Fortnox invoice app card on a deal record

When no invoice exists yet, use Create Fortnox invoice when:

  • HubSpot deal to Fortnox invoice is enabled.
  • The portal create object type is Deal (see Invoicing in HubSpot).
  • The deal has no invoice number in Fortnox yet.
  • The deal currency exists in Fortnox and the deal is linked to a primary company with a Fortnox ID (fortnox_id).
  • The deal has at least one line item; all line items share the same currency and are not recurring.
  • Products with SKU must exist as articles in Fortnox; VAT on line items must match a Fortnox VAT rate (VAT setup).

Credit invoices: set Fortnox kreditfaktura to Yes and enter the invoice to credit. Bookkeep after create applies only to new invoices from line items, not credits. Periodisering (fortnox_accrual_period) also applies only to new invoices — see Invoice accrual.

If Invoice from existing Fortnox order when linked is on and a Fortnox order is linked, creation uses Fakturera order instead — see Invoice from Fortnox order.

Shows the Fortnox invoice number when the HubSpot Invoice is linked, or lets you create an invoice in Fortnox from the HubSpot Invoice record. This card is a preview app card — add it under Settings → Objects → Invoices → Preview, not on the invoice record sidebar.

When no Fortnox invoice exists yet, use Create Fortnox invoice when:

  • HubSpot invoice to Fortnox invoice is enabled.
  • The portal create object type is HubSpot Invoice (see Invoicing in HubSpot).
  • The HubSpot Invoice has no Invoice number in Fortnox yet.
  • Exactly one associated company has a Fortnox ID.
  • Line items exist in a single currency; products with SKU must exist in Fortnox.

Optional workflow: set Create Fortnox invoice from this HubSpot invoice to Yes. See Create from HubSpot Invoice.

Creates a Fortnox offer (offert) from the quote associated with the deal. The offer number is saved on the quote record, not on the deal.

The card shows when an offer already exists for the linked quote. Otherwise, use Create Fortnox offer when:

  • HubSpot quote to Fortnox offer is enabled in app settings.
  • The deal is associated with at least one quote (if several quotes are linked, one must be marked as primary).
  • The quote does not already have a Fortnox offer document number.
  • The quote has line items and the linked company has a Fortnox customer ID — same general rules as Create offer from quote.

This is an alternative to setting Create offer in Fortnox on the quote via workflow. Both paths queue the same background job.

Validates that the HubSpot order meets Fortnox requirements, then creates the order in Fortnox when you click Create Fortnox order. The card shows a checklist (line items, company Fortnox ID, currency, SKUs, etc.) and highlights the first blocking field if something is missing.

The card shows Order already created in Fortnox when order_number_in_fortnox is set. Otherwise, requirements include:

  • HubSpot order to Fortnox order is enabled in app settings.
  • Exactly one associated company with Fortnox ID (fortnox_id).
  • At least one line item on the order, or exactly one linked deal that has line items (deal fallback).
  • Consistent currency across line items; no recurring billing; SKUs that exist in Fortnox (when set).

This is an alternative to setting Create order in Fortnox via workflow. Both paths use the same create logic.

Same create flow as on the order record, but opened from the deal sidebar. The card checks that exactly one HubSpot order is linked to the deal, validates that order’s requirements, and creates the Fortnox order from it.

If no order is linked, or the deal has no line items (and the order has none either), the checklist explains what is missing — for example that products must be on the deal or that a HubSpot order must be created and associated first.

See also Create order from order for field mappings and the deal line-item fallback.