ERP migration

Migrate from Circle Commerce to Dolibarr ERP

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

Circle Commerce logo

Circle Commerce

Source

Dolibarr ERP

Destination

Dolibarr ERP logo

Compatibility

58%

7 of 12

objects map 1:1 between Circle Commerce and Dolibarr ERP.

Complexity

BStandard

Timeline

4-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Circle Commerce to Dolibarr is a schema-normalization migration as much as a data move. CircleHub's unlimited-field model means every customer's schema is unique — there is no standard export template, and every custom attribute defined by the customer must be individually mapped into Dolibarr's structured object model before import. We build that field map during scoping by introspecting the customer's live CircleHub configuration, then write transformation logic that converts Circle's flat custom-field records into Dolibarr's module-based schema (Third Parties for customers, Products for goods, Stock for inventory, Orders for sales). Dolibarr's native import path uses flat files (CSV or Excel) with predefined profiles per module — large catalogs require chunked CSV delivery to avoid memory constraints. Custom reports, KPI definitions, and automations do not migrate; we document the existing report structure and deliver a written list of automations to rebuild in Dolibarr's built-in workflow tools or a third-party module.

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

Circle Commerce logo

Circle Commerce

What's pushing teams away

  • The platform lacks transparent public pricing, making it difficult for prospective customers to evaluate cost before a sales conversation, which causes some to choose competitors with published tiers.
  • Small businesses and solo operators find no affordable entry-level or free tier to test the platform, pushing them toward alternatives like Circle community or other SaaS tools with lower barriers to entry.
  • The company size (8 employees) raises concerns about long-term support capacity and platform road map stability compared to larger ERP vendors with dedicated R&D teams.
  • Limited third-party integration documentation means customers requiring deep ERP or CRM connections must rely on custom development or workarounds, which some find cumbersome.

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

Each row shows how a Circle Commerce 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.

Circle Commerce

Customer

maps to

Dolibarr ERP

Third Party (Societe)

1:1
Fully supported

Circle Commerce customer records map to Dolibarr Third Party objects. Circle's customer-specific custom fields (any attributes beyond standard contact fields) are mapped to Dolibarr's Extrafields (custom fields) table via the Module CustomFields configuration. We resolve the customer-company relationship during import: if Circle stores customers as standalone records, they become Dolibarr Third Parties with type=Contact; if customers are company-assigned, they become Dolibarr contacts linked to a parent Third Party with type=Company. All addresses, email, phone, and account-level custom fields migrate as Extrafields into llx_societe_extrafields.

Circle Commerce

Order

maps to

Dolibarr ERP

Order (Commande Client)

1:1
Fully supported

Circle Commerce order headers and line items map to Dolibarr Customer Order objects. The Circle order number becomes the Dolibarr ref, order status maps to a Dolibarr OrderStatus value (DRAFT, VALIDATED, SHIPPED, CLOSED), and order total and tax amounts map to total_ht, total_tva, and total_ttc. Circle custom order fields migrate as Extrafields. Line items from the Circle order export are written as Dolibarr CommandefDet (order line) records with product reference or description, quantity, unit price, and VAT rate resolved from the field map.

Circle Commerce

Product

maps to

Dolibarr ERP

Product (Produit)

1:1
Fully supported

Circle Commerce product records map to Dolibarr Product objects. The Circle product name becomes the Dolibarr label, SKU maps to ref, and pricing data maps to cost price (prix de revient) and selling price (prix_vente). Circle's custom product attributes (any customer-defined fields on the product object) are mapped to Dolibarr Extrafields on llx_product_extrafields. We handle the Circle-to-Dolibarr product type mapping: if Circle products are physical goods they become type=0 (Product) in Dolibarr; if they are services they become type=1 (Service). Bundle and kit relationships from Circle are decomposed into Dolibarr product BOM (bill of materials) or handled as grouped line items per the customer's preference.

Circle Commerce

Inventory

maps to

Dolibarr ERP

Stock (Stock) + Warehouse (Entrepot)

lossy
Fully supported

