ERP migration

Migrate from AI Works to Dolibarr ERP

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

AI Works logo

AI Works

Source

Dolibarr ERP

Destination

Dolibarr ERP logo

Compatibility

67%

8 of 12

objects map 1:1 between AI Works and Dolibarr ERP.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from AI Works to Dolibarr is a replatforming to a lightweight, open-source ERP and CRM with a modular architecture that is free to self-host. AI Works stores financial data, users, invoices, and purchase orders as structured records; Dolibarr maps these to its own ThirdParty, Facture, Commandefournisseur, and Product entities through a CSV-based import wizard or REST API. We extract AI Works data via its export API, validate record counts against the source, and load into Dolibarr's target tables using the correct llx_ prefix and row identifiers. Dolibarr's approval workflow model differs from AI Works' embedded approval chains — we deliver a written inventory of every AI Works approval chain for the customer's admin to rebuild as Dolibarr workflows. Module activation gaps are the most common migration fault; we confirm that Dolibarr modules for Accounting, Invoicing, and Purchases are enabled before their respective record types import, or those records are silently skipped by Dolibarr's import engine.

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

AI Works logo

AI Works

What's pushing teams away

  • No public product documentation or schema reference — customers needing to migrate data cannot self-serve and must rely on direct vendor engagement.
  • Not a packaged ERP in the conventional sense — companies needing a system of record with published modules and roadmap typically move to NetSuite, Acumatica, or Microsoft Dynamics 365.
  • No published pricing, no integrations directory, and no public API surface available on the corporate website.
  • Small-vendor risk for finance-critical workflows; customers outgrowing the team typically migrate to better-supported platforms.
  • Limited third-party reviewer coverage — there is no G2/Capterra/Software Advice presence to validate fit or compare against alternatives.

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

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

AI Works

User

maps to

Dolibarr ERP

User + Contact

1:many
Fully supported

AI Works User records split into Dolibarr's separate User (authentication) and Contact/ThirdParty (business record) objects. We extract email, name, and role from AI Works and create the User record first so that OwnerId lookups are satisfied during Contact import. Any AI Works user who also appears as a business contact (e.g., a supplier contact) is created as both a User and a ThirdParty with a link via the User rights table llx_user_grant.

AI Works

Account

maps to

Dolibarr ERP

ThirdParty

1:1
Fully supported

AI Works Account records map to Dolibarr ThirdParty (llx_societe). The AI Works account name becomes thirdparty name, the domain becomes email and URL fields, and address data maps to Dolibarr's address fields (address, zip, town, country). Customer or supplier classification from AI Works sets Dolibarr's client and fournisseor flags. ThirdParty is imported before any related Contact or Invoice to satisfy foreign-key constraints in Dolibarr's import engine.

AI Works

Contact

maps to

Dolibarr ERP

Contact (llx_socpeople)

1:1
Fully supported

AI Works Contact records map to Dolibarr Contact (llx_socpeople). The foreign key fk_soc points to the parent ThirdParty llx_societe row ID, which we resolve after the ThirdParty import phase. Email, phone, job title, and address fields migrate directly. If AI Works stores multiple contacts per account with a primary flag, we set the primary_contact flag on the first imported contact per ThirdParty.

AI Works

Invoice

maps to

Dolibarr ERP

Facture (llx_facture)

1:1
Fully supported

AI Works Invoice records map to Dolibarr Facture. The AI Works invoice status (Draft, Sent, Paid, Cancelled) maps to Dolibarr fk_statut values (0, 1, 2, 3). Invoice line items map to llx_facturedet with fk_facture as the parent reference resolved at migration time. Payment terms, due dates, and tax rates migrate as Facture header fields and llx_facturedet tax configuration. We verify that the Facture module is activated in Dolibarr before this phase runs.

AI Works

Purchase Order

maps to

Dolibarr ERP

CommandeFournisseur (llx_commande_fournisseur)

1:1
Fully supported

AI Works Purchase Order records map to Dolibarr CommandeFournisseur (llx_commande_fournisseur). Supplier reference from AI Works resolves to the parent ThirdParty fk_soc. Order status maps to fk_statut, and line items import to llx_commande_fournisseurdet. The Purchases module must be active in Dolibarr before import; if it is not, Dolibarr silently skips the records. We validate module activation state before this phase begins.

AI Works

Product

maps to

Dolibarr ERP

Product (llx_product)

1:1
Fully supported

AI Works Product records map to Dolibarr Product (llx_product). SKU, description, unit, and price data migrate to llx_product fields. For products with variants, we evaluate whether AI Works variant data maps to Dolibarr's multi-price feature or requires separate Product records per variant. Product type (service vs stock) sets Dolibarr's fk_product_type field. Pricebook entries from AI Works map to llx_product_price.

AI Works

Custom Field

maps to

Dolibarr ERP

ExtraFields (llx_extrafields)

lossy
Fully supported

