ERP migration

Migrate from Info.Net to Odoo ERP

Field-level mapping, validation, and rollback between Info.Net and Odoo ERP. We move data and schema; workflows are rebuilt natively in Odoo ERP.

Info.Net logo

Info.Net

Source

Odoo ERP

Destination

Odoo ERP logo

Compatibility

80%

8 of 10

objects map 1:1 between Info.Net and Odoo ERP.

Complexity

BStandard

Timeline

8-12 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Info.Net and Odoo ERP serve overlapping manufacturing ERP territory but diverge sharply on API availability, customization model, and pricing structure. Info.Net, built by LAMAR Software, has no publicly documented REST API, GraphQL endpoint, or bulk export mechanism in available research. Migration paths from Info.Net therefore depend on direct database export (if the customer has database credentials) or multi-step CSV extraction from the UI. We handle that extraction phase in-house using field-profiled export scripts. On the Odoo side, the manufacturing module covers Production Orders, Work Orders, and multi-level BOMs natively; Odoo's REST API (available on both Community and Enterprise) handles import via xmlrpc or the external API endpoint. We map Info.Net Items to Odoo product.product with unit-of-measure preservation, Info.Net Work Orders to Odoo mrp.workorder with labor tracking carried forward, and Info.Net BOMs to Odoo mrp.bom with component lines and routing steps resolved at each level. Custom workflows, alerts, and automated triggers do not migrate; we deliver a written workflow inventory for the customer's Odoo administrator to rebuild using Odoo Studio or Python modules post-migration. Implementation partners and Reddit threads confirm that Odoo manufacturing deployments require six to twelve weeks for mid-size shops, with data migration representing the most technically demanding phase.

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

Info.Net logo

Info.Net

What's pushing teams away

  • Setup complexity and legacy system integration requires significant IT time and budget, especially for manufacturers with fragmented or older source systems.
  • Monthly subscription plus annual support fees accumulate to a significant cost burden for very small manufacturers with thin margins.
  • Workflow customization is limited and modifications beyond base configurations are difficult to implement, frustrating teams with unique manufacturing processes.

Choosing

Odoo ERP logo

Odoo ERP

What's pulling them in

  • Modular pay-as-you-grow model with 80+ apps under one database — teams start with CRM and add Accounting, Inventory, or Manufacturing without switching platforms.
  • Free Community edition lets businesses validate Odoo fit before committing to Enterprise licensing costs that scale with user count.
  • Lowest per-user pricing among mid-market ERPs, with a published free tier for one app and Standard plans starting around $24.90 per user per month.
  • Native integration between modules — a confirmed Sales Order automatically updates inventory, invoicing, and accounting without manual re-entry.
  • Strong Odoo Gold Partner ecosystem provides local implementation support, reducing risk for companies without in-house developers.

Object mapping

How Info.Net objects map to Odoo ERP

Each row shows how a Info.Net 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.

Info.Net

Items

maps to

Odoo ERP

product.product + product.template

1:1
Fully supported

Info.Net Items (finished goods, raw materials, components) map to Odoo product.product records with product.template as the shared name/description layer. We preserve SKU, description, unit of measure, standard cost, and any custom fields. Where Info.Net uses a specific uom_code not native to Odoo we create the corresponding uom.uom record during schema setup. Multi-unit Items (each with its own SKU) create separate product.product records sharing the same product.template.

Info.Net

Bill of Materials

maps to

Odoo ERP

mrp.bom

1:1
Fully supported

Info.Net BOMs with component lines and revision versions map to Odoo mrp.bom records. Odoo distinguishes bom_type: 'kit' (phantom BOM that explodes components on a manufacturing order) versus 'normal' (standard build). We determine the correct type from Info.Net's BOM structure. Multi-level BOMs (sub-assemblies referencing their own BOMs) are resolved in dependency order: sub-assembly BOMs are imported first so parent BOMs can reference them via mrp.bom.line product_id resolution. Routing steps from Info.Net's production process map to mrp.routing.workcenter lines on the Odoo BOM.

Info.Net

Production Orders

maps to

Odoo ERP

mrp.production

1:1
Fully supported

Info.Net Production Orders track manufacturing jobs with status, quantity, scheduled dates, work center assignment, and completion metadata. We map them to Odoo mrp.production records preserving the original scheduled date, finished date, and scrap quantity. Production Order status (Draft, Confirmed, In Progress, Done, Cancelled) maps to Odoo's state field with the corresponding state machine transitions enforced at import time. Parent Work Orders reference the parent mrp.production record via the production_id foreign key.