Circle Commerce channel-specific inventory records (online, BOPIS, warehouse) map to Dolibarr Stock and Entrepot objects. We create Dolibarr warehouses matching Circle's channel definitions (e.g., online-fulfillment, retail-floor, warehouse-A) and write stock quantities as reel (real stock) values per product-warehouse combination. If Circle's inventory is a single pool, we consolidate to one Dolibarr warehouse by default; if channel-level allocation must be preserved, we create multiple warehouses and map quantities accordingly. Stock value (prix考核) is computed from the product cost price at migration time.

Circle Commerce

Shipment

maps to

Dolibarr ERP

Shipment (Expedition)

1:1
Fully supported

Circle Commerce shipment records with carrier, tracking number, and status map to Dolibarr Expedition objects. The shipment order reference links to the corresponding Dolibarr Order, tracking URL maps to tracking_url, and shipping status maps to expedition status. We extract the carrier name from Circle's shipment export and map it to a Dolibarr carrier configuration or store as a text Extrafield if no matching carrier record exists in Dolibarr. Partial shipments and backorder records are handled as separate Expedition rows linked to the same order.

Circle Commerce

Purchase Order

maps to

Dolibarr ERP

Supplier Order (Commande Fournisseur)

1:1
Fully supported

Circle Commerce purchase orders map to Dolibarr Supplier Order objects. Vendor name maps to the Dolibarr supplier Third Party (type=Supplier); expected delivery date maps to date_livraison; PO line items map to CommandefournisseurLigne records with product reference, quantity, and buy price. Where vendors exist only as free-text in CircleHub (no structured vendor record), we flag them during discovery and create Dolibarr Third Party records for each unique vendor name before importing the PO lines.

Circle Commerce

Custom Fields

maps to

Dolibarr ERP

Extrafields

lossy
Mapping required

All customer-defined custom fields from CircleHub across any object are mapped to Dolibarr Extrafields. During scoping we introspect the customer's live CircleHub schema to identify every custom field (name, data type, object assignment). We then create matching Dolibarr Extrafields using the appropriate field type: varchar for short text, text for long text, int or float for numeric values, datetime for timestamps, select for enumerated values. The Extrafields migration is done before the primary object import so that the custom field columns exist in Dolibarr at insert time. Data type conversion is applied per field (e.g., Circle boolean stored as text 'true'/'false' converted to Dolibarr's integer 0/1).

Circle Commerce

KPIs and Reports

maps to

Dolibarr ERP

Report documentation (no data migration)

1:1
Mapping required

Circle Commerce custom reports and KPI definitions built on the customer's own field names have no export API path. We capture report metadata during discovery — report name, filters, calculated fields, and output structure — and document it in the migration handoff. We do not migrate report definitions as data records. The underlying data (orders, customers, products) migrates to Dolibarr, and the customer's admin rebuilds reports using Dolibarr's built-in report engine or a Dolistore reporting module (such as those available on NextGestion). We flag which Dolibarr fields correspond to each Circle custom field used in a report so the admin can rebuild efficiently.

Circle Commerce

Owner

maps to

Dolibarr ERP

User

1:1
Fully supported

Circle Commerce owners (users who created or are assigned to records) map to Dolibarr User records. We resolve by matching the owner email address to the Dolibarr user email field. Any Circle owner without a matching Dolibarr user goes to a reconciliation queue for the customer's admin to provision before record import continues, because OwnerId is a required reference on orders and other assigned records in Dolibarr.

Circle Commerce

Historical Timestamps

maps to

Dolibarr ERP

Date fields on all objects

lossy
Fully supported

All date and timestamp fields from Circle Commerce (order creation date, shipment date, customer creation date) are preserved as their corresponding date fields in Dolibarr (date_creation, date_valid, date_livraison) at migration time. We do not alter or reset timestamps to the migration date. Time zone handling is documented during scoping — if Circle stores times in a specific timezone and Dolibarr's server PHP timezone differs, we apply an explicit offset during transformation so that order chronology is accurate in the destination.

Circle Commerce

Attachments

maps to

Dolibarr ERP

Documents (Document management module)

lossy
Fully supported

File attachments stored in Circle Commerce (order documents, product images, shipment labels) are exported and stored in Dolibarr's /documents directory structure. We map each attachment to the appropriate Dolibarr object using the ECM (Electronic Content Management) module or the object-level document links. Image files for products are linked to the Dolibarr Product via the product image upload mechanism. PDF documents and other order attachments are linked as document records on the corresponding Order or Third Party.

