Syncing products
Requires Sync Products in App settings.
- Creates and updates HubSpot products from Fortnox articles on each scheduled run.
- Existing products are matched by SKU (
hs_sku= FortnoxArticleNumber).
| Field HubSpot | Direction | Field Fortnox |
|---|---|---|
| Product: SKU (hs_sku) | <- | ArticleNumber |
| Product: name | <- | Description |
| Product: description | <- | Note |
| Product: price | <- | SalesPrice (fallback); Fortnox price list for the HubSpot company currency when mapped — details |
| Product: Cost of goods sold (hs_cost_of_goods_sold) | <- | PurchasePrice |
| Product: tax | <- | VAT |
| Product: Status (hs_status) | <- | Active, Expired |
Product Status: The HubSpot Status property (hs_status) uses internal values "active" and "inactive". It is derived from Fortnox article flags: when Active is true and Expired is false, the product is set to active. Otherwise it is set to inactive.
Product pricing (multi-currency)
Besides the article Sales price in Fortnox, the integration can use Fortnox price lists so HubSpot products get correct amounts in your portal company currency and, when applicable, extra HubSpot multi-currency price fields (hs_price_sek, hs_price_eur, etc.).
Fortnox permission
Reading price lists requires the Fortnox Pris (Price) permission on the integration. After your Fortnox app provider enables it, reconnect Fortnox from the HubSpot app so the connection is renewed. Until then, product prices follow the same behavior as before (primary price from Sales price).
If your Fortnox lists use short codes (e.g. A, B) without the currency in the name, your integration team maps each list code to an ISO currency (for example SEK, EUR). Only mapped lists are used; the main HubSpot Price for your company currency uses the matching list when configured, otherwise it falls back to Fortnox Sales price.
Release notes — Fortnox price lists & multi-currency product prices