ERP migration

Migrate from iDempiere to Dolibarr ERP

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

iDempiere logo

iDempiere

Source

Dolibarr ERP

Destination

Dolibarr ERP logo

Compatibility

75%

9 of 12

objects map 1:1 between iDempiere and Dolibarr ERP.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from iDempiere to Dolibarr is a platform-level migration driven by complexity reduction. iDempiere's OSGi plugin architecture, multi-ledger accounting schemas, and Application Dictionary customization model serve enterprise ERP needs but create steep learning curves and upgrade friction that Dolibarr avoids by design. Dolibarr's PHP/MySQL stack, modular activation model, and intuitive UI target small-to-medium organizations that need ERP capability without an IT department dedicated to Java-based customizations. We migrate the core data set—third parties, products, orders, invoices, projects, payments, and attachments—but we do not migrate OSGi plugins, Application Dictionary form layouts, accounting schema dimensional structures, or custom document type definitions. These are documented in a written handoff inventory for the customer's admin to rebuild in Dolibarr's module framework post-migration.

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

iDempiere logo

iDempiere

What's pushing teams away

  • Lack of a commercial vendor means support relies on community forums, which can be slow or inconsistent for urgent production issues.
  • Steep learning curve for non-developers: the platform blurs the line between an ERP and a development framework, making functional teams dependent on technical resources.
  • Limited official documentation compared to commercial ERPs, making initial configuration and customization time-consuming.
  • Customizations accumulate over time, creating upgrade friction when new iDempiere versions remove deprecated APIs or change core behaviors.
  • Self-hosting requirement means internal IT bears full responsibility for uptime, backups, and scaling—cost and complexity that some teams did not anticipate.

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 iDempiere objects map to Dolibarr ERP

Each row shows how a iDempiere 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.

iDempiere

Business Partner (Customer, Vendor, Lead)

maps to

Dolibarr ERP

Third Party (Societe)

1:1
Fully supported

iDempiere Business Partners map to Dolibarr Third Parties. We map the BP category (Customer, Vendor, or both) to Dolibarr's Prospect/Customer/Supplier type flags. Address and contact tabs map to Dolibarr's address and contact records (llx_socpeople) with the parent Third Party as fk_soc. Credit limit from iDempiere maps to the credit note threshold in Dolibarr's Third Party settings. BP pricing schemas require translation to Dolibarr's price supplier and customer pricing rules.

iDempiere

Product (with BOM)

maps to

Dolibarr ERP

Product/Service (with BOM via module)

1:1
Fully supported

iDempiere Products map to Dolibarr Products (type 0 = item, type 1 = service). BOM structures in iDempiere map to Dolibarr's BOM module if installed, or are decomposed into multi-level product relationships documented for manual configuration. Cost methods (Standard, Average, FIFO) require translation: Dolibarr's accounting module provides stock valuation; for advanced costing the customer may need the Product Batch or Margins module. Product categories map directly to Dolibarr's category system.

iDempiere

Sales Order

maps to

Dolibarr ERP

Customer Proposal / Order

1:1
Fully supported

iDempiere C_Order records map to Dolibarr Propal (proposal/quotation) for quotations or Commande client (sales order) for confirmed orders. Document status (Draft, CO, VO, CL) maps to Dolibarr's statut (billed, closed, draft, open, signed). Order lines with product references resolve via the Product mapping. Payment terms map to Dolibarr cond_reglement. Note that iDempiere's multi-line sales regions for grouping do not have a Dolibarr equivalent and are documented for manual reorganization.

iDempiere

Purchase Order

maps to

Dolibarr ERP

Supplier Proposal / Supplier Order

1:1
Fully supported

iDempiere M_PurchaseOrder records map to Dolibarr Supplier Proposal or Supplier Order (Commande fournisseur) depending on the confirmed status. Vendor pricing agreements in iDempiere map to Dolibarr's supplier price lists (llx_product_fournisseur_price). Line-level taxes, discounts, and UoM conversions carry over with the same precision. iDempiere's blanket PO concept maps to Dolibarr's Supplier Proposal with a validity period.

iDempiere

Invoice (AR/AP)

maps to

Dolibarr ERP

Invoice (Customer/Supplier)

1:1
Fully supported

