ERP migration
Field-level mapping, validation, and rollback between WinMan ERP and Odoo ERP. We move data and schema; workflows are rebuilt natively in Odoo ERP.
WinMan ERP
Source
Odoo ERP
Destination
Compatibility
11 of 12
objects map 1:1 between WinMan ERP and Odoo ERP.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from WinMan ERP to Odoo ERP is a manufacturing-data migration with specific complexity around configured products, multi-level BOMs, and transaction sequencing. WinMan's single-database architecture stores BOM hierarchies and product configurations that require careful decomposition before they can land in Odoo's modular app structure. WinMan's own migration guidance specifies that open and current transactions migrate last, near the point of launch, which we honour explicitly to prevent dual-entry windows during cutover. We include a mandatory data-cleanup phase because WinMan's own documentation acknowledges that ERP migrations are the right moment to remove duplicate and inaccurate data before it transfers into the new system. Workflows, automations, and custom reports do not migrate as code; we deliver a written inventory of these for the customer's team to rebuild in Odoo's studio environment.
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 WinMan ERP object lands in Odoo ERP, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
WinMan ERP
Chart of Accounts
Odoo ERP
Account (Accountant app)
1:1WinMan maintains a fully integrated financial module with chart of accounts, journal entries, and AP/AR. We map accounts 1:1 using account codes, preserving cost-centre assignments where WinMan uses multi-entity structures. WinMan's account hierarchy maps to Odoo's chart of accounts structure (account.account model). Odoo's Accountant app requires configuration of debit/credit account types and tax mapping, which we set up during the schema-design phase before any data loads.
WinMan ERP
Items / Products with Bills of Materials
Odoo ERP
Product Template + Bill of Materials
1:1WinMan Items with Bills of Materials map to Odoo Product Templates with associated BOM records (mrp.bom model). WinMan's BOM type (kit, single-level, multi-level) maps to Odoo BOM type (kit, manufacturing). We export the full product hierarchy including component links and preserve the bom_line parent reference through explicit linkage. Odoo's product type (stockable, consumable, service) is assigned based on WinMan item type during the mapping phase.
WinMan ERP
Configured Products / Product Configurator
Odoo ERP
Product Template + BOM Lines + Variants
1:manyWinMan's product configurator stores feature/option matrices with rules and dependencies. Where configured products are represented differently in Odoo, we decompose the configuration into its component BOM lines and map them individually, preserving the parent-child relationship through explicit product variant linkage. The original WinMan feature/option matrix is documented in a custom Odoo field for admin reference. Odoo's optional_product_configurator module handles this natively in later versions, and we use it where the customer's target Odoo version supports it.
WinMan ERP
Customer / Customer Sites
Odoo ERP
Contact / Partner
1:1WinMan customer records including addresses, contact details, and credit terms map to Odoo Partner records (res.partner) with the customer flag set. WinMan's customer-to-site mapping translates to Odoo delivery addresses on the partner record. Multi-currency assignments on WinMan customers map to Odoo's currency property on the partner. We preserve the customer code as an external reference field for reconciliation.
WinMan ERP
Vendor / Purchasing Terms
Odoo ERP
Contact / Partner
1:1WinMan vendor records with purchasing terms and lead times map to Odoo Partner records with the supplier flag set. Vendor-specific price lists from WinMan map to Odoo product supplierinfo records (purchase.pricelist). Lead times map to the seller_delay field on the product's supplier info. We map vendor addresses as delivery addresses on the supplier partner record.
WinMan ERP
Sales Orders
Odoo ERP
Sale Order
1:1Open and historical sales orders map to Odoo sale.order records. WinMan guidance specifies that live orders migrate last, near go-live; we honour this sequencing explicitly. We export a snapshot of open orders immediately before cutover, then replay any delta orders that occurred during the final testing window. Sales order lines map to sale.order.line with product, quantity, and pricing. WinMan's delivery commitments map to Odoo's commitment_date on the order.
WinMan ERP
Purchase Orders
Odoo ERP
Purchase Order
1:1WinMan purchase orders and associated goods-received notes map to Odoo purchase.order and stock.picking records. Where purchase orders reference configured BOMs, we preserve the item-link relationship during migration by resolving the product template and variant references in Odoo before the PO import. Odoo's RFQ-to-PO workflow is documented for the customer's purchasing team during training handoff.
WinMan ERP
Work Orders / Production Orders
Odoo ERP
Manufacturing Order (MRP)
1:1WinMan work orders with routing steps, labour allocations, and work-centre assignments require field-level mapping to Odoo's mrp.production model. WinMan's work order structure varies by manufacturing mode (job, batch, repetitive), and Odoo's MRP app supports all three modes with workcentres and work order tracking. We map WinMan work-centre codes to Odoo mrp.workcenter records and preserve the routing sequence. WinMan labour allocations map to Odoo's workorder time-tracking fields.
WinMan ERP
Inventory / Stock
Odoo ERP
Stock Quant
1:1Current stock levels, bin locations, and batch/serial numbers map to Odoo stock.quant records. WinMan's warehouse-zone assignments map to Odoo's warehouse and location hierarchy (stock.location model). We preserve the unit of measure from WinMan and map it to Odoo's uom.uom model. For stock valuations, we map WinMan's cost method to Odoo's inventory valuation configuration (manual, automated, periodic).
WinMan ERP
Batch and Serial Traceability Records
Odoo ERP
Stock Lot / Stock Serial Number
1:1Traceability links between batch/serial numbers, incoming materials, and finished goods require careful sequencing. WinMan stores traceability graphs linking raw material lots to production batches and finished goods. We map these to Odoo stock.production.lot records and preserve the traceability graph through Odoo's lot tracking reports. Odoo's 'lot_on_product_form' and 'block_tracking' traceability settings are configured during the schema-design phase to match the customer's regulatory requirements.
WinMan ERP
Custom Fields on Standard Objects
Odoo ERP
Custom Fields / Ir.model.fields
1:1WinMan supports user-defined fields on standard objects. We extract custom field definitions and map their values to equivalent custom fields in Odoo using the ir.model.fields model. Where Odoo does not have an equivalent field type, we flag the field for manual review and note the value in a migration reference column in the imported data. Odoo's technical settings or a custom module handles field creation before data import begins.
WinMan ERP
Users and Roles
Odoo ERP
Users and Access Rights
1:1WinMan user accounts with role-based permissions can be exported, but role definitions vary between ERP systems. We extract WinMan user records and map them to Odoo res.users. WinMan role names and access scope are mapped to Odoo access rights groups (res.groups). We flag any security differences between WinMan and Odoo permission models during discovery. Odoo access rights are rebuilt using Odoo's security groups and record rules rather than replicated as-is.
| WinMan ERP | Odoo ERP | Compatibility | |
|---|---|---|---|
| Chart of Accounts | Account (Accountant app)1:1 | Fully supported | |
| Items / Products with Bills of Materials | Product Template + Bill of Materials1:1 | Fully supported | |
| Configured Products / Product Configurator | Product Template + BOM Lines + Variants1:many | Fully supported | |
| Customer / Customer Sites | Contact / Partner1:1 | Fully supported | |
| Vendor / Purchasing Terms | Contact / Partner1:1 | Fully supported | |
| Sales Orders | Sale Order1:1 | Fully supported | |
| Purchase Orders | Purchase Order1:1 | Fully supported | |
| Work Orders / Production Orders | Manufacturing Order (MRP)1:1 | Mapping required | |
| Inventory / Stock | Stock Quant1:1 | Fully supported | |
| Batch and Serial Traceability Records | Stock Lot / Stock Serial Number1:1 | Mapping required | |
| Custom Fields on Standard Objects | Custom Fields / Ir.model.fields1:1 | Fully supported | |
| Users and Roles | Users and Access Rights1:1 | 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.
WinMan ERP gotchas
Open transactions migrated last creates dual-entry window
Per-feature pricing model means new modules cost extra
Product data cleanup is required before migration
Configured products and multi-level BOMs require schema mapping
Odoo ERP gotchas
No rollback for CSV imports
External ID conflicts on re-import
Many2many field encoding in CSV imports
Large export timeouts require batching
Version schema drift between Odoo releases
Pair-specific challenges
Migration approach
Discovery and Odoo edition selection
We audit the WinMan source system across modules licensed, transactional volumes (items, BOM levels, open orders, work orders, inventory records), multi-entity and multi-currency configuration, and custom field usage. We assess the customer's target Odoo edition (Community free on-premise, Odoo Online at $24.90/user/mo for Essential, or Odoo Enterprise for advanced manufacturing) based on the module footprint identified in WinMan. We engage WinMan directly to confirm API export capabilities and any database-access options for fields not exposed via REST endpoints. The discovery output is a written migration scope with WinMan module to Odoo app mapping and a data-cleanup requirements document.
Schema design and BOM decomposition planning
We design the destination Odoo schema before any data loads. This includes creating product templates and BOM structures that reflect WinMan's item and component hierarchy, configuring the Odoo chart of accounts to match WinMan account codes, setting up warehouse and location hierarchies from WinMan site/zone data, and planning the decomposition of WinMan configured products into Odoo BOM variants. We pre-create any custom fields in Odoo (ir.model.fields) before the migration run to ensure the schema can accept all WinMan data at load time.
Data cleanup and master data pre-migration
We run a mandatory data-quality phase before the main migration. This includes duplicate detection on WinMan customer and item records, standardisation of product categorisation to match Odoo's product categories, removal of inactive items and archived customers, and correction of inconsistent product codes and unit-of-measure mismatches. We use WinMan's own export capabilities (REST API or database export) to produce a pre-cleaned dataset, then import it into Odoo as the foundation for subsequent transactional data loads. This phase is scoped explicitly because it is the step most frequently underestimated by teams who plan a migration without a dedicated cleanup window.
Sandbox migration and reconciliation
We run a full migration into an Odoo test database using production-like data volumes before touching live data. The customer's operations and finance leads reconcile record counts (accounts, products, BOMs, customers, vendors, orders), spot-check 25-50 records against WinMan source data, and validate BOM linkage and product variant relationships. Any mapping corrections — incorrect unit of measure assignments, missing cost-centre mappings, variant naming differences — are resolved in this phase. No production migration begins until the sandbox sign-off is received.
Production migration in dependency order
We run production migration in record-dependency order: chart of accounts first, then products and BOMs with their component linkages resolved, then customers and vendors, followed by historical orders and inventory levels. WinMan open orders and current transactions are the final phase, migrated near the agreed go-live date with a defined delta-capture window. We use Odoo's XML-RPC API with batch processing and rate-limit handling for all imports. Each phase emits a row-count reconciliation report before the next phase begins, and we resolve any orphaned records (products without BOMs, customers without site assignments) before proceeding.
Cutover, validation, and workflow rebuild handoff
We freeze WinMan writes during cutover, capture the final delta of any records modified during the migration window, replay that delta into Odoo, and enable Odoo as the system of record. We run a post-migration reconciliation comparing WinMan and Odoo record counts and a sample of financial balances. We deliver a written inventory of WinMan workflows, automations, and custom reports requiring rebuild in Odoo Studio, along with the BOM decomposition reference document for the product configurator. We do not rebuild WinMan workflows as Odoo automated actions within migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
WinMan ERP
Source
Strengths
Weaknesses
Odoo ERP
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 WinMan ERP and Odoo ERP.
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
WinMan ERP: Not publicly documented.
Data volume sensitivity
WinMan 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 WinMan ERP to Odoo ERP migration scoping. Not seeing yours? Book a call.
Walk through your WinMan ERP to Odoo 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 WinMan ERP
Other ways to arrive at Odoo 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.