ERP migration

Migrate from Sage Business Cloud X3 to Dolibarr ERP

Field-level mapping, validation, and rollback between Sage Business Cloud X3 and Dolibarr ERP. We move data and schema; workflows are rebuilt natively in Dolibarr ERP.

Sage Business Cloud X3 logo

Sage Business Cloud X3

Source

Dolibarr ERP

Destination

Dolibarr ERP logo

Compatibility

83%

10 of 12

objects map 1:1 between Sage Business Cloud X3 and Dolibarr ERP.

Complexity

BStandard

Timeline

3-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Sage Business Cloud X3 to Dolibarr is a structural migration from a multi-company, multi-site enterprise ERP to an open-source modular ERP/CRM designed for small and mid-market operations. Sage X3 stores financial data across multiple company codes with intercompany journal postings that must be reconstructed in the destination; Dolibarr handles this through its third-party module and multi-company accounting configuration. We extract via X3 template-driven flat files (specifying correct export templates and field sets before extraction), transform the data for Dolibarr's module structure, and load through CSV import or the Dolibarr API. Production orders, work orders, and BOMs do not migrate because Dolibarr's manufacturing module is not equivalent; we document these for manual rebuild. Workflows, automations, and custom X3 reports do not migrate as code; we deliver a written inventory for the customer's admin to rebuild in Dolibarr or a workflow engine of their choice.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Sage Business Cloud X3 logo

Sage Business Cloud X3

What's pushing teams away

  • Steep total cost of ownership including opaque pricing, large implementation fees, and annual support contracts that surprise buyers post-signature
  • Outdated interface and workflow tooling require significant user training; the Queries tool degrades noticeably at scale
  • Intercompany journal postings are manually duplicated between legal entities rather than auto-generated, creating reconciliation risk and audit friction
  • Customer support responsiveness is inconsistent, particularly for complex configuration issues not covered in standard documentation
  • Organizations outgrow the platform when they require deeper real-time analytics or want modern cloud-native ERP features not on Sage X3's roadmap

Choosing

Dolibarr ERP logo

Dolibarr ERP

What's pulling them in

  • Free open-source core with no per-user license fee makes it the lowest-cost entry point for small teams needing ERP and CRM in one package.
  • Self-hosted deployment gives full data ownership and eliminates vendor lock-in, especially attractive to businesses with compliance requirements.
  • Modular architecture means teams enable only the features they use, keeping the interface uncluttered and reducing learning curve.
  • Fast installation with no technical knowledge required — one reviewer set up multiple businesses in minutes using their own hosting.
  • Active community forum and marketplace of third-party add-ons provide support and extension options without mandatory subscription costs.

Object mapping

How Sage Business Cloud X3 objects map to Dolibarr ERP

Each row shows how a Sage Business Cloud X3 object lands in Dolibarr ERP, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Sage Business Cloud X3

Business Partners (Customers and Suppliers)

maps to

Dolibarr ERP

Third-Party (Societe)

1:1
Fully supported

Sage X3 Business Partners (BPCUSTOMER and BPSUPPLIER types) map directly to Dolibarr Third-Party (Societe) records. The BP category field (customer, supplier, or both) maps to Dolibarr's Client and Fournisseur flags. Address, payment terms, currency, and credit limit fields migrate to Dolibarr's standard third-party fields. We resolve the X3 BP type code (BPR type) against Dolibarr's Tiers type to ensure the correct Client/Fournisseur flag is set at import time. Custom fields on Business Partners in X3 (stored as extended columns) migrate to Dolibarr extrafields.

Sage Business Cloud X3

Sales Orders

maps to

Dolibarr ERP

Commercial Proposal and/or Customer Order (Commande Client)

1:1
Fully supported

Sage X3 Sales Orders (exported via ZSOH template) map to Dolibarr Customer Order (Commande Client). X3 order header fields (order number, order date, customer reference, payment terms) map to Dolibarr Commande Client fields; X3 order lines map to Dolibarr lignes commandes with product reference, quantity, unit price, and VAT rate preserved. If the X3 order is still in draft or confirmed status, it becomes a Dolibarr Proposal (propal) first and is converted to Order on confirmation. Closed or invoiced orders are migrated as Order records with the invoice reference stored in a custom field.

