Syncing projects

Requires Sync projects in App settings. The toggle is off by default — turn it on only if you use Fortnox projects and want them in HubSpot.

  • Creates and updates HubSpot Projects from Fortnox projects on each scheduled run.
  • Existing projects are matched by fortnox_project_number on the HubSpot project.
  • Links HubSpot companies when Fortnox customers have this project as their default Customer.Project and a matching HubSpot company exists (fortnox_id).

Prerequisites

  • HubSpot Projects must be enabled in your portal’s data model (Super Admin).
  • Re-authenticate both HubSpot and Fortnox under the Connection tab after this feature is available:
    • HubSpot — crm.objects.projects.read, crm.objects.projects.write, crm.schemas.projects.read
    • Fortnox — project
  • Until re-auth completes, Sync projects stays disabled and lists missing scopes in app settings.

Field mappings

Field HubSpot (Project) Direction Field Fortnox Notes
Project: fortnox_project_number <- ProjectNumber Match key for create/update
Project: hs_name <- Description Fortnox Description is required and max 50 characters
Project: hs_description <- Comments
Project: fortnox_start_date <- StartDate Custom date property
Project: hs_target_due_date <- EndDate HubSpot target due date
Project: fortnox_project_status <- Status NOTSTARTED, ONGOING, or COMPLETED (stored as text)
Project: fortnox_project_leader <- ProjectLeader Synced as text only — not mapped to hubspot_owner_id
Project: hs_pipeline / hs_pipeline_stage <- Status On create, stage is chosen from the portal’s default HubSpot project pipeline using Fortnox status (see below)

Pipeline stages on create

When a HubSpot project is created from Fortnox, the app uses your portal’s default HubSpot project pipeline and maps Fortnox Status to a stage:

  • NOTSTARTED → configured not started stage (or default first stage)
  • ONGOING → configured ongoing stage
  • COMPLETED → configured completed stage

Updates to existing HubSpot projects change properties only — pipeline stage is not moved on every sync unless you change it manually in HubSpot.

Company associations

Fortnox GET /3/projects does not document a customer field. If your Fortnox tenant returns CustomerNumber (or Customers) on the project payload, the app links matching HubSpot companies by fortnox_id. Otherwise company linking is skipped — associate manually in HubSpot.

  • Only adds missing project → company links; manual associations are not removed.
  • If no Fortnox customer has this project as default, no company association is attempted.

Invoice project linking

When Sync projects and Fortnox invoice to HubSpot are both enabled, invoice import also links records to HubSpot projects when Fortnox sets Invoice.Project to a project number that already exists in HubSpot (matched on fortnox_project_number):

  • Deal import — the imported deal is associated with the HubSpot project.
  • HubSpot Invoice import — the HubSpot Invoice record is associated with the project directly.
  • If Invoice.Project is cleared or changed in Fortnox, the next invoice sync updates HubSpot associations accordingly.

Sync projects first (or re-run invoice import after projects exist) so associations can be created. See also Syncing invoices and Release notes (July 13, 2026).

Not included

  • HubSpot → Fortnox project create (Fortnox projects are imported only).
  • Contact associations on the HubSpot project.
  • Budget or bi-directional name sync — Fortnox Description is the canonical name on import.