Info.Net

Work Orders

maps to

Odoo ERP

mrp.workorder

1:1
Fully supported

Info.Net Work Orders assign production tasks to employees or work centers with start/end dates and labor estimates. We map them to Odoo mrp.workorder records linked to their parent mrp.production via production_id, and to the corresponding mrp.routing.workcenter via workcenter_id. We preserve the full work order lifecycle including status transitions, actual labor consumed, and any work center-specific notes. Work order timestamps carry forward as Odoo's date_start and date_finished fields.

Info.Net

Quality Control Records

maps to

Odoo ERP

stock.production_lot + custom.qc_result

lossy
Mapping required

Info.Net QC logs hold inspection results, pass/fail flags, and measurement data linked to production lots. Odoo does not have a native QC inspection object in standard Manufacturing, so we map QC records to a custom stock.production_lot record (tracking the lot or serial number) with measurement values stored in custom fields on the lot or a linked qc.measurement model. Pass/fail flags become lot stock_state or custom lot_quality_status fields. Field naming conventions differ between ERPs; we run a field-level audit during discovery to match each Info.Net measurement field to an Odoo target.

Info.Net

Customers

maps to

Odoo ERP

res.partner

1:1
Mapping required

Info.Net Customer records include billing addresses, shipping addresses, and credit limits. In Odoo, customers live in res.partner with type='contact' for addresses. Multi-address accounts (ship-to and bill-to) use separate res.partner records with parent_id pointing to the main customer record. We map Info.Net address fields to Odoo's street, city, state_id, country_id, zip, and phone fields. Credit limits migrate as custom fields or to account.move.line-based credit management if Odoo Accounting is deployed.

Info.Net

Vendors

maps to

Odoo ERP

res.partner

1:1
Mapping required

Vendor master records from Info.Net (contact details, payment terms, lead times) map to Odoo res.partner records with supplier_rank > 0 to flag them as vendors. Payment terms from Info.Net's terms_code map to Odoo account.payment.term records created during schema setup. Multi-contact handling creates separate res.partner contact records under the vendor parent. Lead time data migrates as a custom field on the vendor partner record or to the product.supplierinfo table if lead times vary per product-vendor combination.

Info.Net

Inventory Transactions

maps to

Odoo ERP

stock.move + stock.quant

1:1
Fully supported

Info.Net inventory movements (receipts, issues, adjustments, transfers) carry timestamps, quantities, locations, and cost values. We map these to Odoo stock.move records (the movement log) and stock.quant records (on-hand quantity state). Post dates are preserved as stock.move.date. Location pairs (from_location_id, to_location_id) map to Odoo's stock.location records which we pre-create or reference by name match during import. Cost values attach to stock.move.valuation or stock.quant unit_cost depending on Odoo inventory valuation method configured.

Info.Net

Custom Fields

maps to

Odoo ERP

ir.model.fields + custom field data

lossy
Mapping required

Info.Net supports custom fields on Items, Customers, and Vendors. We extract the full custom field definition set (field name, data type, required flag) during discovery. For each Info.Net custom field we create the corresponding Odoo ir.model.fields record, using x_ prefix for custom fields in Odoo standard. Custom field values are appended as extra columns during the respective object import (Items, Customers, Vendors). Any Info.Net custom fields with no matching Odoo target are flagged in the discovery report for the customer's admin to decide on disposition.

Info.Net

User Accounts

maps to

Odoo ERP

res.users

1:1
Mapping required

Info.Net User accounts carry role assignments and permission sets tied to manufacturing workflows. We map roles to Odoo's access groups (res.groups) during schema setup. Password hashes cannot migrate between systems; we flag all users for password reset on first Odoo login. Active/inactive status from Info.Net maps directly to Odoo's active flag. Users without an email in Info.Net are held in a reconciliation queue since Odoo requires an email for res.users login.

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.

Info.Net logo

Info.Net gotchas

High

Initial setup and legacy migration require IT resources

Medium

Ongoing subscription and support costs are significant for very small manufacturers

Medium

Customization beyond base workflows is limited

High

No publicly documented API in available research

Odoo ERP logo

Odoo ERP gotchas

High

No rollback for CSV imports

High

External ID conflicts on re-import

Medium

Many2many field encoding in CSV imports

Medium

Large export timeouts require batching

Medium

Version schema drift between Odoo releases