Sage Business Cloud X3

Purchase Orders

maps to

Dolibarr ERP

Supplier Order (Commande Fournisseur)

1:1
Fully supported

Sage X3 Purchase Orders map to Dolibarr Supplier Order. The X3 supplier reference, order date, payment terms, and line items (product, quantity, cost price, delivery date) migrate to Dolibarr lignes commandes fournisseur. Purchase order approval workflows in X3 are not migrated; open POs in approved or pending-receipt status are migrated as open orders for the Dolibarr purchasing team to manage. PO commitments in X3 that have not yet posted are recorded in Dolibarr's project module as commitments against a budget if the project module is active.

Sage Business Cloud X3

General Ledger / Chart of Accounts

maps to

Dolibarr ERP

Accounting Account (Plan Comptable)

1:1
Fully supported

Sage X3's hierarchical chart of accounts (with segment codes, cost centres, and dimensions) maps to Dolibarr's accounting module plan comptable. X3 account numbers map directly to Dolibarr account codes; account descriptions map to the label field. If X3 uses analytical dimensions (up to 9 per ledger), we create Dolibarr extrafields for dimension tags rather than a separate analytical accounting module unless the Dolibarr accounting module is licensed. Multi-ledger X3 setups require separate Dolibarr accounting configurations per ledger if the ledgers have different charts of accounts.

Sage Business Cloud X3

Accounts Payable / Receivable (Open Invoices)

maps to

Dolibarr ERP

Customer Invoice and Supplier Invoice

1:1
Fully supported

Open AP and AR invoices in Sage X3 (with due dates, outstanding amounts, payment terms, and aging data exported via templates) map to Dolibarr Facture Client and Facture Fournisseur records. We preserve the original invoice number, invoice date, due date, and open amount. Closed invoices (fully paid) are migrated as paid invoice records with a flag in extrafields marking them as historical. Credit notes and debit notes in X3 map to Dolibarr avoir records linked to the original invoice. The X3 payment terms code maps to Dolibarr's condition_reglement field.

Sage Business Cloud X3

Fixed Assets

maps to

Dolibarr ERP

Asset (Immobilisation)

1:1
Fully supported

Sage X3 Fixed Assets (acquisition cost, depreciation schedules, asset register entries) map to Dolibarr's Asset module. X3 depreciation methods (linear, declining, sum-of-years) map to Dolibarr's equivalent amortization method fields. Each X3 depreciation book (GAAP, tax, statutory) becomes a separate Dolibarr asset record with its own amortization schedule, or a single asset with multiple amortization lines if the Dolibarr asset module version supports parallel books. Disposal records in X3 migrate as Dolibarr asset closure entries with disposal date and proceeds.

Sage Business Cloud X3

Fixed Assets Depreciation Books

maps to

Dolibarr ERP

Amortization Lines (Immo Amortissements)

1:1
Mapping required

X3's parallel depreciation books per asset (e.g., GAAP vs. tax book) migrate to Dolibarr as separate amortization line sets against a single asset record if the Dolibarr asset module supports this, or as multiple asset records with a custom field linking them if the module does not support parallel books natively. The X3 depreciation convention (half-year, mid-month) maps to Dolibarr's date debut amortissement and mode calcul. Each book's accumulated depreciation at migration date is entered as the opening accumulated amortization amount.

Sage Business Cloud X3

Inventory / Stock

maps to

Dolibarr ERP

Product (Produit) + Stock

1:1
Mapping required

Sage X3 Products (with Bills of Materials, lot/serial tracking, expiry dates, and multi-location stock) map to Dolibarr Product records. X3 product type (stockable, service, kit) maps to Dolibarr's product type. Stock levels per X3 site/location migrate to Dolibarr warehouse stock entries. Lot and serial numbers migrate to Dolibarr extrafields if the lot/serial module is active. BOMs in X3 do not migrate to Dolibarr manufacturing module (see gotcha); we export BOM data to a separate structured CSV for manual rebuild in Dolibarr or a third-party manufacturing module.

Sage Business Cloud X3

Production Orders / Work Orders

maps to