Circle Commerce

Multi-entity structures

maps to

Dolibarr ERP

Third Party or multi-instance configuration

lossy
Fully supported

If the Circle Commerce customer runs multiple entities or divisions under one CircleHub instance, we handle this in Dolibarr through either separate Third Party records with a custom entity field or through Dolibarr's multi-company module if the customer's Dolibarr installation has this module enabled. We document the entity mapping during scoping and apply the chosen strategy consistently across all migrating objects. This is a scoping-phase decision because Dolibarr's multi-company module changes the import batch architecture.

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.

Circle Commerce logo

Circle Commerce gotchas

Medium

Rate limit of 2000 requests per 5 minutes on Circle APIs

High

Infinitely adaptable schema requires per-project field mapping

Medium

No native export of custom report and KPI definitions

Low

Small company footprint limits community support and documentation

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

  • Circle's infinite schema requires per-project field mapping before any export

    CircleHub has no fixed field set — every customer defines their own attributes on every entity. There is no standard export query that captures all fields because there is no standard schema. We build the migration field map during scoping by introspecting the customer's live CircleHub configuration, listing every custom field name, its data type, and the object it belongs to. Skipping this step before writing any export logic results in silent data loss: any custom field not in the initial export query is not included in the migration. This mapping exercise is unique to Circle Commerce and is not a gotcha for other platforms with a documented fixed schema.

  • Dolibarr's built-in import is table-by-table with predefined profiles only

    Dolibarr's native import tool (Module Imports) accepts CSV or Excel flat files and loads one table at a time using predefined import profiles. It is not a general ETL tool. Complex data with inter-object relationships (e.g., order lines referencing product IDs that must exist before the order header inserts) requires a phased import strategy: entities with no dependencies first (products, third parties), then dependent records (orders referencing products and third parties). We use this phased approach and chunk large CSV files (Dolibarr recommends CSV over Excel for performance) to avoid PHP memory limits on large catalogs. For migrations over 10,000 order lines, we write a custom PHP import script using Dolibarr's API rather than relying solely on the wizard.

  • Circle API rate limit of 2000 requests per 5 minutes constrains large exports

    Circle's API enforces a 2000 requests per 5-minute window per organization. For large catalogs (10,000+ orders, 50,000+ product records) we chunk the extraction into batch windows with sleep intervals to stay within the limit. This extends migration timeline for data-heavy sources because the export phase takes longer than a platform with a higher or no documented rate limit. We plan for this during scheduling and do not attempt to burst through the limit, which would result in 429 responses and retry storms.

  • Vendor free-text in Circle purchase orders requires reconciliation before import

    Circle Commerce customers frequently store vendors as free-text strings on purchase orders rather than structured vendor records. Dolibarr requires a Third Party record with type=Supplier for every vendor referenced on a supplier order. We identify all unique free-text vendor names during scoping, create Dolibarr Third Party supplier records for each, and flag any ambiguous or duplicate vendor names for manual review. If this reconciliation is skipped, the supplier order import fails at the foreign key constraint because Dolibarr cannot link to a non-existent Third Party record.

  • Dolibarr document validation requires correct folder permissions at import time

    Dolibarr renames and reorganizes document folders when orders or other documents are validated. If the /documents/ folder has incorrect permissions (Dolibarr requires write access for the web server user), validation fails silently with a ROLLBACK in the error log. We validate Dolibarr folder permissions during the destination environment setup before any import begins. If custom numerotation systems use illegal filesystem characters (such as /), Dolibarr cannot rename the document folder and validation fails — we temporarily reset to default numerotation during migration and advise the admin on the correct format post-migration.

Migration approach

