ERP migration

Migrate from Agility ERP to Dolibarr ERP

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

Agility ERP logo

Agility ERP

Source

Dolibarr ERP

Destination

Dolibarr ERP logo

Compatibility

92%

11 of 12

objects map 1:1 between Agility ERP and Dolibarr ERP.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Agility ERP to Dolibarr is a step down from a mid-market commercial ERP to a lightweight open-source platform. Agility ERP provides a unified accounting, inventory, and order management system with per-user licensing starting at $31.10, while Dolibarr is GPL-licensed with no per-user fees and modular activation. We handle the structural differences: Dolibarr uses a modular architecture where only activated modules expose data, Agility ERP's proprietary order status labels require explicit mapping to Dolibarr's workflow states, and GL account codes that exceed Dolibarr's character limit must be renumbered before import. Fixed asset records are not accessible via Agility ERP's standard export layer; we coordinate a direct database extraction with Agility ERP support before the migration window. Workflows, automations, and custom forms do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Dolibarr's module system.

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

Agility ERP logo

Agility ERP

What's pushing teams away

  • Does not integrate all business processes automatically, forcing teams to track certain workflows manually outside the system and creating data silos.
  • The interface feels outdated compared to newer cloud ERPs, with limited mobile functionality and a UI that has not kept pace with modern design expectations.
  • Difficulties managing user permissions and access rights, where configuring granular role-based access requires significant admin time and often outsized IT involvement.

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

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

Agility ERP

Customer

maps to

Dolibarr ERP

Third Party (Customer type)

1:1
Fully supported

Agility ERP Customer records map to Dolibarr Third Party contacts where the IsCustomer flag is enabled. Address, contact name, email, and payment terms transfer as standard Dolibarr fields. We validate email format during import and flag duplicate third-party names across the full import set to prevent double-creation. Customer-specific custom fields stored in Agility ERP's extension table require individual mapping to Dolibarr's ExtraFields system, which we configure before migration.

Agility ERP

Vendor

maps to

Dolibarr ERP

Third Party (Supplier type)

1:1
Fully supported

Agility ERP Vendor records map to Dolibarr Third Party contacts with the IsSupplier flag enabled. Remit-to addresses, tax IDs, and payment terms transfer 1:1. We check for duplicate vendor names within the import set to prevent Dolibarr from creating duplicate third-party records. Vendor-specific custom fields follow the same ExtraFields mapping process as customer fields.

Agility ERP

Open Sales Order

maps to

Dolibarr ERP

Customer Order

1:1
Fully supported

Agility ERP open sales orders map to Dolibarr Customer Order records with status preserved. The Agility ERP status vocabulary (Open, Released, Backordered, and any custom statuses) requires an explicit lookup table we build during the discovery phase; each Agility ERP status value maps to a corresponding Dolibarr order status or custom workflow state. Line items transfer with quantity ordered, quantity delivered, quantity remaining, unit price, and product reference. The customer order date and order number are retained for audit trail continuity.

Agility ERP

Open Purchase Order

maps to

Dolibarr ERP

Supplier Order

1:1
Fully supported

Agility ERP open purchase orders map to Dolibarr Supplier Order records. The same status vocabulary mapping logic applies as for sales orders. Line-level purchase order data transfers with supplier reference fields retained. If Agility ERP purchase orders reference a vendor record, we resolve the vendor lookup to the corresponding Dolibarr Third Party before inserting the supplier order.

Agility ERP

Inventory Item

maps to

Dolibarr ERP

Product

1:1
Fully supported

Agility ERP inventory items map to Dolibarr Product records when the Stock module is activated. Cost layer data (average cost, FIFO cost, or lot cost) from Agility ERP transfers to Dolibarr's PMP (Weighted Average Price) field. We flag any items where the destination costing method differs from the source method so the customer can decide whether to adjust the cost layer during import or accept Dolibarr's default. Stock on hand and reorder point values transfer as Product Stock records linked to the appropriate warehouse.

Agility ERP

Chart of Accounts

maps to

Dolibarr ERP

Account (Accounting module)

1:1
Mapping required