iDempiere C_Invoice (both AR and AP) maps to Dolibarr Facture. We separate iDempiere's C_BPartner_Location-driven invoice header from its line structure. Tax codes in iDempiere map to Dolibarr's tax rate system (taux and localtax). Payment allocations (C_PaymentAllocate) map to Dolibarr's payment/payment_supplier_detail lines. Historical paid invoices carry their settled status; open invoices are flagged as unpaid for the customer to apply payments post-migration.

iDempiere

Payment and Cash Management

maps to

Dolibarr ERP

Payment

1:1
Fully supported

iDempiere C_Payment records map to Dolibarr Payment (llx_paiement). Bank statement entries (C_BankStatementLine) map to Dolibarr's Accountancy module for reconciliation. Cash journal entries map to Dolibarr's Banque accounting entries. Payment terms (C_PaymentTerm) translate to Dolibarr cond_reglement records. The allocation between invoice and payment migrates so that open invoices show correct aging post-migration.

iDempiere

Project

maps to

Dolibarr ERP

Project

1:1
Fully supported

iDempiere C_Project records map to Dolibarr Project (llx_projet). Project phases and tasks map to Dolibarr's task structure under the project. Time entries in iDempiere map to Dolibarr's expense reports or timesheet lines if the Timesheet module is activated. Milestone tracking maps to Dolibarr's task progress fields. Resource assignments (C_ProjectLine) require translation to Dolibarr's contact/user project roles. Custom project types defined in the Application Dictionary do not migrate as types; we document them for Dolibarr module configuration.

iDempiere

Fixed Asset

maps to

Dolibarr ERP

Fixed Asset (via accounting module)

lossy
Fully supported

Dolibarr does not include a native fixed asset management module in its core package. Assets in iDempiere (A_Asset) require the customer to either activate a third-party asset module from Dolibarr's marketplace or use the accounting module to manage depreciation through journal entries. We export the full asset register (asset book, depreciation method, book value, service history) and deliver a written configuration plan for the selected Dolibarr asset approach. Depreciation schedules convert to recurring journal entry templates in Dolibarr's accounting module.

iDempiere

Accounting Schema and GL

maps to

Dolibarr ERP

Double-Entry Accounting

lossy
Mapping required

iDempiere's multi-schema dimensional GL (with Account, Legal Entity, Business Partner, Product, Location, and Project dimensions) maps to Dolibarr's standard double-entry accounting structure. We translate the chart of accounts, recreate account mappings for the most-used dimension combinations as sub-accounts, and preserve opening balances as GL journal entries in the target accounting schema. Multi-schema organizations require separate Dolibarr accounting configurations per entity. The dimensional GL structure beyond standard account hierarchies is simplified; complex dimensional reporting requires Dolibarr's optional reporting modules or a BI tool.

iDempiere

User and Role

maps to

Dolibarr ERP

User and Permission

1:1
Fully supported

iDempiere AD_User records map to Dolibarr llx_user with login, email, and status. Role-privilege records (AD_Role) map to Dolibarr's permission groups (permission_profil). iDempiere's Client > Organization hierarchy does not translate directly because Dolibarr uses a flat entity model; we assign users directly to Dolibarr entities (Establishments) and configure Dolibarr's permission profile for row-level access control. Users without a matching email in the destination require admin provisioning before migration proceeds.

iDempiere

Attachment and Archive

maps to

Dolibarr ERP

Document (file storage)

1:1
Fully supported

iDempiere attachments stored in the database (LOB) or filesystem are exported and mapped to Dolibarr's /documents/ directory structure. We detect the iDempiere storage provider at scoping and run the Migrate Storage Provider plugin if needed before extraction to normalize all attachments to filesystem. Attachments are organized by module in Dolibarr (third party documents under the Third Party record, product files under Product, project files under Project). The AD_Changelog history table is not migrated; it is archived as a SQL dump for audit purposes only.

iDempiere

Custom Window / Application Dictionary Table

maps to

Dolibarr ERP

Extra Fields or Custom Module

lossy
Fully supported

Custom windows registered in iDempiere's Application Dictionary are backed by custom database tables. We export the underlying table data and AD registration metadata as a written specification for the customer to re-implement in Dolibarr. The visual form layout cannot migrate automatically because Dolibarr's UI framework is entirely different. We deliver a field-level inventory of each custom table's columns, data types, and any foreign key dependencies so that the customer's developer can recreate the structure using Dolibarr's extra fields (for additions to standard tables) or a custom PHP module (for new entities).

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.