Dolibarr ERP

Project / Work Order (non-equivalent)

lossy
Mapping required

Sage X3 Production Orders (linked to BOMs, routings, work centres, and consumption tracking) have no equivalent in the standard Dolibarr manufacturing module. We export work order headers, operations, and component consumption to a structured CSV and document the mapping so that the customer's admin can rebuild in Dolibarr's project module with a manufacturing extension or a third-party tool. Work order status and operation completion percentages are not natively supported in standard Dolibarr and require extrafields configuration or a community manufacturing module.

Sage Business Cloud X3

Budgets and Commitments

maps to

Dolibarr ERP

Project Budget (Projet) or Accounting Entry

1:1
Mapping required

Sage X3 Budgets and Commitments (tying purchase orders and contracts to GL postings across periods and scenarios) map to Dolibarr Project budget lines if the project module is active, or to a custom accounting import mapping against a budget control account in the chart of accounts. Commitments representing open purchase orders are linked to the migrated Supplier Order records. Budget versus actual reporting in X3 is documented in a separate Excel workbook for the customer's admin to replicate in Dolibarr reporting or a BI extension.

Sage Business Cloud X3

Users and Roles

maps to

Dolibarr ERP

User (Utilisateur)

1:1
Mapping required

Sage X3 Users (named-user model, not email-based in older deployments) map to Dolibarr User records. We resolve X3 user IDs to Dolibarr user accounts by email if available, or by matching the X3 user login to a newly provisioned Dolibarr user with the same identifier. Role-based access control in X3 (function-level permissions per site and company) maps to Dolibarr permission sets per module. Passwords and active/inactive status do not migrate; all migrated users receive a password reset link. Orphaned permissions from X3 are flagged in the handoff document for manual Dolibarr permission assignment.

Sage Business Cloud X3

Custom Fields / Extended Properties

maps to

Dolibarr ERP

Extrafields

lossy
Mapping required

X3 custom fields on all migrated objects (stored as extended table columns) migrate to Dolibarr extrafields with equivalent data types. String fields map to varchar extrafields; numeric fields map to int or float; date fields map to date. Multi-select or tag-style custom fields in X3 map to Dolibarr select or checkbox extrafields with the same option list. We detect all X3 custom fields during discovery and pre-create the corresponding Dolibarr extrafields before any data load begins, so that data import does not skip or truncate custom field values.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Sage Business Cloud X3 logo

Sage Business Cloud X3 gotchas

High

Opaque pricing leads to unexpected total cost post-signature

Medium

Intercompany journal postings require manual duplication

Medium

Template-driven export requires field mapping before data extraction

Medium

Historical transaction reporting requires additional tooling

Low

User accounts use named-user model, not email-based

Dolibarr ERP logo

Dolibarr ERP gotchas

High

Foreign key constraint errors on cross-distribution database restore

High

SQL injection vulnerabilities in version 9.0.1

Medium

Custom fields stored as JSON in extraoptions require field-by-field deserialization

Medium

Decimal precision and rounding configuration affects price fields

Low

No native iOS/Android app forces reliance on browser

