CRM migration
Field-level mapping, validation, and rollback between EXACT and HubSpot. We move data and schema; workflows are rebuilt natively in HubSpot.
EXACT
Source
HubSpot
Destination
Compatibility
12 of 12
objects map 1:1 between EXACT and HubSpot.
Complexity
BStandard
Timeline
48–72 hours
Overview
Exact Software (Exact Online, Exact Macola) is an ERP-adjacent CRM that bundles contact management, project tracking, and financial references in a single application. Its data model treats contacts and accounts as distinct but tightly coupled to project and order records, with limited lifecycle modeling. HubSpot separates contacts, companies, deals, and tickets as first-class objects with a lifecycle stage property, deal pipelines with configurable stages, and an association model that supports N:N contact-to-company and contact-to-deal relationships. The migration carries everything Exact stores natively (contacts, accounts, projects, orders, activities, custom fields) into HubSpot's object graph. Key challenges include mapping Exact's project-to-deal relationships to HubSpot's deal-object model, preserving Exact's financial reference numbers (order IDs, invoice numbers) as custom properties, and handling Exact's limited owner model versus HubSpot's full user roster with roles and teams. Additionally, Exact's flat contact status flags require value mapping to HubSpot's lifecycle_stage to maintain reporting continuity. The migration approach includes a pre-migration audit to define transformation rules, a sample migration with field-level diff for validation, and a delta-pickup window to capture any changes made in Exact during cutover.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a EXACT object lands in HubSpot, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
EXACT
Contact
HubSpot
Contact
1:1HubSpot Contact maps 1:1 to Exact Contact records. Exact contact properties (name, email, phone, job title, address) transfer as HubSpot default properties. Exact's contact status flag (Customer/Lead/Inactive) routes to HubSpot lifecycle_stage as a value-mapped custom property for reporting parity. Any custom properties on Exact contacts are created as HubSpot custom properties with matching data types before migration runs.
EXACT
Account
HubSpot
Company
1:1Exact Account maps directly to HubSpot Company. Account name, website, industry, employee count, and annual revenue transfer as HubSpot Company properties. Exact's billing address fields map to HubSpot's address property set (street, city, state, postal code, country). Multi-address Exact accounts: primary billing address migrates as the Company address; additional addresses stored as a custom multi-line text property.
EXACT
Project
HubSpot
Deal
1:1Exact Projects map to HubSpot Deals. The project name becomes the Deal name, project status maps to Deal stage via value mapping, and project value or budget amount maps to the Deal amount. If an Exact project contains multiple work orders or deliverables, each sub-item can become a Deal line item in HubSpot if the Products/Line Items module is available.
EXACT
Sales Order
HubSpot
Deal + Line Item
1:1Exact Sales Orders map to HubSpot Deals with Line Items attached. Order number migrates as a custom property (exact_order_number__c). Each line item on the Exact order maps to a HubSpot Line Item linked to the Deal, preserving product name, quantity, and unit price.
EXACT
Activity (calls, emails, notes)
HubSpot
Engagements (calls, emails, notes)
1:1Exact call logs, email logs, and notes transfer to HubSpot as Engagements on the Contact timeline. Original timestamps, owner (rep), and associated contact/company links are preserved. Exact notes with rich text are converted to HubSpot note format with attachments preserved.
EXACT
Meeting / Calendar Entry
HubSpot
Meeting (HubSpot native integration) or Engagement
1:1Exact calendar entries linked to contacts or projects migrate as HubSpot Meetings with original start time, duration, attendee list, and meeting notes. If Exact uses a connected calendar integration, the HubSpot meeting link is preserved; standalone calendar entries without CRM links migrate as engagement notes.
EXACT
Custom Fields (ERP reference numbers, project codes)
HubSpot
Custom Properties on Contact / Company / Deal
1:1Exact custom fields that don't map to HubSpot native properties (order numbers, invoice references, project codes, ERP-specific codes) are created as HubSpot custom properties. Custom property type is inferred from the source data type — text fields become text properties, numeric values become number properties, dates become date properties.
EXACT
Contact Owner / Assigned User
HubSpot
Owner (HubSpot User)
1:1Exact user records are matched to HubSpot users by email address. If an Exact contact is assigned to a user who doesn't have a HubSpot account, the record lands with an unassigned OwnerId and a flag property (original_exact_owner__c) preserves the original assignment for manual re-assignment.
EXACT
Attachment / Document
HubSpot
Files (HubSpot CRM Files)
1:1Exact document attachments on contact or project records are downloaded and re-uploaded to HubSpot Files. Files are associated to the corresponding HubSpot record (Contact, Company, or Deal) using HubSpot's file-to-record association API. File size limits apply (HubSpot default 25MB per file).
EXACT
Workflows / Automation Rules
HubSpot
HubSpot Workflows (must be rebuilt)
1:1Exact workflow rules, approval chains, and automated assignment logic do not have a HubSpot equivalent and cannot be migrated. FlitStack exports the workflow definitions as a configuration document for your HubSpot admin to reference when rebuilding in HubSpot's Workflow tool. This export includes trigger conditions, action sequences, and conditional branch logic.
EXACT
ERP Financial Fields (credit terms, invoice totals)
HubSpot
Custom Properties on Company / Deal
1:1Exact's financial ledger fields (credit limit, payment terms, outstanding invoice total, tax ID) have no HubSpot native equivalent. These migrate as custom properties on the Company record (for account-level financials) or as read-only reference fields on the Deal for context. Finance teams typically recreate these as custom properties synced from an ERP integration post-migration.
EXACT
Ticket / Service Request
HubSpot
Ticket
1:1Exact service tickets or support requests map to HubSpot Tickets. Ticket status, priority, subject, and description transfer. HubSpot's ticket pipeline is configured per your support workflow — Exact ticket categories map to HubSpot ticket pipelines via value mapping if multiple queues exist.
| EXACT | HubSpot | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Account | Company1:1 | Fully supported | |
| Project | Deal1:1 | Fully supported | |
| Sales Order | Deal + Line Item1:1 | Fully supported | |
| Activity (calls, emails, notes) | Engagements (calls, emails, notes)1:1 | Fully supported | |
| Meeting / Calendar Entry | Meeting (HubSpot native integration) or Engagement1:1 | Fully supported | |
| Custom Fields (ERP reference numbers, project codes) | Custom Properties on Contact / Company / Deal1:1 | Fully supported | |
| Contact Owner / Assigned User | Owner (HubSpot User)1:1 | Fully supported | |
| Attachment / Document | Files (HubSpot CRM Files)1:1 | Fully supported | |
| Workflows / Automation Rules | HubSpot Workflows (must be rebuilt)1:1 | Fully supported | |
| ERP Financial Fields (credit terms, invoice totals) | Custom Properties on Company / Deal1:1 | Fully supported | |
| Ticket / Service Request | Ticket1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
EXACT gotchas
Strict API rate limits gate bulk extraction
Exact Globe vs Exact Online feature drift
Workflow and signalling rules are not exportable
OAuth token lifecycle requires careful handling
HubSpot gotchas
Marketing Contacts billing model is migration-critical
Feature tier gating is not visible until onboarding
Mandatory onboarding fees inflate year-one cost
HubSpot CSV importer cannot migrate engagements or attachments
Custom objects require Enterprise and a pre-existing schema
Pair-specific challenges
Migration approach
Audit Exact data model and define project-to-deal mapping rules
FlitStack reviews your Exact instance's object structure — contacts, accounts, projects, orders, tickets, activities, and all custom fields. We identify which Exact projects map to HubSpot Deals, whether your HubSpot tier supports Line Items, and which custom fields need HubSpot custom properties. This step produces a Migration Plan document specifying the object hierarchy, value-mapping tables, and a list of custom properties to pre-create in HubSpot before data lands.
Pre-create HubSpot custom properties and configure deal pipelines
Before migration runs, FlitStack creates the custom properties identified in the audit (exact_order_number__c, exact_project_code__c, original_create_date__c, etc.) in HubSpot. We also review your HubSpot deal pipeline and stage configuration and recommend stage names that align with your Exact project statuses so value mapping applies cleanly. If multiple Exact project types exist, we suggest multiple HubSpot pipelines or a single pipeline with stages covering all statuses.
Resolve Exact users to HubSpot owners by email
Exact user records are matched against HubSpot user accounts by email address. We generate a match report showing resolved owners, unmatched Exact users, and HubSpot users with no Exact counterpart. Your team decides whether to invite unmatched Exact users to HubSpot or assign their records to a fallback owner. No record migrates without an owner assignment confirmed — records without a valid owner are held in a staging queue until resolved.
Run a sample migration with field-level diff
A representative slice — typically 100–500 records spanning contacts, companies, projects/deals, and activities — migrates first. We generate a field-level diff showing source value, mapped destination value, and any transformation applied. You verify lifecycle stage mapping, financial reference field placement, and deal pipeline assignment before the full run commits. Sample migration runs in 2–4 hours and can be repeated after adjustments.
Execute full migration with delta-pickup and audit log
Full migration runs against HubSpot using the Exact API (or CSV export where API access is limited). A delta-pickup window — typically 24–48 hours after the full run starts — captures records modified in Exact during the cutover. FlitStack maintains a full audit log of every record created, updated, or skipped, with reasons for any de-duplicated or errored records. One-click rollback reverts all migrated records if reconciliation against Exact fails.
Platform deep dives
EXACT
Source
Strengths
Weaknesses
HubSpot
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across EXACT and HubSpot.
Object compatibility
1 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
EXACT: 60 API calls per minute AND 5,000 API calls per day, per app per company. Signalled via X-RateLimit-Minutely-Remaining/Reset and X-RateLimit-Daily-Remaining/Reset headers. HTTP 429 returned on overrun..
Data volume sensitivity
EXACT exposes a bulk API — large-volume migrations stream efficiently.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during EXACT to HubSpot migration scoping. Not seeing yours? Book a call.
Walk through your EXACT to HubSpot migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave EXACT
Other ways to arrive at HubSpot
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.