ERP migration
Field-level mapping, validation, and rollback between Perfecto ERP and Dolibarr ERP. We move data and schema; workflows are rebuilt natively in Dolibarr ERP.
Perfecto ERP
Source
Dolibarr ERP
Destination
Compatibility
9 of 12
objects map 1:1 between Perfecto ERP and Dolibarr ERP.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Perfecto ERP to Dolibarr is an Excel-mediated extraction followed by a structured CSV import into Dolibarr's module ecosystem. Perfecto ERP publishes no public API, so we guide customers through the built-in Excel export for each module and handle multi-level Chart of Accounts hierarchies, BOM component ordering, and End-User Customization Studio custom fields as part of the extraction design. Dolibarr's open-source model and modular architecture (CRM, invoicing, stock, HR, projects) serve small-to-mid enterprises and associations; we map Perfecto ERP's Financial Package and Supply Chain Package objects to their Dolibarr equivalents and flag where Dolibarr lacks native equivalents such as cost centres, approval workflows, and granular role-field permissions. We do not migrate Workflows, Sequences, or Approval Workflows as code; we deliver a written inventory of these for the customer's admin to rebuild in Dolibarr.
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 Perfecto 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.
Perfecto ERP
Chart of Accounts
Dolibarr ERP
Accounting - Chart of Accounts
1:1Perfecto ERP Chart of Accounts with multi-level hierarchical account structures map to Dolibarr's accounting chart. We preserve parent-child relationships using the pcg_version and account_number fields, mapping each account level so that account grouping and totals carry forward correctly. Where Dolibarr uses a flat account list with category tags, we reconstruct the hierarchy as parent-account assignments in Dolibarr's llx_accounting_account table.
Perfecto ERP
General Ledger
Dolibarr ERP
Accounting - Movement / Journal
1:1General Ledger journal entries from Perfecto ERP map to Dolibarr's llx_accounting_bookkeeping table. We preserve journal entry numbering sequences, transaction dates, account references, debit/credit amounts, and the general_ledger_code description field. Where Perfecto ERP uses sub-ledger postings for cost centres, we tag these as project assignments in Dolibarr since Dolibarr lacks native cost centre fields.
Perfecto ERP
Customers
Dolibarr ERP
Third Parties - Customers
1:1Perfecto ERP Customer records map to Dolibarr Third Parties with the customer flag enabled. Name, contact, address, payment terms, and tax registration fields migrate 1:1. Any End-User Customization Studio custom fields on the Customer object are flagged during discovery and added to the Dolibarr import template as extended columns before extraction.
Perfecto ERP
Vendors
Dolibarr ERP
Third Parties - Suppliers
1:1Vendor records follow the same structure as Customer records in Perfecto ERP and map to Dolibarr Third Parties with the supplier flag enabled. Vendor-specific fields including tax registration number, payment terms, and bank details transfer to the Dolibarr llx_societe table. We preserve the vendor-specific codes used in Perfecto ERP's supply chain module as Dolibarr's supplier code field.
Perfecto ERP
Items
Dolibarr ERP
Products and Services
1:1Items including finished goods, raw materials, and services map to Dolibarr llx_product. We preserve SKU from Perfecto ERP as ref in Dolibarr, unit of measure, price fields, and stock levels. BOM relationships require a separate migration pass after the base Item records are loaded, as component references must resolve to existing product IDs in Dolibarr.
Perfecto ERP
Items (Bill of Materials)
Dolibarr ERP
BOM / Recipe
lossyPerfecto ERP BOM structures with parent items and component quantities map to Dolibarr's BOM module (llx_bom and llx_bomline). We sequence BOM migration as a separate pass after base Items are committed, so that parent product IDs are available for lookup at import time. Component quantities, wastage percentages, and BOM cost prices transfer to Dolibarr's bomline table. If the customer's Perfecto ERP BOM uses multi-level nesting, we flatten to single-level BOMs in Dolibarr and document the hierarchy for manual reconstruction if needed.
Perfecto ERP
Employees
Dolibarr ERP
HR - Employees
1:1Employee profiles including name, job title, department, and employment status map to Dolibarr llx_societe (as contacts with employee type) or the dedicated HR module if the customer activates it. We extract employee records alongside their assigned Roles and Permissions to reconstruct user access levels in Dolibarr. Active employee status maps to Dolibarr's employee flag on the contact record.
Perfecto ERP
Roles and Permissions
Dolibarr ERP
User Permissions
lossyPerfecto ERP role-based security assignments extract from the role-permission matrix and map to Dolibarr's permission system. Perfecto ERP's module-level and field-level access control has no direct Dolibarr equivalent, so we map the nearest Dolibarr permission (read/write/delete per module) and document the granular field-level restrictions that require manual configuration in Dolibarr's user permission panel post-migration.
Perfecto ERP
Attachments
Dolibarr ERP
Linked Files
1:1Perfecto ERP file attachments stored as file references linked to records are exported to a neutral file store (S3-compatible or local directory) during migration. We map the original attachment paths to Dolibarr's document directory structure and recreate the record-level links post-import so that attached invoices, images, and documents remain accessible from the correct Dolibarr record. File paths are not portable between systems; we handle relinking as part of the post-import phase.
Perfecto ERP
Purchase Orders
Dolibarr ERP
Supplier Orders
1:1Purchase orders from Perfecto ERP's Supply Chain Package map to Dolibarr llx_commande_fournisseur. We preserve order date, supplier reference, line items with quantities and unit prices, and order status. The supplier reference on the Dolibarr order resolves to the Third Party record migrated from the Vendor object.
Perfecto ERP
Sales Orders
Dolibarr ERP
Customer Orders
1:1Sales orders map to Dolibarr llx_commande. Order date, customer reference, line items, quantities, and order status transfer directly. Customer reference resolves to the Third Party customer record. Dolibarr's order workflow status values (draft, validated, shipped, closed) map from Perfecto ERP's corresponding order lifecycle stages.
Perfecto ERP
Approval Workflows
Dolibarr ERP
No native equivalent
lossyPerfecto ERP Approval Workflows define custom approval chains tied to specific transaction types. Dolibarr has no built-in approval workflow engine; this is a gap that Dolistore modules address. We extract workflow definitions as a written configuration document describing the trigger, approver chain, and conditions for each workflow, and advise the customer to evaluate and install a suitable Dolistore approval module post-migration.
| Perfecto ERP | Dolibarr ERP | Compatibility | |
|---|---|---|---|
| Chart of Accounts | Accounting - Chart of Accounts1:1 | Mapping required | |
| General Ledger | Accounting - Movement / Journal1:1 | Fully supported | |
| Customers | Third Parties - Customers1:1 | Fully supported | |
| Vendors | Third Parties - Suppliers1:1 | Fully supported | |
| Items | Products and Services1:1 | Mapping required | |
| Items (Bill of Materials) | BOM / Recipelossy | Fully supported | |
| Employees | HR - Employees1:1 | Fully supported | |
| Roles and Permissions | User Permissionslossy | Mapping required | |
| Attachments | Linked Files1:1 | Mapping required | |
| Purchase Orders | Supplier Orders1:1 | Fully supported | |
| Sales Orders | Customer Orders1:1 | Fully supported | |
| Approval Workflows | No native equivalentlossy | Mapping required |
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.
Perfecto ERP gotchas
No documented public API for bulk data extraction
End-User Customization Studio fields may not appear in standard exports
BOM structures require multi-pass migration sequencing
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 extraction design
We audit Perfecto ERP across all active modules in scope, documenting the Chart of Accounts hierarchy depth, General Ledger record counts, Third Party volumes (Customers and Vendors separately), Item count with BOM complexity (single-level vs multi-level nesting), Employee record count, Attachment volume, and supply chain transaction history. We identify End-User Customization Studio custom fields for each object and produce an extraction guide that the customer's Perfecto ERP team uses to generate extended Excel exports including all custom columns. We also extract the role-permission matrix and approval workflow definitions as configuration documents. The discovery output is a written migration scope, extraction checklist, and Dolibarr module activation plan.
Dolibarr target schema setup
We install or configure the target Dolibarr instance with the modules required to receive the migrated data (Third Parties, Products/Services, BOM, Accounting, HR, Orders, Projects). We create any required custom fields on Dolibarr objects to receive End-User Customization Studio fields from Perfecto ERP, configure the Chart of Accounts structure, and set up the Product and Supplier/Customer Third Party categories. If the customer uses DoliCloud, we coordinate with their hosted environment; if self-hosted, we guide the customer through schema setup in their PHP environment.
Data extraction from Perfecto ERP
We guide the customer's team through the Excel export for each module using the extraction guide produced in Step 1. Exports run in dependency order: Chart of Accounts first, then Third Parties (Customers and Vendors), then Items, then Employees, then BOM structures, then General Ledger, then supply chain orders, then Attachments. We validate each export file for column completeness, UTF-8 encoding, and row counts against the discovery estimates before proceeding to transformation. Any module where the default export template excludes custom fields is flagged and a supplemental extended export is requested before transformation continues.
Data transformation and BOM sequencing
We transform exported Excel files to Dolibarr-compatible CSV format using the Dolibarr import template for each module. The transformation handles field type mapping (dates to YYYY-MM-DD, numeric amounts, address concatenation), deduplication by external key (customer code, vendor code, product SKU), and lookup key resolution. BOM transformation runs as a separate pass after base Item records are committed, resolving component product IDs from the newly created Dolibarr product records and writing bomline entries in the correct order. We validate referential integrity for all foreign keys before import.
Staged import and reconciliation
We run Dolibarr imports in dependency order: Chart of Accounts, Third Parties, Products, BOM (after Products confirmed), Employees, General Ledger, Orders, then Attachments. Each module import is followed by a row-count reconciliation against the source export and a spot-check of 20-30 records for data fidelity. We use Dolibarr's native CSV import tool or direct SQL insertion for bulk loads, with error logs reviewed and corrected before the next module begins. Role-permission and approval workflow configuration documents are delivered alongside the data migration.
Cutover, validation, and workflow handoff
We freeze Perfecto ERP writes during cutover, run a final delta pass for any records modified during the migration window, and validate that the Dolibarr instance is internally consistent (Third Parties referenced by Orders, Products referenced by BOM, accounts referenced by GL). We deliver the approval workflow configuration document and role-permission mapping to the customer's admin team with Dolistore module recommendations for any gaps. We support a five-day hypercare window for post-go-live reconciliation issues. We do not rebuild Perfecto ERP Approval Workflows or role-based access rules as Dolibarr automations; those are separate configuration engagements.
Platform deep dives
Perfecto ERP
Source
Strengths
Weaknesses
Dolibarr ERP
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Perfecto ERP and Dolibarr ERP.
Object compatibility
2 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
Perfecto ERP: Not publicly documented.
Data volume sensitivity
Perfecto ERP 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 Perfecto ERP to Dolibarr ERP migration scoping. Not seeing yours? Book a call.
Walk through your Perfecto ERP 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 Perfecto ERP
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.