ERP migration
Field-level mapping, validation, and rollback between BusinessCloud and Dolibarr ERP. We move data and schema; workflows are rebuilt natively in Dolibarr ERP.
BusinessCloud
Source
Dolibarr ERP
Destination
Compatibility
10 of 12
objects map 1:1 between BusinessCloud and Dolibarr ERP.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from BusinessCloud to Dolibarr is a migration from a proprietary MENA-region cloud ERP with minimal public documentation to an open-source platform backed by a MySQL schema and a community wiki. BusinessCloud has no publicly documented bulk export endpoint, no published API reference, and no third-party connector ecosystem, so every scoping engagement requires direct API probing and schema discovery before we can design the mapping. We recommend requesting a full database export directly from BusinessCloud support before scoping begins. We extract what is available, map ThirdParty records to Dolibarr's combined customer/supplier structure, map Products with price book entries, map Projects with BOM dependencies if applicable, and migrate Order and Invoice history with line items and payments. We do not migrate Workflows, automations, or scheduled jobs as code; we deliver a written inventory of any configured rules for Dolibarr's admin to rebuild.
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 BusinessCloud 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.
BusinessCloud
ThirdParty / Contact / Company
Dolibarr ERP
Societe (ThirdParty)
1:1BusinessCloud Contact and Company records map to Dolibarr's llx_societe table as ThirdParty records. We determine customer versus supplier status using BusinessCloud's account type property. If BusinessCloud separates contacts from companies, we import the parent Company first (satisfying the fk_societe_perm reference for contacts), then import contacts with fk_societe_perm pointing to the parent ThirdParty. Email, phone, address, and website fields map directly. Any BusinessCloud custom fields on contact or company records become Dolibarr Extrafields entries on llx_societe.
BusinessCloud
Product / Service
Dolibarr ERP
Product / Service
1:1BusinessCloud product and service records map to Dolibarr's llx_product table. The product_type field distinguishes inventory-tracked goods (type 0) from services (type 1). The ref field carries the BusinessCloud product code or SKU; label maps to product label. If BusinessCloud tracks cost price, recommended price, or barcode, these map to buy_price, price_ttc, and barcode fields respectively. Stock quantities map to pmp (average purchase price) and stock_reel if the Dolibarr Stock module is active.
BusinessCloud
Project
Dolibarr ERP
Project
1:1BusinessCloud project records map to Dolibarr's llx_projet table. Project name, description, start date, and end date transfer directly. If BusinessCloud tracks project status as a custom field, we map it to the fk_statut field in Dolibarr. Project budgets and cost tracking fields map to budget and budget_ht if those Dolibarr fields are available; otherwise they are flagged as Extrafields candidates for the customer's admin to configure post-migration.
BusinessCloud
Bill of Materials / Recipe
Dolibarr ERP
BOM (Bill of Materials)
lossyIf BusinessCloud manufacturing or production modules include BOM data, these map to Dolibarr's llx_bom and llx_bomline tables, which require the BOM module to be enabled in the destination Dolibarr instance. We create the BOM record first, then populate llx_bomline with component products, quantities, and unit-of-measure references. This mapping only applies when the Manufacturing module is active on both source and destination; BOM is not in Dolibarr's core and must be installed as a separate module.
BusinessCloud
Sales Order / Purchase Order
Dolibarr ERP
Order
1:1BusinessCloud sales orders and purchase orders map to Dolibarr's llx_commande table with the sourcetype field set to Kund (customer order) or Supplier (supplier order). Order date, reference number, status, and total amounts transfer directly. Line items map to llx_commandedet with fk_product resolved against the Product mapping. Any BusinessCloud custom fields on order headers become Extrafields on llx_commandedet.
BusinessCloud
Invoice
Dolibarr ERP
Invoice
1:1BusinessCloud invoices map to Dolibarr's llx_facture table with type区分 customer invoice (type 0), replacement invoice (type 2), or credit note (type 3). The invoice reference, date, due date, and status transfer directly. Line items map to llx_facturedet with fk_product resolved. Payments recorded in BusinessCloud map to llx_paiement and llx_paiement_facture, linking the invoice to the payment record. PDF attachments from BusinessCloud migrate as ContentDocument files attached via llx_document_model.
BusinessCloud
Contract / Subscription
Dolibarr ERP
Contract
1:1BusinessCloud recurring contracts or subscription records map to Dolibarr's llx_contrat table. Contract start date, end date, and status transfer directly. If BusinessCloud tracks contract line items (services included per period), these map to llx_contratdet with service start and end dates per line. The fk_contrat links to llx_contrat and fk_product links to the mapped Product record.
BusinessCloud
Bank Account
Dolibarr ERP
Bank Account
1:1BusinessCloud bank account or financial account records map to Dolibarr's llx_bank table. Account number, bank name, and IBAN transfer to label, numero, and iban fields respectively. Any current balance recorded at time of export maps to solde. The Dolibarr Bank module must be enabled for this object to import.
BusinessCloud
Category / Tag
Dolibarr ERP
Category
1:1BusinessCloud categories or tags attached to products, third parties, or projects map to Dolibarr's llx_categories table. We import the category label and type (0 for products, 1 for contacts, 2 for customers, 3 for suppliers, 11 for projects). Category assignments from BusinessCloud become records in llx_categorie_entity with the appropriate fk_categorie and fk_object references for the tagged entity.
BusinessCloud
Payment Record
Dolibarr ERP
Payment
1:1BusinessCloud payment records map to Dolibarr's llx_paiement table with payment type, date, and amount. The corresponding llx_paiement_facture record links the payment to the migrated invoice by matching the BusinessCloud invoice reference to the Dolibarr facnumber. If BusinessCloud tracks partial payments, each partial payment becomes a separate llx_paiement record with a corresponding llx_paiement_facture row.
BusinessCloud
User / Employee
Dolibarr ERP
User
1:1BusinessCloud user and employee records map to Dolibarr's llx_user table. We match by email address as the dedupe key. Active status, login, and lastname transfer directly. Dolibarr stores passwords as hashed values and does not accept plaintext password imports, so the customer's admin must reset passwords or send account-setup emails post-migration. Owner assignments on migrated records reference llx_user rowid values resolved after the User table is populated.
BusinessCloud
Custom Objects / Custom Fields
Dolibarr ERP
Extrafields
lossyAny custom objects or custom fields present in BusinessCloud that do not map to a standard Dolibarr table become Dolibarr Extrafields entries. We create the Extrafield definition in Dolibarr's llx_extrafields with the correct fk_object (pointing to the target table like llx_societe, llx_product, or llx_projet), field label, and data type. The custom field values migrate as Extrafield data in the target table. This step requires the customer's admin to define the field semantics and any associated picklists or validation rules in Dolibarr before migration.
| BusinessCloud | Dolibarr ERP | Compatibility | |
|---|---|---|---|
| ThirdParty / Contact / Company | Societe (ThirdParty)1:1 | Fully supported | |
| Product / Service | Product / Service1:1 | Fully supported | |
| Project | Project1:1 | Fully supported | |
| Bill of Materials / Recipe | BOM (Bill of Materials)lossy | Fully supported | |
| Sales Order / Purchase Order | Order1:1 | Fully supported | |
| Invoice | Invoice1:1 | Fully supported | |
| Contract / Subscription | Contract1:1 | Fully supported | |
| Bank Account | Bank Account1:1 | Fully supported | |
| Category / Tag | Category1:1 | Fully supported | |
| Payment Record | Payment1:1 | Fully supported | |
| User / Employee | User1:1 | Fully supported | |
| Custom Objects / Custom Fields | Extrafieldslossy | 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.
BusinessCloud gotchas
Name collision: 'BusinessCloud' refers to multiple unrelated products
No public API or bulk export documentation
Saudi banking and Muqeem Portal integrations do not map to non-MENA destinations
Per-user pricing model means user count drives migration cost
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 method design
We audit the BusinessCloud instance for all active modules, custom fields, and configuration options visible through the admin interface. We attempt API probing against known BusinessCloud endpoints and enumerate the customer's schema surface. If BusinessCloud has provided a database export (MySQL dump preferred), we parse the dump and produce a schema map. If no dump is available, we coordinate with BusinessCloud support for a negotiated export, noting that extraction timelines depend on their responsiveness. The discovery output is a confirmed extraction method, an inventory of all BusinessCloud objects and custom fields, and a preliminary object mapping to Dolibarr.
Schema mapping and Dolibarr module selection
We design the destination Dolibarr schema based on the confirmed BusinessCloud extract. This includes selecting and enabling the relevant Dolibarr modules (CRM, Invoicing, Products, Projects, BOM, Contracts, Bank, Stock) and creating Extrafields for any BusinessCloud custom fields that have no standard Dolibarr equivalent. We provision the Dolibarr MySQL database with the correct character set and collation before any import begins. Schema design is validated against the Dolibarr wiki documentation for the installed Dolibarr version.
Staging migration and reconciliation
We run a full migration into a staging Dolibarr instance using production-like data volume. The customer's admin reconciles record counts (ThirdParties in, Products in, Orders in, Invoices in, Projects in), spot-checks 20-30 random records against the BusinessCloud source, and signs off the schema and mapping before production migration begins. Any field-level corrections and Extrafield refinements happen here. We do not run production migration without a confirmed staging sign-off.
User and owner provisioning in Dolibarr
We extract every distinct BusinessCloud user or employee referenced as an owner on records and match by email against the Dolibarr destination User table. BusinessCloud users without a matching Dolibarr User are held in a reconciliation queue for the customer's admin to provision with the correct login, role, and active status. Migration cannot proceed past record import until all OwnerId references are resolved because Dolibarr enforces foreign key constraints on the fk_user_author and fk_user_modif fields across most tables.
Production migration in dependency order
We run production migration in record-dependency order: Users (manual provisioning validated), ThirdParty records first (satisfied foreign key for contacts), Products (satisfied foreign key for order and invoice lines), Projects, Orders with line items, Invoices with payments, Contracts with service lines, Categories, Bank accounts, then Extrafield data. Each phase emits a row-count reconciliation report before the next phase begins. We write directly to the Dolibarr MySQL database using batch INSERT with ON DUPLICATE KEY UPDATE to handle idempotent re-runs. We do not use the Dolibarr UI import wizard for large datasets.
Cutover, validation, and workflow handoff
We freeze BusinessCloud write access during cutover, run a final delta migration of any records modified during the migration window, then enable Dolibarr as the system of record. We validate record counts, spot-check key financial records (invoices, payments, balances), and confirm Extrafield data populated correctly. We deliver a written inventory of any BusinessCloud workflow or automation rules with a Dolibarr rebuild recommendation. We support a one-week post-go-live window for reconciliation issues. We do not rebuild BusinessCloud workflows inside the migration scope; that is a separate engagement for the customer's admin or a Dolibarr implementation partner.
Platform deep dives
BusinessCloud
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 BusinessCloud 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
BusinessCloud: Not publicly documented.
Data volume sensitivity
BusinessCloud 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 BusinessCloud to Dolibarr ERP migration scoping. Not seeing yours? Book a call.
Walk through your BusinessCloud 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 BusinessCloud
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.