Pair-specific challenges

  • Info.Net has no public API; extraction method must be confirmed during scoping

    Available research surfaces no documented REST API, GraphQL endpoint, or bulk export endpoint for Info.Net. Migration paths depend on direct database export (if the customer has LAMAR Software database credentials and schema documentation) or multi-step CSV extraction from the Info.Net UI. We confirm the available extraction method during discovery scoping. If only CSV extraction is available, we build a field-profiled export script to extract each object in dependency order, handling pagination and multi-page exports manually. This step can add two to four weeks to the project timeline compared to a system with a documented API.

  • BOM nesting depth and routing resolution require schema pre-work

    Info.Net BOMs support multi-level nesting (sub-assemblies with their own BOMs) and routing steps tied to production work centers. Odoo enforces referential integrity: a parent BOM cannot reference a component that itself has an unimported BOM without first loading the child BOM. We resolve BOM import order during the discovery phase by building a dependency graph of all BOMs. Routing steps (work-center-specific operations) map to mrp.routing.workcenter lines; if Info.Net routing data is stored as free-text notes rather than structured fields, we flag it for manual review before migration.

  • Custom workflows, alerts, and automated triggers do not migrate

    Info.Net custom workflows and automated alerts are constrained by design but those that exist are stored in Info.Net's workflow engine and cannot be extracted as migration-ready configuration. Odoo's action rules, server actions, and automated actions are structurally different. We document every Info.Net workflow trigger, condition, and action during discovery and deliver a written inventory with Odoo equivalents. The customer's Odoo administrator or implementation partner rebuilds these post-migration. This limitation is true for any migration away from Info.Net, not specific to Odoo as a destination.

  • Quality Control field naming differs; measurement units require explicit mapping

    Info.Net QC records store measurement data with field names specific to LAMAR Software's schema (e.g., infonet_qc_measurement_1, tolerance_min, tolerance_max). Odoo has no native equivalent; we create custom fields on the lot record or a linked QC model. Measurement units (mm, PSI, degrees Celsius, ppm) require explicit mapping to Odoo uom.uom records. If Info.Net stores tolerances as free-text ranges rather than separate numeric fields, we flag them for data-cleansing before import to avoid string-to-decimal casting failures in Odoo.

  • Odoo upgrade cycles require module compatibility checks post-migration

    Odoo releases a new major version annually (currently v18). Custom modules, Python overrides, and third-party apps installed alongside the manufacturing module may require code changes when the Odoo instance is upgraded. Reddit posts and Odoo partner notes confirm that upgrade-related breakages are a recurring maintenance concern, particularly for custom manufacturing modules. We do not include post-migration Odoo upgrade management in the standard migration scope. We recommend the customer establish an Odoo partner relationship for ongoing version maintenance before the migration concludes.

Migration approach

Six steps for a successful Info.Net to Odoo ERP data migration

  1. Extraction method confirmation and discovery

    We begin by confirming whether direct database export (via LAMAR Software credentials) or CSV extraction from the Info.Net UI is available. We audit all source objects: Items, Work Orders, Production Orders, BOMs, Quality Control records, Customers, Vendors, Inventory Transactions, Custom Fields, and User Accounts. We profile each table or export for field count, row count, data quality (null rates, duplicate keys), and dependency relationships. The discovery output is a written extraction plan specifying the method, object order, and any pre-extraction data cleansing tasks. If BOM nesting exists, we build the dependency graph during this phase.

  2. Odoo schema provisioning and BOM dependency resolution

    We provision the destination Odoo manufacturing schema. This includes installing the mrp module, creating the product categories and product templates for all Info.Net Items, creating the uom.uom records required for unit-of-measure preservation, building the mrp.bom records in dependency order (sub-assembly BOMs first), creating the mrp.routing.workcenter records from Info.Net work-center data, and provisioning any custom fields on stock.production_lot for Quality Control data. All schema work happens in an Odoo Sandbox or staging environment first, validated against the customer's Odoo administrator before production migration begins.

  3. Sandbox migration and reconciliation

    We run a full migration into the Odoo staging environment using production-like data volume. The customer's operations lead and Odoo administrator review record counts (Items in, Work Orders in, BOMs in, Customers/Vendors in, QC records in, inventory transactions in), spot-check a random sample of 30-50 records against the Info.Net source for field-level accuracy, and validate BOM nesting by checking that manufactured items in Odoo show the correct component explosion on a test MO. We resolve mapping corrections before any production migration begins.

  4. Customer, Vendor, and Item master import

    We run production migration in dependency order. The first phase loads Customers and Vendors into res.partner (supplier_rank and customer_rank set appropriately), then Items into product.product and product.template. Address structures are resolved: Info.Net multi-address accounts become separate res.partner contact records with parent_id linkage. Custom field values append as extra columns. Inventory transactions are held at this stage because they depend on location records that are created after Items are loaded.

  5. Production Orders, Work Orders, and BOM import

    We import BOMs first (in resolved dependency order), then Production Orders (mrp.production), then Work Orders (mrp.workorder) linked to their parent productions and work centers. Quality Control records import as stock.production_lot entries with custom measurement fields. Historical production data with post dates is preserved in Odoo's date fields. Inventory transactions (stock.move and stock.quant) import last, after all location and product records are confirmed. We use Odoo's batch create via xmlrpc with exponential backoff on rate-limit responses.

  6. Cutover, validation, and workflow handoff

    We freeze Info.Net writes during the cutover window, run a final delta migration of any records modified during the migration phase, then switch the system of record to Odoo. We perform a post-migration reconciliation comparing total record counts per object between Info.Net and Odoo, and spot-check transaction totals (inventory value, production output counts) against the Info.Net ledger. We deliver the workflow and automation inventory document to the customer's Odoo administrator. We support a one-week hypercare window for reconciliation issues. We do not rebuild Info.Net workflows as Odoo automated actions inside the migration scope; that work is handled separately by the customer's admin team or Odoo implementation partner.

