ERP migration
Field-level mapping, validation, and rollback between ERPnext Enterprise - Bespoke and Acumatica. We move data and schema; workflows are rebuilt natively in Acumatica.
ERPnext Enterprise - Bespoke
Source
Acumatica
Destination
Compatibility
13 of 13
objects map 1:1 between ERPnext Enterprise - Bespoke and Acumatica.
Complexity
BStandard
Timeline
3–6 days
Overview
ERPNext Enterprise Bespoke stores all business data as MariaDB-backed DocTypes — flat document records where custom fields are serialized JSON payloads inside each record row. Acumatica uses a fully relational schema: standard DAC (Data Access Class) tables for Customers, Vendors, Stock Items, GL Accounts, and Projects, with User-Defined Fields (UDFs) held as separate extended-property rows keyed by RecordID. The structural mismatch is the central migration challenge: ERPNext's JSON custom fields must be extracted field-by-field and recreated as Acumatica UDF records per DAC, while standard fields map cleanly by name. FlitStack AI sequences the migration so parent entities (Items, Customers, Suppliers) land before child transactions (Sales Orders, Purchase Orders), resolves ERPNext owner and warehouse references to Acumatica Branch and Warehouse entities, and rebuilds Acumatica's UDF schema before any data loads. Workflows, approval chains, and ERPNext Custom Scripts have no Acumatica equivalent and must be rebuilt using Acumatica's Generic Inquiry, Automation Schedule, and ISV ecosystem. We export workflow definitions as a reference document for your Acumatica admin. The migration runs against Acumatica's REST/SOAP API with paginated batch commits, and a 24–48 hour delta window captures in-flight changes during cutover.
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 ERPnext Enterprise - Bespoke object lands in Acumatica, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
ERPnext Enterprise - Bespoke
Customer
Acumatica
Customer
1:1ERPNext Customer DocType maps directly to Acumatica Customer DAC. Primary contact details merge into the Customer record's Contact sub-tab. ERPNext custom fields embedded as JSON within the Customer row extract to Acumatica UDF rows keyed by CustomerID. Multi-company ERPNext setups split by Company field into separate Acumatica customer sub-sets or branches.
ERPnext Enterprise - Bespoke
Supplier
Acumatica
Vendor
1:1ERPNext Supplier DocType maps to Acumatica Vendor DAC. Supplier type (Local, International, Raw Material) maps to Vendor Class. Primary contact and address merge into Vendor record sub-tabs. Supplier-wise pricing rules from ERPNext become Vendor price lists in Acumatica's VendorPrices table.
ERPnext Enterprise - Bespoke
Item
Acumatica
InventoryItem
1:1ERPNext Item DocType maps to Acumatica InventoryItem DAC with item type set to Stock Item. ERPNext's JSON-stored barcodes, lot sizes, and reorder levels extract to Acumatica UDFs. Valuation method (FIFO, Moving Average, Standard) maps directly to Valuation Method field. Multiple UOMs in ERPNext map to Acumatica's UOM class with conversion factors.
ERPnext Enterprise - Bespoke
Account
Acumatica
Account
1:1ERPNext Account DocType maps to Acumatica GLAccount with AccountCD as the key. Account Type (Asset, Liability, Expense, Income) maps to Account Type pick-list. ERPNext's root accounts (Balance Sheet, Income) translate to Account Group assignments in Acumatica's Chart of Accounts tree structure.
ERPnext Enterprise - Bespoke
Sales Order
Acumatica
SalesOrder
1:1ERPNext Sales Order DocType maps to Acumatica SalesOrder DAC. ERPNext's per-row Item against the Item DocType resolves to InventoryItemCD on SalesOrderDetail. ERPNext dimensions (Cost Center, Department) map to Acumatica's generic Activated dimension classes (such as Department or Project). Set status and workflow state in ERPNext determine the order Hold/Released status in Acumatica.
ERPnext Enterprise - Bespoke
Purchase Order
Acumatica
PurchaseOrder
1:1ERPNext Purchase Order DocType maps to Acumatica PurchaseOrder DAC. Vendor link resolves to VendorID. ERPNext terms of delivery and import/export flags store as UDF text fields. Line-level item references convert to InventoryItemCD on POLine. Purchase Order status workflow maps to Acumatica's Hold/Released state machine.
ERPnext Enterprise - Bespoke
Delivery Note
Acumatica
Shipment
1:1ERPNext Delivery Note maps to Acumatica Shipment (SO Shipment) DAC. ERPNext packed-items against a linked Sales Order translate to Shipment lines with OrderNbr reference. ERPNext batch numbers on Delivery Note rows become Lot/Serial numbers in Acumatica's InventoryAllocations sub-grid. Source of transfer (Warehouse, Customer) resolves to WarehouseID in Acumatica.
ERPnext Enterprise - Bespoke
Purchase Receipt
Acumatica
Receipt
1:1ERPNext Purchase Receipt DocType maps to Acumatica Receipt (PO Receipt) DAC. The Receipt is linked to the Purchase Order via POLineNbr. ERPNext received-qty and accepted-qty per item row translate to the Quantity field on RCBill of Lading Detail. Warehouse receipt location from ERPNext maps to InventoryID + WarehouseID in Acumatica.
ERPnext Enterprise - Bespoke
Payment Entry
Acumatica
Payment
1:1ERPNext Payment Entry DocType maps to Acumatica Payment DAC. ERPNext Payment Type (Receive, Pay) splits into CashSale or CashPurchase DACs respectively in Acumatica. Party link (Customer or Supplier) maps to Acumatica's CustomerID or VendorID. ERPNext references to Sales Invoice or Purchase Invoice become InvoiceNbr on the Acumatica payment record.
ERPnext Enterprise - Bespoke
Stock Reconciliation
Acumatica
InvcStk
1:1ERPNext Stock Reconciliation DocType maps to Acumatica Inventory Adjustment (InvcStk) DAC. ERPNext's qty_after_transaction per item-warehouse pair becomes the adjustment quantity. ERPNext batch numbers and serial numbers on reconciliation rows map to LotSerialNbr in Acumatica's sub-grid. Reconciliation reason maps to Reason Code field in Acumatica's adjustment reason maintenance screen.
ERPnext Enterprise - Bespoke
Project
Acumatica
PMProject
1:1ERPNext Project DocType maps to Acumatica PMProject DAC. ERPNext project template status maps to Acumatica Project Status (Planned, Active, Completed). ERPNext's task hierarchy is a flat task list in Acumatica PMTask — task parent-child relationships require manual reassignment or Generic Inquiry reconstruction. Budget lines from ERPNext map to PMBudget in Acumatica Project Accounting.
ERPnext Enterprise - Bespoke
BOM
Acumatica
BOM
1:1ERPNext BOM DocType maps to Acumatica BOM (Bill of Materials) DAC. ERPNext item-warehouse BOM rows translate to BOMMaterialDetail lines with ScrapFactor and BOM Operations translate to BOMOperationDetail. ERPNext's BOM routing (workstation types, operating costs) becomes OperationID references in Acumatica's routing tab. Multiple active BOM versions in ERPNext require version-number mapping in Acumatica's BOM revision model.
ERPnext Enterprise - Bespoke
Custom Field (ERPNext DocType JSON)
Acumatica
User-Defined Field (UDF)
1:1ERPNext stores custom fields as JSON within each DocType row — there is no separate custom field entity. For Acumatica, each ERPNext custom field must be created individually as a UDF through the UDF editor, specifying the DAC (such as Customer or InventoryItem), field type, and label. The Acumatica UDF schema must be established before any data migration runs so that UDF values are loaded as extended-property rows after the parent record exists.
| ERPnext Enterprise - Bespoke | Acumatica | Compatibility | |
|---|---|---|---|
| Customer | Customer1:1 | Fully supported | |
| Supplier | Vendor1:1 | Fully supported | |
| Item | InventoryItem1:1 | Fully supported | |
| Account | Account1:1 | Fully supported | |
| Sales Order | SalesOrder1:1 | Fully supported | |
| Purchase Order | PurchaseOrder1:1 | Fully supported | |
| Delivery Note | Shipment1:1 | Fully supported | |
| Purchase Receipt | Receipt1:1 | Fully supported | |
| Payment Entry | Payment1:1 | Fully supported | |
| Stock Reconciliation | InvcStk1:1 | Fully supported | |
| Project | PMProject1:1 | Fully supported | |
| BOM | BOM1:1 | Fully supported | |
| Custom Field (ERPNext DocType JSON) | User-Defined Field (UDF)1:1 | 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.
ERPnext Enterprise - Bespoke gotchas
Open-source licence does not cover implementation or hosting costs
Rate limiting is site-configured and returns HTTP 429
No documented bulk-read API for large DocTypes
Major version upgrades break custom DocType scripts
CSV Data Export does not include file attachments
Acumatica gotchas
API user licenses cap concurrent sessions and request throughput
Multi-tenant filtering requires CompanyID awareness
Custom fields require separate discovery before field mapping
Notes and attachments use a separate linked table structure
Implementation timelines frequently run 3–9 months end-to-end
Pair-specific challenges
Migration approach
Schema discovery and Acumatica tenant audit
FlitStack AI inventories every active ERPNext DocType via the Data Export tool and API, categorizing them by record volume and dependency depth. We identify JSON-embedded custom fields per DocType, list ERPNext's company settings and branch equivalents, audit the Chart of Accounts structure, and inventory all ERPNext file attachments in the file store. This produces a Migration Scope Document: a ranked list of DocTypes, custom field extraction requirements, branch mapping plan, and UDF schema blueprint for Acumatica. Your Acumatica admin reviews the UDF blueprint and creates UDF definitions in Acumatica before data loading begins.
Acumatica UDF schema creation and branch configuration
FlitStack AI delivers a UDF creation guide specifying for each Acumatica DAC (Customer, Vendor, InventoryItem, etc.): the UDF label, field type, and pick-list values derived from ERPNext JSON field data. We also deliver a branch and organization mapping plan: each ERPNext company becomes one Acumatica branch (or separate tenant), and ERPNext cost centers and departments map to Acumatica activated dimension classes. The Acumatica admin creates the UDF schema in the UDF editor (SM205030) and configures branches in the Organization Structure (GL102000) before any data loads run.
DocType data extraction and Acumatica DAC transformation
FlitStack AI pulls every ERPNext DocType via the Data Export tool and API. For each record, we parse the JSON custom-field payload field by field, resolve ERPNext foreign-key references (Customer link in Sales Order resolves to CustomerID; Warehouse link resolves to BranchID + WarehouseID in Acumatica), apply value mappings for pick-list fields (ERPNext territory name to Acumatica TaxZoneID), and write the transformed records in Acumatica's REST API batch format. Records are loaded in dependency order: Items and Accounts first, then Customers and Suppliers, then transactions. For each DocType, FlitStack runs a validation pass against Acumatica's required-field constraints before committing.
Sample migration with field-level diff and UDF coverage check
A representative sample of 200–500 records per major DocType (Customer, Supplier, Item, Sales Order) migrates first. FlitStack generates a field-level diff comparing source ERPNext values against destination Acumatica field values, including UDF rows. You verify that all ERPNext custom fields appear as Acumatica UDF records with the correct values. Any missing UDF definitions, pick-list value gaps, or constraint violations are flagged and resolved before the full migration runs. This sample pass validates the entire transformation pipeline end-to-end and establishes the de-duplication logic for the delta run.
Full migration with delta pickup and post-migration audit log
FlitStack AI runs the full migration in dependency order across all DocTypes. A delta pickup window of 24–48 hours captures any ERPNext records created or modified during the cutover period. Every operation is recorded in an audit log showing source record ID, destination record ID, UDF values loaded, and owner/branch assignment. If reconciliation fails, a one-click rollback reverts all Acumatica inserts. You receive the audit log with record counts per DocType, UDF coverage percentage, and unmatched owner/branch flags. Workflow and automation definitions are exported as a JSON reference package for Acumatica rebuild.
Platform deep dives
ERPnext Enterprise - Bespoke
Source
Strengths
Weaknesses
Acumatica
Destination
Strengths
Weaknesses
Complexity grading
Standard ERP migration. 1 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 ERPnext Enterprise - Bespoke and Acumatica.
Object compatibility
1 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
ERPnext Enterprise - Bespoke: Configurable per-site via site_config.json (default 600 seconds of request time per hour); defaults to HTTP 429 on exceedance with Retry-After header.
Data volume sensitivity
ERPnext Enterprise - Bespoke 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 ERPnext Enterprise - Bespoke to Acumatica migration scoping. Not seeing yours? Book a call.
Walk through your ERPnext Enterprise - Bespoke to Acumatica migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave ERPnext Enterprise - Bespoke
Other ways to arrive at Acumatica
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.