AI Works custom fields require pre-creation in Dolibarr's ExtraFields system before migration. We evaluate each AI Works custom field type against Dolibarr's supported types (varchar, int, text, date, datetime, select, checkbox) and create the corresponding llx_extrafields record before data import. Dolibarr's ExtraFields are tied to specific table names (e.g., llx_societe_extrafields for ThirdParty) and must be created in advance via the ExtraFields module or direct database insert.

AI Works

Approval Chain

maps to

Dolibarr ERP

Workflow configuration

1:1
Fully supported

AI Works approval chains attached to invoices and purchase orders have no direct Dolibarr equivalent as migrated records. We document every AI Works approval chain (trigger condition, approver role, escalation path) and deliver a written inventory with Dolibarr's Workflow module recommendations (llx_workflow) so the customer's admin can rebuild approval logic post-migration. The migration itself carries no approval configuration.

AI Works

Account Balance

maps to

Dolibarr ERP

Accounting module (llx_compta_facture)

lossy
Fully supported

AI Works account balances and ledger entries require mapping to Dolibarr's Accounting module (Bookkeeping module activation required). We evaluate whether AI Works stores accrual-basis or cash-basis entries and configure Dolibarr's accounting period and chart of accounts before balance migration. Dolibarr's accounting module is not active by default and must be explicitly enabled; if it is absent, we migrate only the invoice record without accounting double-entry.

AI Works

Historical Timestamps

maps to

Dolibarr ERP

Record date fields

1:1
Fully supported

AI Works creation date, modification date, and any audit timestamps on every record type migrate to Dolibarr's date fields (date_creation, date_modification, tms). These fields are set during the INSERT statement and preserved to maintain the original audit trail in the migrated records. Timestamps on attachments migrate via Dolibarr's ECM (Electronic Content Management) table llx_ecm_files.

AI Works

Attachment

maps to

Dolibarr ERP

Document (llx_ecm_files + file system)

1:1
Fully supported

AI Works file attachments (invoices PDFs, order documents, contact photos) migrate to Dolibarr's document storage directory and the llx_ecm_files table. We preserve the original filename and Dolibarr's directory structure (by entity and year) so that documents appear in the correct context within Dolibarr's document browser. Large binary files are chunked and transferred via the source platform's file export API or FTP.

AI Works

Multi-Currency Entry

maps to

Dolibarr ERP

Multi-currency handling

lossy
Fully supported

AI Works multi-currency invoice lines require evaluation against Dolibarr's multi-currency capability. Dolibarr's multi-currency module is a third-party or paid feature; if the source uses multiple currencies, we verify the module is active and migrate currency code, exchange rate, and base-currency amount. If Dolibarr lacks multi-currency support, we convert amounts to the base currency at the invoice date's exchange rate and document the conversion rate used.

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.

AI Works logo

AI Works gotchas

High

Vendor is not positioned as a conventional packaged ERP

High

No publicly documented API or schema

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 modules must be activated before their data can import

    Dolibarr ships with core modules disabled by default. If the Facture (invoicing), Purchases, Accounting, or Projects modules are not activated before migration, Dolibarr's import wizard silently skips those record types. We audit Dolibarr's active module list before each import phase and activate missing modules via the Dolibarr admin interface or direct database update (INSERT INTO llx_const WHERE name LIKE 'MAIN_MODULE%'). Skipping this check results in zero invoices or zero purchase orders appearing after a seemingly successful import run.

  • Skipping Dolibarr major versions during upgrade causes database migration errors

    Dolibarr's database schema evolves between major versions (e.g., V14 to V22), and jumping over versions without running the incremental migration scripts triggers DB_ERROR_1071 and other key-length or column-not-found errors. We validate the target Dolibarr version before migration and document any required incremental upgrade path. If the destination instance is more than two major versions behind, we recommend upgrading to a supported version first, as schema differences can cause import profile mismatches between AI Works' export structure and Dolibarr's current table definitions.

  • Approval chains and AI Works workflows do not migrate to Dolibarr

    AI Works approval chains and embedded workflow automation have no structural equivalent in Dolibarr's Workflow module. Dolibarr's workflow system uses different trigger models (status-change vs. property-change) and does not support AI Works' multi-step conditional approval logic as a portable record. We deliver a written inventory of every AI Works approval chain with its trigger, approver chain, and escalation rules for the customer to rebuild in Dolibarr's Workflow module post-migration. Any AI-driven automation in AI Works (auto-routing, AI-generated follow-up) requires a separate replacement scoping and rebuild engagement.

  • Custom fields require pre-creation in Dolibarr's ExtraFields system

    AI Works custom fields do not auto-create in Dolibarr. Dolibarr's ExtraFields system requires each custom field to be created as a row in llx_extrafields with the target table name, field name, and type before the import phase. We pre-create all mapped custom fields during the schema design phase via Dolibarr's ExtraFields developer API or direct database INSERT. Importing into a non-existent ExtraFields column causes a SQL error that halts the batch. If AI Works uses custom field types (e.g., formula fields, rollup summary) that have no Dolibarr equivalent, we flag them as requiring post-migration manual entry or custom module development.

  • Dolibarr session configuration breaks login after server migration

    When migrating a self-hosted Dolibarr instance to a new server, the conf.php file must contain the correct dolibarr_main_instance_unique_id, document_root, data_root, and database connection parameters. Incorrect session.save_path or mismatched instance ID causes a 'Dolibarr config file content seems to be not correctly defined' error that blocks all access to Dolibarr. We validate the conf.php configuration against the target server's environment during migration setup and run /install/repair.php to fix orphaned paths and clean up the llx_const table after any instance move.