Platform deep dives

Context on both ends of the pair

Info.Net logo

Info.Net

Source

Strengths

  • Unified real-time visibility across inventory, orders, production, and quality control operations.
  • Intuitive reporting interface that empowers non-technical staff to create dashboards and alerts.
  • Cloud-native modular deployment that scales without hardware investment.
  • Mobile access for shop-floor employees to check inventory and order status.
  • 24/7 support availability across phone, email, and ticketing channels.

Weaknesses

  • Data migration and legacy integration require substantial IT resources and planning.
  • Monthly subscription and annual support fees create cost pressure for very small manufacturers.
  • Custom workflow modifications beyond base configurations are restricted and difficult to implement.
Odoo ERP logo

Odoo ERP

Destination

Strengths

  • Modular architecture with 80+ apps sharing one database — add Sales, Accounting, Inventory, and Manufacturing incrementally.
  • Free Community edition for self-hosting with no per-user license cost, backed by an active open-source community.
  • Per-user pricing starting around $24.90/month on Standard, significantly lower than comparable ERPs like NetSuite or SAP.
  • Automatic workflow propagation across modules — a confirmed sales order updates inventory, triggers invoicing, and posts accounting entries without manual steps.
  • Odoo.sh provides a managed cloud hosting environment with CI/CD for custom module deployment and staging databases.

Weaknesses

  • Performance suffers under heavy customization — large implementations with many active modules require dedicated optimization.
  • No single-click migration between Odoo major versions; each release introduces ORM changes, deprecated API calls, and schema revisions requiring manual adaptation.
  • Per-user and per-module licensing costs can escalate unpredictably for growing teams adding multiple apps.
  • Steep learning curve with hundreds of configuration options across dozens of modules creates adoption friction and training requirements.
  • Support tiers on Enterprise have inconsistent response times, pushing some customers toward alternatives with more reliable SLAs.

Complexity grading

How hard is this migration?

Standard ERP migration. 3 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 Info.Net and Odoo ERP.

  • Object compatibility

    B

    3 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

    Info.Net: Not publicly documented..

  • Data volume sensitivity

    B

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

Estimator

Estimate your Info.Net to Odoo 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 Info.Net to Odoo ERP data migrations

Answers to the questions buyers ask most during Info.Net to Odoo ERP migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Info.Net to Odoo ERP migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most manufacturing ERP migrations from Info.Net to Odoo land between eight and twelve weeks for shops with up to 10,000 Items, 5,000 Work Orders, and 200 active BOMs when direct database export credentials are available. Migrations requiring manual CSV extraction, multi-level BOM nesting resolution, full Quality Control record history, and multi-year inventory transaction ledgers extend to twelve to twenty weeks because of the data profiling, cleansing, and reconciliation work before Odoo import. The extraction method (direct DB vs. CSV) is the single largest timeline variable.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Info.Net.
Land in Odoo 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