iDempiere logo

iDempiere gotchas

High

Plugin rebuild required after every major version upgrade

High

Multi-org hierarchy must be recreated before user and master data

Medium

Attachment storage provider split between database and filesystem

Medium

Deprecated AD_Sequence_No.CalendarYearMonth renamed in v13

Low

Windows server deployment carries documented server-side risks

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 has no native fixed asset management module

    iDempiere's fixed asset register (A_Asset) with depreciation schedules, asset books, and service history has no direct Dolibarr equivalent in the core package. We export the complete asset register including depreciation method, useful life, and current book value, then deliver a written configuration plan for either a third-party Dolibarr asset marketplace module or manual depreciation journal entry templates in Dolibarr's accounting module. Assets migrated without a depreciation plan create a gap in financial reporting that the customer's accountant must resolve before the first post-migration close.

  • iDempiere multi-org hierarchy collapses into Dolibarr's flat entity model

    iDempiere enforces a strict Client > Organization hierarchy where child Organizations cannot be created under a populated Client without breaking referential integrity. Dolibarr uses a flat entity model with no equivalent hierarchy. We recreate the org tree as separate Dolibarr entities (Establishments) with individual accounting configurations and assign iDempiere Business Partners to the corresponding Dolibarr entity during import. If iDempiere's inter-org transactions are in scope, we document the elimination entries required post-migration in Dolibarr's accounting module.

  • OSGi custom plugins do not migrate to Dolibarr PHP modules

    iDempiere custom plugins compiled as OSGi bundles contain business logic, callouts, model validators, and web service endpoints that have no equivalent in Dolibarr's PHP codebase. We scan the plugin source, document each plugin's behavior and the iDempiere APIs it calls, and deliver a written PHP re-implementation specification. Any custom iDempiere form logic, server-side validation rules, or scheduled processes embedded in plugins require a PHP developer to rebuild outside the migration scope. Plugin documentation is a pre-requisite deliverable before migration data extraction begins.

  • Custom Application Dictionary windows lack a migration path to Dolibarr forms

    Custom windows created in iDempiere's Application Dictionary are registered in AD_Table and AD_Tab with form layouts that are not portable. We export the underlying table schema and data, but the visual form definition—including field order, tab structure, and display logic—must be re-created in Dolibarr using extra fields on standard tables or a new custom PHP module. We deliver a field-level inventory of each custom table as part of the documentation handoff, but the Dolibarr form rebuild is outside the standard migration scope.

  • iDempiere UUID generation process can be slow on large tables

    iDempiere migration scripts include a UUID generator process (AD_ChangeLog_UU population) that can become a bottleneck on large tables. iDempiere's own wiki documents a faster approach using direct SQL UPDATE with index deletion before the fill and recreation after. We apply this optimization before migration data extraction to prevent the UUID population step from blocking the timeline on tables with millions of rows.

Migration approach

