ERP migration
Field-level mapping, validation, and rollback between Maximum Software and Dolibarr ERP. We move data and schema; workflows are rebuilt natively in Dolibarr ERP.
Maximum Software
Source
Dolibarr ERP
Destination
Compatibility
11 of 14
objects map 1:1 between Maximum Software and Dolibarr ERP.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Maximum Software to Dolibarr is an ERP consolidation from a proprietary platform to a free, open-source ERP/CRM built on PHP and MySQL. Dolibarr uses a modular architecture — you activate only the modules you need (Third Parties, Products, Invoices, Projects, HR) — which means migration scope depends directly on which Maximum Software modules are in active use. We extract the chart of accounts, customer and vendor records, item master, open invoices, and engagement history from Maximum Software, map them to Dolibarr's corresponding modules, and resolve product-to-stock dependencies before import because Dolibarr requires the Stock module to be enabled before products can carry inventory quantities. We do not migrate automations, custom workflows, or scheduled tasks as code; we deliver a written inventory of these for the customer's admin to rebuild in Dolibarr's built-in automation tools. Dolibarr's core software is free under the AGPL license, with hosting costs of €9–14 per user per month on DoliCloud or $5–20 per month for self-hosted instances.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Maximum Software 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.
Maximum Software
Customer
Dolibarr ERP
Third Party (Module ThirdParty)
1:1Maximum Software Customer records map to Dolibarr ThirdParty entities with the Third Party type set to Customer. The source customer name maps to the required name field, and address, phone, and email map to the corresponding contact fields. Dolibarr's dedupe check uses email as the unique key; we resolve any Maximum Software customers sharing an email address by appending a disambiguating suffix before import. The source's customer-specific fields (payment terms, credit limit) map to Dolibarr's Payment Terms and Maximum Recommended Payment Delay settings on the ThirdParty record.
Maximum Software
Vendor
Dolibarr ERP
Third Party (Module ThirdParty)
1:1Maximum Software Vendor records map to Dolibarr ThirdParty entities with the type set to Supplier. The vendor name, address, and contact information migrate directly. We flag any Maximum Software vendor that shares an email with an existing customer record and surface the conflict for the customer's admin to resolve before import, because Dolibarr does not allow a single ThirdParty to be both Customer and Supplier simultaneously without module configuration changes.
Maximum Software
Chart of Accounts
Dolibarr ERP
Accounting Configuration (Module Accountancy)
lossyMaximum Software chart-of-accounts records map to Dolibarr's accounting module configuration. Each account code maps to a Bank Account or Account record in Dolibarr depending on the account type (asset, liability, equity, income, expense). We flag accounts with non-numeric characters or lengths exceeding Dolibarr's account code format (typically 6-8 digits) for manual review and code normalization. Dolibarr's accounting module must be enabled and configured before invoices are imported, because invoice lines reference account codes that must exist at import time.
Maximum Software
Item (Product/Service)
Dolibarr ERP
Product/Service (Module Products)
1:1Maximum Software Items map to Dolibarr Product records. The source item type (goods vs. service) maps to Dolibarr's ProductType field. The source SKU maps to ref, and description maps to label. If the Maximum Software item carries stock quantities, we require the Dolibarr Stock module to be activated before migration because Dolibarr stores stock as a separate module-level concern and items without the Stock module enabled cannot carry real-time inventory quantities. Cost price from Maximum Software maps to the PMp field (cost price) in Dolibarr.
Maximum Software
Item (Inventory)
Dolibarr ERP
Product + Stock (Module Products + Module Stock)
1:1Items with active inventory tracking in Maximum Software map to Dolibarr Product records with the Stock module enabled and warehouse-level quantity records created during import. We create a default warehouse (Warehouse ID 0) if one does not exist in the Dolibarr destination. The source's current stock quantity, reorder point, and unit of measure map to the corresponding Dolibarr stock record fields. Any items with negative stock in Maximum Software are flagged as exceptions before import because Dolibarr's stock module does not natively support negative inventory without explicit configuration.
Maximum Software
Open Invoice (AR)
Dolibarr ERP
Invoice (Module Facture)
1:1Maximum Software open invoices (accounts receivable) map to Dolibarr Customer Invoice records with status set to Draft or Unvalidated. The invoice number, date, due date, line items, and total amounts migrate. Payments already applied to invoices in Maximum Software are not recreated as separate payment records in Dolibarr; instead, the paid amount is noted in an invoice-level custom field and the invoice status is set to Paid if fully settled, or Partial if partially paid. Invoice PDFs from Maximum Software are stored as ContentDocument linked to the corresponding Dolibarr invoice.
Maximum Software
Open Bill (AP)
Dolibarr ERP
Supplier Invoice (Module Facture)
1:1Maximum Software vendor bills (accounts payable) map to Dolibarr Supplier Invoice records. The vendor is resolved via the ThirdParty lookup (Vendor-to-Supplier mapping). Line items map by matching the Maximum Software item reference to the imported Product record. Paid status is set consistent with the Maximum Software payment state. Historical paid invoices with no open balance are imported with status Validated and Closed for audit trail completeness.
Maximum Software
User
Dolibarr ERP
User (Module Users)
1:1Maximum Software User records map to Dolibarr User accounts. The source user's email becomes the login, and the active/inactive status maps to the Dolibarr account status. We resolve the Maximum Software user role (admin vs. standard) to Dolibarr permissions flags (Read/Write/Delete/Print/Export per module). Any Maximum Software user without a valid email is assigned a generated placeholder email for migration compatibility and flagged for the admin to update post-migration.
Maximum Software
Engagement: Calls
Dolibarr ERP
Intervention / Task (Module Interventions or Module Agenda)
1:1Maximum Software call records map to Dolibarr Intervention records (if the Interventions module is enabled) or Agenda Event records (if only Agenda is enabled). The call direction, duration, date, and disposition migrate to the corresponding fields in the destination. The linked contact or vendor is resolved via the ThirdParty lookup by email or name match. Calls without a resolvable ThirdParty link are imported as standalone interventions and flagged for the admin to reconnect manually.
Maximum Software
Engagement: Meetings
Dolibarr ERP
Event (Module Agenda)
1:1Maximum Software meeting records map to Dolibarr Agenda Event records. The meeting title, scheduled date and time, duration, location, and attendee list migrate to the corresponding Event fields. Attendees are resolved as EventRelation records pointing to the matching ThirdParty (Customer or Supplier) or User in Dolibarr. Any attendee not resolvable in Dolibarr is stored as plain text in the Event's note field and flagged for review.
Maximum Software
Engagement: Tasks
Dolibarr ERP
Task / To-Do (Module Agenda)
1:1Maximum Software task records map to Dolibarr Agenda Task records with the task subject, due date, priority, status, and assigned user migrated. The assigned user is resolved via email match against the Dolibarr User table. Completed date and completion status migrate as the task's done date. Tasks without an assignable user in Dolibarr are imported as unassigned tasks and flagged in the reconciliation report.
Maximum Software
Project / Job
Dolibarr ERP
Project (Module Projects)
1:1Maximum Software project or job records map to Dolibarr Project records. The project name, description, start date, end date, status, and budget migrate directly. If the Maximum Software project has associated tasks or time entries, these map to Dolibarr ProjectTask and ProjectTaskTime records respectively. The Projects module must be enabled in Dolibarr before this object import runs; we verify module activation during the discovery phase and surface any missing module dependencies as a pre-migration action item.
Maximum Software
Custom Fields
Dolibarr ERP
ExtraFields (Module CustomFields)
lossyMaximum Software custom field values map to Dolibarr ExtraFields attached to the corresponding record. Dolibarr's CustomFields module requires the field to be pre-created in the destination before data can be stored; we create the ExtraField definition (with type matching: string, int, float, select, checkbox, date) before importing records that carry the custom field. Constrained custom fields (fields pointing to other records) use Dolibarr's fk_moduleid lookup semantics, which requires the referenced record's rowid to be available at migration time. We resolve this by pre-importing parent records and using the assigned Dolibarr rowid as the foreign key value.
Maximum Software
Workflow / Automation
Dolibarr ERP
No direct equivalent — handoff document
lossyMaximum Software workflows and automations do not migrate as executable code to Dolibarr because the automation models differ. We deliver a written inventory of every active Maximum Software workflow, trigger condition, action, and automation rule. The inventory includes a recommended Dolibarr equivalent using Dolibarr's Triggers (automatic actions per module) or external tools. The customer's admin rebuilds automations in Dolibarr post-migration as part of the onboarding configuration scope. Workflows and automations are outside the data migration scope by design.
| Maximum Software | Dolibarr ERP | Compatibility | |
|---|---|---|---|
| Customer | Third Party (Module ThirdParty)1:1 | Fully supported | |
| Vendor | Third Party (Module ThirdParty)1:1 | Fully supported | |
| Chart of Accounts | Accounting Configuration (Module Accountancy)lossy | Mapping required | |
| Item (Product/Service) | Product/Service (Module Products)1:1 | Fully supported | |
| Item (Inventory) | Product + Stock (Module Products + Module Stock)1:1 | Fully supported | |
| Open Invoice (AR) | Invoice (Module Facture)1:1 | Fully supported | |
| Open Bill (AP) | Supplier Invoice (Module Facture)1:1 | Fully supported | |
| User | User (Module Users)1:1 | Fully supported | |
| Engagement: Calls | Intervention / Task (Module Interventions or Module Agenda)1:1 | Fully supported | |
| Engagement: Meetings | Event (Module Agenda)1:1 | Fully supported | |
| Engagement: Tasks | Task / To-Do (Module Agenda)1:1 | Fully supported | |
| Project / Job | Project (Module Projects)1:1 | Fully supported | |
| Custom Fields | ExtraFields (Module CustomFields)lossy | Fully supported | |
| Workflow / Automation | No direct equivalent — handoff documentlossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Maximum Software gotchas
Vendor identification ambiguity
Lot and serial traceability data must transfer with full lineage
Bilingual French-English data fields require careful handling
EDI-generated transactions need linkage preservation
Dolibarr ERP gotchas
Foreign key constraint errors on cross-distribution database restore
SQL injection vulnerabilities in version 9.0.1
Custom fields stored as JSON in extraoptions require field-by-field deserialization
Decimal precision and rounding configuration affects price fields
No native iOS/Android app forces reliance on browser
Pair-specific challenges
Migration approach
Discovery and module inventory
We audit Maximum Software across all active modules — customers, vendors, chart of accounts, items with stock tracking, open invoices, open bills, users, engagements (calls, meetings, tasks), and projects. We pair this with a Dolibarr installation review to identify which modules are currently enabled and which are missing. The discovery output is a written migration scope specifying which Dolibarr modules must be activated (Stock, Projects, Interventions, Agenda, Accounting), which account codes need to be pre-created, and which Maximum Software custom fields require Dolibarr ExtraField definitions.
Schema design and ExtraField pre-creation
We design the destination Dolibarr schema by creating all required ExtraField definitions before any record data is imported. This includes custom fields for customers, vendors, products, invoices, and projects. For constrained custom fields, we identify the parent record type and establish the ordering in which parent records must be imported first. The accounting module's chart of accounts is configured with account codes matching (or normalized from) the Maximum Software chart of accounts. All schema changes are validated in a pre-production Dolibarr environment before the migration phase begins.
Module activation and configuration validation
We activate all required Dolibarr modules — ThirdParty, Products, Stock, Facture, Agenda, Projects, Interventions, CustomFields, and Accountancy — in a staging Dolibarr instance. We verify that the accounting module is correctly configured with the imported chart of accounts, that the Stock module is linked to the Products module, and that the ExtraField definitions render correctly in the Dolibarr UI. The customer's admin reviews the configured Dolibarr instance and confirms module activation and field placement before production migration begins.
Owner and ThirdParty reconciliation
We extract all distinct customer and vendor email addresses from Maximum Software and match them against the Dolibarr ThirdParty table. We also extract all Maximum Software user emails and match them against the Dolibarr User table. Any Maximum Software contact without a matching Dolibarr ThirdParty record is flagged for creation. Any Maximum Software user without a matching Dolibarr User is placed in a reconciliation queue for the customer's admin to provision the account. Owner assignment on engagements is resolved by email match against the User table at this stage.
Production migration in dependency order
We run production migration in record-dependency order: Users (validated from reconciliation queue), ThirdParty records (Customers then Suppliers), Products (with Stock module pre-validated), Chart of Accounts (Accountancy configuration), Customer Invoices (with account code validation), Supplier Invoices, Projects, Engagements (calls via Interventions, meetings via Agenda, tasks via Agenda), and Custom Field values (via ExtraField mapping after parent records are confirmed). Each phase emits a row-count reconciliation report. Attachments are uploaded to the Dolibarr documents directory and linked to the corresponding records via ContentDocument records.
Cutover, validation, and automation handoff
We freeze Maximum Software 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 a written automation inventory document listing every Maximum Software workflow and automation rule with a recommended Dolibarr equivalent. We do not rebuild workflows inside the migration scope. We support a one-week post-cutover validation window where we resolve record reconciliation issues. Dolibarr's triggering of automatic actions (e.g., email on invoice creation) is enabled as part of the cutover configuration.
Platform deep dives
Maximum Software
Source
Strengths
Weaknesses
Dolibarr ERP
Destination
Strengths
Weaknesses
Complexity grading
Moderate ERP migration. 8 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Maximum Software and Dolibarr ERP.
Object compatibility
8 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Maximum Software: Not publicly documented.
Data volume sensitivity
Maximum Software doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Maximum Software to Dolibarr ERP migration scoping. Not seeing yours? Book a call.
Walk through your Maximum Software to Dolibarr ERP migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Maximum Software
Other ways to arrive at Dolibarr ERP
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.