Pair-specific challenges

  • Dolibarr manufacturing module is not equivalent to Sage X3 production

    Dolibarr's BOM and work order modules are basic compared to Sage X3's production management (BOMs, routings, work centres, quality control, multi-level traceability). Companies migrating from X3 with active work orders, multi-level BOMs, or production scheduling data will find that no standard Dolibarr module fully replaces these functions. We export work order data, BOM structures, routing definitions, and consumption history to structured CSVs and document the Dolibarr project-module rebuild approach. Some organisations choose to keep Sage X3 for production only and migrate the rest to Dolibarr; we document this as a partial migration option during scoping.

  • Intercompany journal postings require manual reconstruction

    Sage X3 requires intercompany journal entries to be entered separately in each legal entity rather than auto-generating balanced entries between companies. This means the counterparty entry that balances an intercompany posting in one X3 company is missing in the other. When migrating from X3, we identify intercompany GL entries by analysing account mappings across company codes and flag them for manual review or automated reconstruction in Dolibarr. We generate a reconciliation report listing each intercompany posting with the suggested dual entry in Dolibarr's third-entity accounting configuration.

  • X3 export templates must be configured before extraction

    X3 exports data through named templates (e.g., ZSOH for Sales Orders) that expose only the fields specified in the template definition. If a template is not pre-configured by the X3 administrator, only a default subset of available fields is exported, which means custom fields and extended properties may be silently omitted. We work with the customer's X3 administrator to identify or create the correct export templates for all objects in scope before extraction begins. Custom fields require a separate template configuration pass per object.

  • Dolibarr CSV import has field type and search limitations

    Dolibarr's native CSV import is functional for standard module records but has known limitations: product description fields cannot be used for native search without a community module or custom development; date fields must be in a specific format; and multi-select or checkbox extrafields require integer values rather than text labels. We transform all CSV output from X3 to match Dolibarr's expected import format per module, validate the type constraints before loading, and flag any field that will require post-import Dolibarr module activation or custom development.

  • X3 historical report snapshots require alternative extraction method

    Sage X3's report engine regenerates reports from live transaction data rather than storing rendered report snapshots. Migrating period-end financial statements and GL transaction history for audit trail preservation therefore requires either running the X3 reports and exporting the output as PDF or Excel, or querying the underlying transaction tables directly. We use a combination of the report engine output and direct table extraction where the customer provides database access, to capture period-close financial data and GL history before the system is decommissioned.

Migration approach

Six steps for a successful Sage Business Cloud X3 to Dolibarr ERP data migration

  1. Discovery and scope definition

    We audit the source Sage X3 instance across all company codes, active modules, user count, and data volume estimates. This includes identifying export template configurations, custom field definitions, intercompany journal posting patterns, and any active production orders or BOMs in scope. We pair this with a Dolibarr edition and module selection session: the customer chooses which Dolibarr modules to activate (third-party, invoicing, accounting, product, stock, project, etc.) and whether they are self-hosting or using a managed Dolibarr hosting provider. The discovery output is a written migration scope document listing every object, the expected record count, and the decision points requiring customer input.

  2. Template configuration and data extraction

    We work with the customer's X3 administrator to configure or verify the correct export templates for all objects in scope: Business Partners (ZBP or equivalent), Sales Orders (ZSOH), Purchase Orders (ZPOH), General Ledger (ZGLO), AP/AR (ZAP or ZAR), Fixed Assets (ZFAS), and Products/Stocks (ZPRD). Custom fields require an additional template configuration pass per object. We extract data in flat-file format with specified delimiters and encoding. For historical GL and financial statements, we run the X3 report engine and capture period-end exports alongside the transactional flat-file extraction. Database-level direct extraction is arranged if the X3 instance is on-premise and the customer grants read-only database access.

  3. Dolibarr module activation and schema preparation

    We set up the destination Dolibarr instance with the agreed module set: third-party module (mandatory for all migrations), product module, stock module, invoicing module, and accounting module. We configure the chart of accounts by importing the X3 account structure, set up payment terms mapped from X3 terms codes, configure VAT/SALES TAX rules to match X3's tax configuration, and create all extrafields corresponding to X3 custom fields. For multi-company X3 deployments, we configure separate Dolibarr third-party entities or a single multi-entity configuration depending on whether the customer wants consolidated or separate Dolibarr company records.

  4. Transformation, validation, and sandbox load

    We transform X3 flat-file exports to match Dolibarr CSV import format, applying field type conversions, date format normalisation, and multi-select value mapping for extrafields. A reconciliation count is produced at this stage comparing X3 source record counts against the transformed import set. We load into a staging Dolibarr instance (not production) first: the customer's team spot-checks 25-50 records per object against the X3 source data and signs off before production migration begins. Corrections to the transform logic are applied before the production load and re-validated.

  5. Production migration in dependency order

    We run the production migration in record dependency order: accounting chart of accounts first (all other records reference it), then third-party records (customers and suppliers), then products and stock levels, then fixed assets with opening amortization, then open purchase and sales orders, then open AP/AR invoices, then users and permissions. Intercompany journal postings are processed last with the reconciliation report applied. Manufacturing data (BOMs, work orders, production orders) is not loaded into standard Dolibarr; it is delivered as structured CSV files with a rebuild guide. Each phase emits a reconciliation report before the next begins.

  6. Cutover, delta validation, and workflow handoff

    We freeze X3 write access during the cutover window, run a final delta migration of any records modified during the migration window (typically orders or invoices processed during the cutover period), then validate Dolibarr as the system of record. We deliver the full migration record: a reconciliation summary with before/after counts per object, the X3 workflow and automation inventory document for the customer's admin to rebuild in Dolibarr or an alternative workflow engine, the BOM and work order CSV files with rebuild documentation, and the intercompany journal reconstruction report. We support a one-week hypercare window for reconciliation issues raised during the first business week in Dolibarr.