Six steps for a successful iDempiere to Dolibarr ERP data migration

  1. Source system audit and scoping

    We audit the iDempiere installation for version (v11/v12/v13), active plugins in the OSGi bundle registry, Application Dictionary custom windows, PostgreSQL or Oracle schema size, storage provider configuration (database LOB vs filesystem), multi-org tree structure, and custom field registrations. We also identify the chart of accounts, accounting schema dimensions, and any BOM or routing structures on Products. The output is a written migration scope document with record counts per object, a plugin inventory requiring documentation, and a custom table list for the Application Dictionary handoff.

  2. Destination environment preparation

    We install Dolibarr on the customer's target environment (LAMP/LEMP, self-hosted or managed VPS) and activate the relevant modules: Third Party, Product, Commercial (proposals/orders), Invoice, Supplier, Project, Accounting, and any third-party modules required for fixed assets. We configure the chart of accounts mapped from iDempiere, create the entity structure (replacing the iDempiere Client > Organization hierarchy), set up tax rates, payment terms, and document numbering sequences. We apply Dolibarr's /install/repair.php script after initial configuration to ensure database consistency before data import begins.

  3. Master data extraction and transformation

    We extract master data from iDempiere in dependency order: Organizations (mapped to Dolibarr Establishments), Business Partners (mapped to Third Parties with address and contact splits), Products (with BOM decomposition if Dolibarr BOM module is not activated), price lists (mapped to Dolibarr customer and supplier price rules), tax codes, and payment terms. Each extraction applies the transformation rules documented in the scoping phase. We resolve iDempiere's UUID columns using the optimized SQL approach to avoid slow UUID generation. Attachments are extracted from the configured storage provider (database or filesystem) and organized into Dolibarr's /documents/ folder hierarchy by module and record ID.

  4. Transactional data migration in dependency order

    We import transactional data after master data is validated: Orders and Purchase Orders (with status mapping), Invoices (AR and AP, with payment allocations), Payments, and Projects (with task structure and time entries). Each object import emits a row-count reconciliation report against the source system before the next phase begins. We flag any records with missing foreign key references (orphaned lines, unmatched products, unmatched third parties) and hold them in a reconciliation queue for the customer's admin to resolve. Historical paid invoices are imported as closed; open invoices are flagged for payment application post-migration.

  5. Fixed asset and accounting schema migration

    Fixed assets from iDempiere (A_Asset) are exported with full depreciation schedules and mapped to the customer's chosen Dolibarr approach: third-party asset module or accounting journal entry templates. We create opening balance journal entries in Dolibarr's accounting module for each asset and for any retained earnings accounts. If iDempiere uses multiple accounting schemas, we create separate accounting configurations in Dolibarr per entity and document the inter-entity elimination entries. GL journal history is selectively migrated (typically last 12-24 months of posted journals) to avoid overwhelming Dolibarr's accounting module with historical detail that is better preserved in a dedicated reporting archive.

  6. Cutover, validation, and documentation handoff

    We freeze writes on iDempiere during cutover, run a final delta migration for any records modified during the migration window, then validate Dolibarr's record counts, attachment presence, and accounting trial balance against the iDempiere source. We deliver the custom Application Dictionary inventory (table schemas, custom fields, and plugin behavior documentation) to the customer's admin for PHP re-implementation in Dolibarr. Workflow and process automation configurations from iDempiere are not migrated; we deliver a written inventory of active configurations requiring rebuild in Dolibarr's module framework. We support a one-week hypercare window for reconciliation issues.

Platform deep dives

Context on both ends of the pair

iDempiere logo

iDempiere

Source

Strengths

  • Free open-source license with no per-user or per-module pricing ever.
  • OSGi plugin architecture isolates custom code from the core, reducing upgrade risk.
  • Enterprise-quality multi-ledger accounting with dimensional GL structures.
  • Comprehensive ERP/CRM/SCM coverage from a single integrated platform.
  • Strong community with active development on GitHub and regular releases (currently v12/v13).

Weaknesses

  • No commercial vendor support; community help is the only first-party option.
  • Documentation is sparse and fragmented across wiki, Google Groups, and Stack Overflow.
  • Windows server deployment has known issues and is not recommended for production.
  • REST API capabilities are functional but not as mature as commercial ERP REST endpoints; Swagger support is a recent addition.
  • Community size limits the availability of pre-built integrations compared to larger open-source ecosystems like Odoo.
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 iDempiere and Dolibarr ERP.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across iDempiere and Dolibarr ERP.

  • Object compatibility

    A

    All 8 core objects map 1:1 between iDempiere 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

    B

    iDempiere: Not publicly documented; rate limits are infrastructure-dependent since the server is self-hosted.

  • Data volume sensitivity

    B

    iDempiere doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your iDempiere 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 iDempiere to Dolibarr ERP data migrations

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

Can't find your answer?

Walk through your iDempiere 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 five weeks for accounts under 10,000 Business Partners, 5,000 Products, and 3,000 Orders with no complex multi-org structures or custom Application Dictionary tables. Migrations with multi-org hierarchies requiring separate Dolibarr entity setup per organization, large fixed-asset registers, historical GL journals, or extensive custom iDempiere plugin logic move to six to ten weeks because of Dolibarr module configuration, accounting schema mapping, and the documentation scope for custom plugin handoff.

Adjacent paths

Related migrations to explore

Ready when you are

Move from iDempiere.
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