Agility ERP account codes, descriptions, and classification (asset, liability, expense, revenue) map to Dolibarr accounting accounts. We audit every account code against Dolibarr's character length limits during scoping; any code exceeding the threshold is renumbered and recorded in a mapping table delivered alongside the chart of accounts. Account codes that change require a historical journal remap before historical entries are loaded, which we flag during discovery.

Agility ERP

Journal Entry

maps to

Dolibarr ERP

Accounting Entry

1:1
Fully supported

Historical Agility ERP journal entries transfer as Dolibarr accounting entries. We flag entries that contain embedded account IDs from the legacy chart of accounts and remap them to the new Dolibarr GL structure before loading. Only the current and prior fiscal year are migrated by default; additional years are migrated only if the customer specifies a longer retention scope during discovery, as historical volume directly affects migration timeline and price.

Agility ERP

Fixed Asset

maps to

Dolibarr ERP

Fixed Asset (with Asset module)

1:1
Fully supported

Fixed asset records including depreciation schedules are not accessible via Agility ERP's standard export or API layer. We flag any customer with a non-zero fixed asset balance during scoping and coordinate a direct database extract from Agility ERP support before the migration window opens. This custom extraction adds lead time and may require a separate professional services engagement with Agility ERP. Once extracted, we map asset records, accumulated depreciation, and current book value to Dolibarr's Asset module, which must be activated before import.

Agility ERP

Custom Field

maps to

Dolibarr ERP

ExtraFields

lossy
Fully supported

Agility ERP stores custom fields in a non-standard extension table that requires field-by-field review during scoping. Each custom field is mapped to a corresponding Dolibarr ExtraFields entry on the appropriate object (ThirdParty, Product, Order, etc.). Field type translation is required: Agility ERP field types map to Dolibarr types (varchar to varchar, integer to integer, date to date). Custom field values transfer as part of the parent object import, not as a separate migration phase.

Agility ERP

Shipping Record

maps to

Dolibarr ERP

Shipment

1:1
Fully supported

Agility ERP shipment and delivery records map to Dolibarr Shipment records when the Shipping module is activated. Shipment date, carrier, tracking number, and linked sales order reference transfer directly. We resolve the parent customer order reference to the newly created Dolibarr Customer Order during import so the shipment is linked to the correct order.

Agility ERP

Project

maps to

Dolibarr ERP

Project

1:1
Fully supported

Agility ERP project records map to Dolibarr Project records when the Project module is activated. Project name, description, status, start and end dates, and assigned contact references transfer. If the Dolibarr Project module is not activated during scoping, we flag this as a module activation dependency before migration begins.

Agility ERP

User

maps to

Dolibarr ERP

User

1:1
Fully supported

Agility ERP user accounts map to Dolibarr User records for admin and staff users (not third-party contacts). We match by email address and map the active/inactive status. User permissions do not migrate directly because Dolibarr's permission model is tied to module activation and Dolibarr's own permission groups; we deliver a permission matrix recommendation based on the user's Agility ERP role so the customer's admin can configure access in Dolibarr.

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.

Agility ERP logo

Agility ERP gotchas

High

Fixed asset data requires custom extraction

Medium

GL code character limits vary by destination

Medium