Migration approach

Six steps for a successful AI Works to Dolibarr ERP data migration

  1. Source audit and extraction plan

    We audit the AI Works instance across record types (Users, Accounts, Contacts, Invoices, Purchase Orders, Products), custom field definitions, attachment storage locations, and any active approval chains. We export data using AI Works' REST API or CSV export endpoint, chunking large record sets into batches of 1,000-5,000 rows to avoid timeout errors. We validate record counts and a random sample of 25-50 records per object against the source before designing the mapping. This step produces a written extraction report and a pre-migration data cleanliness scorecard.

  2. Dolibarr environment validation and module activation

    We audit the target Dolibarr instance: version number, active modules, database character set (utf8_unicode_ci required), PHP version compatibility, and document storage path configuration. We activate the required modules (ThirdParty, Contact, Facture, CommandeFournisseur, Product, Accounting if applicable) via Dolibarr admin or direct database INSERT into llx_const. We run Dolibarr's /install/repair.php to clean any orphaned menus and ECM entries before migration begins. If the instance is more than two major versions behind, we document the upgrade path required before migration can proceed.

  3. Schema mapping and ExtraFields creation

    We design the field-level mapping from AI Works' schema to Dolibarr's llx_ prefixed tables. Custom fields from AI Works are created as Dolibarr ExtraFields rows in the appropriate llx_<table>_extrafields table before any data import. We map AI Works' account type (customer/supplier) to Dolibarr's client/fournisseur flags, and invoice status values to Dolibarr's fk_statut enumeration. The mapping document is reviewed and signed off by the customer before any database writes begin. Any AI Works field without a Dolibarr equivalent is flagged as requiring manual post-migration entry or a custom module.

  4. Dependency-ordered migration in phases

    We execute the migration in record-dependency order: Users first (so OwnerId lookups are valid), then ThirdParty accounts, then Contact records with fk_soc resolved to the new ThirdParty row IDs, then Products, then Facture invoices with fk_soc and fk_user_author resolved, then Purchase Orders, then document attachments in the ECM filesystem. Each phase produces a reconciliation report (record count in, record count confirmed in Dolibarr, error log). We use Dolibarr's native CSV import wizard for smaller volumes and direct SQL INSERT with batch commits for volumes over 50,000 rows.

  5. Validation and reconciliation

    We validate the migrated data against the AI Works extraction report: record counts per object, spot-check of 25-50 records per type for field-level accuracy, and verification that parent-child relationships (Contact to ThirdParty, Invoice to ThirdParty, Line Items to Invoice) are correctly resolved. Any missing or mis-mapped records are corrected in a delta pass. We verify that Dolibarr's date fields preserve the original AI Works creation and modification timestamps for audit compliance. The customer reviews the validated data in a sandbox or staging environment before production cutover.

  6. Cutover and approval chain handoff

    We freeze writes to the AI Works instance during the cutover window, run a final delta migration of any records modified during the migration run, and switch the system of record to Dolibarr. We deliver the written approval chain inventory document to the customer's admin team for rebuild in Dolibarr's Workflow module. We provide a one-week hypercare window for reconciliation issues raised by the customer's team. We do not rebuild AI Works approval chains or automations as part of the migration scope; that work is documented for the customer's admin to complete or for a separate Dolibarr workflow rebuild engagement.

Platform deep dives

Context on both ends of the pair

AI Works logo

AI Works

Source

Strengths

  • Flexible custom-build engagement model suits organizations needing bespoke AI overlays.
  • Direct, small-team vendor relationship.
  • AI talent resourcing can complement internal teams.
  • No prescriptive product lock-in for those starting from a custom data model.

Weaknesses

  • No public ERP product documentation, schema, or pricing.
  • Absent from major reviewer aggregators (G2, Capterra, Software Advice).
  • Migration scoping requires the vendor's direct cooperation; self-service is not viable.
  • Roadmap and product versioning are not publicly visible.
  • Small-vendor delivery risk for finance-critical systems.
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 AI Works and Dolibarr ERP.

B

Overall complexity

Standard migration

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

  • Object compatibility

    A

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

    AI Works: Not publicly documented — typical SaaS limits assumed and confirmed during scoping.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your AI Works 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 with under 15,000 invoices, 5,000 purchase orders, and no complex custom fields. Migrations with large historical data volumes (over 100,000 line items), complex ExtraFields definitions, multi-entity structures requiring ThirdParty split, or Dolibarr version upgrades (e.g., from V14 to V22) extend to eight to twelve weeks because of module activation validation, schema compatibility checks, and the ExtraFields pre-creation phase.

Adjacent paths

Related migrations to explore

Ready when you are

Move from AI Works.
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