Platform deep dives

Context on both ends of the pair

Sage Business Cloud X3 logo

Sage Business Cloud X3

Source

Strengths

  • Multi-company, multi-currency, multi-legislation architecture handles global enterprise consolidation natively
  • Rich manufacturing module with BOMs, routings, work orders, and quality control for process and discrete manufacturing
  • Template-driven import/export system provides a structured mechanism for bulk data extraction without direct DB access
  • Flexible data model with open APIs supports extension and integration with third-party BI and reporting tools
  • Proven deployment base across 80+ countries with established implementation partner ecosystem

Weaknesses

  • Opaque pricing with no public list price; annual costs range from $25K to $250K+ before implementation fees that can reach $100K+
  • Legacy interface design with clunky Queries tool that becomes slow under large data volumes
  • Intercompany journal postings require manual duplicate entry per legal entity rather than auto-generation
  • No public API rate limit documentation for the core X3 REST API beyond the 180 req/min for Embedded Services
  • Implementation complexity and training burden often exceed initial estimates, leading to extended time-to-value
Dolibarr ERP logo

Dolibarr ERP

Destination

Strengths

  • Free core software with AGPL license and no per-user mandatory fee for self-hosted deployments.
  • Modular architecture lets teams activate only needed features, keeping the interface focused and the database lean.
  • Self-hosted option provides full data sovereignty and avoids recurring SaaS subscription costs.
  • Built-in CSV/Excel import and export wizard with saved profiles simplifies recurring data operations.
  • Low-code Module Builder allows functional extensions without writing PHP code.

Weaknesses

  • No native documented REST API for programmatic bulk operations — all migrations depend on the import/export wizard or direct database access.
  • Reporting and analytics are weak without paid add-ons, and built-in charts are limited compared to modern SaaS platforms.
  • UI design is described as dated by multiple reviewers, with infrequent visual updates to the default theme.
  • Community-only support for self-hosted deployments means no SLA or guaranteed response time for issues.
  • Security vulnerabilities (CVE-2024-5314, CVE-2024-5315) in version 9.0.1 with no immediate patch reported.

Complexity grading

How hard is this migration?

Standard ERP migration. All 8 core objects map 1:1 between Sage Business Cloud X3 and Dolibarr ERP.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Sage Business Cloud X3 and Dolibarr ERP.

  • Object compatibility

    A

    All 8 core objects map 1:1 between Sage Business Cloud X3 and Dolibarr ERP.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    C

    Sage Business Cloud X3: 180 requests per minute with max burst of 10 calls/second (Embedded Services); core X3 API limits not publicly documented.

  • Data volume sensitivity

    A

    Sage Business Cloud X3 exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Sage Business Cloud X3 to Dolibarr ERP migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Sage Business Cloud X3 to Dolibarr ERP data migrations

Answers to the questions buyers ask most during Sage Business Cloud X3 to Dolibarr ERP migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Sage Business Cloud X3 to Dolibarr ERP migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and six weeks for single-company X3 instances with fewer than 5,000 third-party records, a standard chart of accounts, and no active production orders. Multi-company X3 instances with intercompany journal reconstruction, large fixed asset registers, or open order backlogs move to eight to fourteen weeks because of the additional schema design, journal reconciliation, and data volume. Production order and BOM data does not load into standard Dolibarr; it is delivered as CSV with rebuild documentation and adds a parallel workstream rather than extending the core migration timeline.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Sage Business Cloud X3.
Land in Dolibarr ERP, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day