Six steps for a successful Circle Commerce to Dolibarr ERP data migration

  1. Schema introspection and field map construction

    We audit the customer's live CircleHub instance to enumerate every active object (orders, customers, products, inventory, shipments, purchase orders), identify all custom fields defined on each object, and capture their data types and validation constraints. This step produces the migration field map — the document that defines which Circle field maps to which Dolibarr field (or Extrafield) and what transformation is required. We also capture custom report metadata (report names, filters, calculated fields, output structure) for the reporting rebuild inventory. This step takes three to five business days and requires read-only API access to the customer's CircleHub instance.

  2. Destination schema provisioning

    We provision the Dolibarr object schema before any data moves. This includes enabling the relevant Dolibarr modules (Third Parties, Products, Stock, Orders, Suppliers, Expedition, Projects) in the customer's Dolibarr installation, creating Extrafields to match every Circle custom field identified in step one, and configuring warehouse records matching the customer's inventory channels. If multi-entity or multi-company structures are in scope, we configure those before the import batch design. The destination is deployed in a staging environment first for validation.

  3. Data extraction with rate-limit management

    We export data from CircleHub in dependency order: products and third parties first (they have no upstream dependencies), then inventory and warehouse quantities, then orders with line items, then shipments, then purchase orders. We apply the Circle API rate limit (2000 requests per 5 minutes) by chunking large queries with pagination offsets and inserting sleep intervals. Each export batch is validated against the field map to confirm all custom fields are present before the file is accepted for import. Any records with missing required fields are flagged in a reconciliation report and resolved before import begins.

  4. Staging import and reconciliation

    We run a full import into the Dolibarr staging environment using production data volumes. The customer reconciles record counts against the Circle source (total orders in, total customers in, total products in), spot-checks 25-50 records across each object for field-level accuracy, and validates that Dolibarr custom fields populated correctly. Any mapping corrections (wrong field assigned, data type mismatch, missing required value) are fixed in the transformation logic and the staging import is re-run. The customer signs off the staging results before production migration begins.

  5. Production migration in dependency order

    We run the production migration in this sequence: Products (llx_product + llx_product_extrafields), Third Parties — suppliers first then customers (llx_societe + llx_societe_extrafields), Stock entries (llx_product_stock), Orders (llx_commande + llx_commandedet), Shipments (llx_expedition + llx_expedition_livraison), Purchase Orders (llx_commande_fournisseur + llx_commande_fournisseurdet), Attachments and documents. Each phase emits a row-count reconciliation report. Free-text vendors from Circle purchase orders are created as Dolibarr Third Party supplier records during the supplier phase before the PO lines import. A final delta migration captures any records modified in Circle during the cutover window.

  6. Cutover, validation, and reporting rebuild handoff

    We freeze writes to CircleHub during cutover, run the final delta migration, then hand the destination Dolibarr instance to the customer as the system of record. We deliver the reporting rebuild inventory documenting every Circle custom report, its filters, calculated fields, and the corresponding Dolibarr report configuration steps. We do not rebuild automations, workflows, or process triggers as these are not migratable; the Dolibarr workflow module must be configured by the customer's admin or a Dolibarr integrator post-migration. We provide a one-week hypercare window for reconciliation issues raised during the first days of live use.

Platform deep dives

Context on both ends of the pair

Circle Commerce logo

Circle Commerce

Source

Strengths

  • Single platform for order management across all channels (online, BOPIS, warehouse, delivery).
  • Infinitely adaptable schema that fits unique business practices rather than forcing standard workflows.
  • Full omnichannel inventory management from one pool with channel-specific allocation.
  • Responsive small-team support that helps adapt the system to new business scenarios.
  • Custom reporting built on customer-defined fields and KPIs.

Weaknesses

  • No public pricing tiers or entry-level plan — requires a sales conversation to evaluate cost.
  • Very small company (8 employees) raises questions about long-term platform stability and support capacity.
  • Limited published API documentation and integration guides for third-party connectivity.
  • No free trial or self-service onboarding path to evaluate fit before committing.
  • Custom schema means migrations require a full field-mapping exercise rather than a template-based import.
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 Circle Commerce 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

    Circle Commerce: 2000 requests per 5 minutes per organization.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Circle Commerce 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 four and six weeks for accounts under 5,000 orders and 50 custom fields across all objects. Migrations with large order histories (over 20,000 records), complex multi-object custom-field schemas, multi-warehouse inventory decomposition, or free-text vendor reconciliation move to eight to fourteen weeks because of the per-project field mapping exercise, staging validation cycles, and Dolibarr import chunking for large flat files. The scoping phase (schema introspection and field map construction) takes three to five business days regardless of migration size.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Circle Commerce.
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