Open order status vocabulary differs from industry standards

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

  • Fixed asset data requires a custom Agility ERP database extraction

    Agility ERP does not expose fixed asset records through its standard reporting layer or API. Customers with a non-zero fixed asset balance must request a direct database extract from Agility ERP support, which adds lead time and may require a separate professional services engagement. We flag any customer with active depreciation schedules during scoping and coordinate the custom extraction before the migration window. Without this step, the fixed asset history is not available in Dolibarr at cutover.

  • Order status vocabulary requires an explicit mapping table

    Agility ERP uses a proprietary set of order status labels (Open, Released, Backordered, and any customer-specific statuses) that do not map directly to Dolibarr's order status vocabulary. We build a customer-specific status lookup table during the discovery phase before any data moves. Without this mapping, orders land in the wrong workflow stage, and the customer's operations team may process shipments and invoices against an incorrect order state after cutover.

  • GL account codes exceeding Dolibarr length limits require renumbering

    Agility ERP allows longer account code strings than Dolibarr imposes on its accounting account field. We audit every account code against Dolibarr's length threshold during scoping and renumber any that exceed the limit. Codes that change require a mapping table that we deliver alongside the migrated chart of accounts, and any historical journal entries that reference old codes must be remapped before import.

  • Dolibarr module activation decisions must be made before migration begins

    Dolibarr's modular architecture means that only activated modules expose their data structures and APIs. If the customer does not activate the Fixed Asset module, the Asset import path is not available. If the Project module is not active, project records cannot be created. We confirm the complete module activation list with the customer during discovery so that the destination schema is complete before any data import starts.

  • Custom fields require field-by-field translation and ExtraFields configuration

    Agility ERP stores custom fields in a non-standard extension table that is not accessible via standard export. We perform a field-by-field review of every custom field during scoping, map each to a corresponding Dolibarr ExtraFields entry on the correct object, and configure the ExtraFields schema in Dolibarr before the parent object import begins. Custom field data transfers as part of the parent record, not as a separate phase.

Migration approach

Six steps for a successful Agility ERP to Dolibarr ERP data migration

  1. Discovery and module scoping

    We audit the Agility ERP instance across all modules in use: customer count, vendor count, open sales order volume, open purchase order volume, inventory item count, chart of accounts size, and any historical journal entry scope. We confirm which Dolibarr modules the customer will activate (ThirdParty, Commercial, Stock, Accounting, Project, Asset, etc.) and build the complete data inventory. This output is a written migration scope including record counts per object, any fixed asset extraction requirement, and the Dolibarr module activation checklist.

  2. Status vocabulary and schema mapping

    We build the Agility ERP to Dolibarr field mapping for every object, including the order status lookup table, GL account code renumbering where needed, and custom field to ExtraFields translation. We also configure Dolibarr's ExtraFields schema based on the custom field inventory. All mapping decisions are documented and reviewed with the customer before any extraction begins.

  3. Fixed asset database extraction coordination

    For customers with a non-zero fixed asset balance, we submit the extraction request to Agility ERP support and track the lead time. Once the database extract is received, we validate its structure against the migration mapping and flag any data quality issues before the asset migration phase.

  4. Sandbox migration and reconciliation

    We run a full migration into a Dolibarr staging instance (or a DoliCloud test environment) using production-like data volume. The customer's operations lead reconciles record counts, spot-checks 25-50 random records against the Agility ERP source, and confirms that order statuses, GL codes, and custom field values are correct before production migration begins.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Third Parties (customers and vendors first, to resolve the dedupe key), Products (with stock data), Chart of Accounts, Open Purchase Orders, Open Sales Orders, Inventory transactions, Journal Entries (remapped to the new GL codes), Fixed Assets (from the custom extraction), and Projects. Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and admin handoff

    We freeze Agility ERP writes during cutover, run a final delta migration of any records modified during the migration window, then enable Dolibarr as the system of record. We deliver the automation and workflow inventory document to the customer's admin team. We support a three-day hypercare window where we resolve any reconciliation issues raised by the customer's team.

Platform deep dives

Context on both ends of the pair

Agility ERP logo

Agility ERP

Source

Strengths

  • Full accounting, inventory, and order management in a single integrated system.
  • Fast implementation timeline relative to enterprise ERP alternatives.
  • Low total cost of ownership including licensing, deployment, and ongoing maintenance.

Weaknesses

  • Limited native integrations with third-party tools and external systems.
  • Outdated user interface with minimal mobile app capabilities.
  • User permission management requires significant administrative effort to configure correctly.
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. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

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

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • 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

    Agility ERP: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

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

Book a free 30 minute consultation

Straightforward migrations under 10,000 customers, 5,000 vendors, and a clean chart of accounts complete in three to five weeks. Migrations requiring fixed asset database extraction, GL code renumbering across a large chart of accounts, custom field reconstruction, or historical journal remapping extend to seven to ten weeks. The fixed asset extraction lead time from Agility ERP support is the most common variable that extends the timeline beyond the initial estimate.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Agility ERP.
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