Migrate your inoERP data
Open-source PHP/Go-based ERP with a generous free tier and manufacturing-first data model. It targets small to midsize businesses that need Oracle R12/SAP-level functionality without enterprise licensing costs.
In its favor
Why people choose inoERP
The signal that keeps inoERP on the shortlist. Sourced from G2, Capterra, and customer scoping calls.
inoERP is 100% free and open source under the MIT licence, making it attractive to small businesses that need ERP functionality without annual SaaS subscriptions.
The manufacturing and supply chain modules include BOM, work orders, WIP, MRP, and a dynamic pull-based planning system that adapts lot sizes to real-time demand shifts.
Multi-database support means organisations already running Oracle 12c, MariaDB, or MySQL can adopt inoERP without changing their existing infrastructure stack.
OneApp provides a no-code API integration layer that connects to Oracle, Salesforce, SAP, and other mainstream platforms without custom development.
The system targets small to midsize manufacturing, distribution, and service organisations that find Tier 1 ERP pricing prohibitive but need more than basic accounting software.
The project management module is incomplete and underdeveloped, frustrating organisations that need integrated project tracking alongside operations.
Documentation is sparse and community support is limited, making troubleshooting configuration issues and customisation challenges time-consuming for self-hosted deployments.
The platform has undergone a major architecture migration from PHP to Go back-end with a Flutter front-end, creating confusion about which version to deploy and whether older PHP documentation still applies.
Hosting, maintaining, and securing a self-managed ERP falls on the customer's team, generating hidden labour costs that often exceed the savings from free licensing.
Reasons to switch
Why people leave inoERP
The recurring reasons buyers give for replacing inoERP. Presented as facts, not knocks.
Platform scorecard
Strengths, weaknesses, and where inoERP fits
Grades across six dimensions, plus a SWOT-style view of where the platform shines and where it falls short.
SWOT — strengths, weaknesses, and use-case fit
Strengths
Weaknesses
Where it works
Where it struggles
Pricing tiers
inoERP pricing overview
inoERP is entirely free and open source. There are no paid tiers, per-user fees, or module add-ons. The only costs are the customer's own infrastructure and labour for hosting, maintenance, and any third-party support contracts they negotiate independently.
Open Source
Tier 1 of 1
Free
What's included
Need help selecting your ERP?
Book a free 30 minute consultationPricing is informational. FlitStack AI does not bill on inoERP's schedule — see our quote-based pricing →
What gets migrated
inoERP object support
Object-by-object support for inoERP migrations. Per-pair details surface during scoping.
Chart of Accounts
Fully supportedinoERP stores the full chart of accounts with account types, balances, and currency assignments in the GL module. We export account codes, descriptions, types, and current balances. Roll-forward balances are mapped to the destination's fiscal year structure.
Journal Entries
Mapping requiredJournal entries in inoERP carry header-level and line-level data including debit/credit amounts, account assignments, and reference numbers. We preserve all posted entries but flag entries with non-standard currency or exchange rate data for manual review before import into the destination.
Accounts Receivable / Accounts Payable
Mapping requiredOpen AR and AP subledgers include customer/supplier records, invoice headers, and line items. We extract open invoices by status and map inoERP's party structures to the destination's customer and vendor objects. Closed historical records require value mapping based on the destination's retention policy.
Items / Inventory
Fully supportedinoERP tracks items with UOM, cost layers, category hierarchies, and on-hand quantities across multiple inventory locations. We export item definitions, on-hand balances, and location assignments. Lot/serial number history is preserved where it exists in the source.
Sales Orders / Purchase Orders
Mapping requiredOpen and closed orders in inoERP contain header fields (dates, terms, party references) and line items (item, quantity, price, warehouse). We export order status so that closed orders can be mapped to historical records while open orders are re-created as active documents in the destination.
Work Orders / WIP
Mapping requiredWork orders in inoERP include routing steps, material issues, resource transactions, and completion records. The WIP ledger aggregates costs per work order. We extract the full work order history but note that post-completion cost updates in inoERP may need to be reconciled against the destination's costing module after import.
Bills of Material / Routings
Fully supportedBOMs and routings define the product structure and manufacturing steps. inoERP supports super BOMs and multi-level structures. We export the full BOM hierarchy and routing sequence. Phantom BOMs and co-products are mapped to the destination's equivalent structures.
Employees / HR
Mapping requiredinoERP HR includes employee profiles, job definitions, positions, compensation records, leave balances, and approval hierarchies. We extract employee data and position assignments but flag compensation records that include effective-dated pay components requiring alignment with the destination's payroll effective-dating model.
Users / Roles
Mapping requiredinoERP uses role-based access control with users, roles, and permissions defined in the Admin module. We export user accounts and role assignments. Mappings must translate inoERP role names and permission sets to the destination's equivalent RBAC model.
Documents / Attachments
Not in this platforminoERP supports document storage in its CMS module, but attachment links are stored as paths to locally hosted files. We do not migrate binary attachments. Customers should migrate file references separately and re-link documents in the destination system post-migration.
Payroll / Bank Files
Mapping requiredinoERP payroll generates electronic bank files for direct deposit. We export payroll registers, leave balances, and compensation history. Bank file formats are customisable via JavaScript REST APIs and may require destination-specific formatting before use in the new payroll system.
Asset Accounting
Fully supportedAsset registers in inoERP include acquisition details, depreciation schedules, and asset categories. We export the full asset record including book values and accumulated depreciation. Depreciation methods are mapped to the destination's equivalent schedule definitions.
| Object | Support | Notes |
|---|---|---|
| Chart of Accounts | Fully supported | inoERP stores the full chart of accounts with account types, balances, and currency assignments in the GL module. We export account codes, descriptions, types, and current balances. Roll-forward balances are mapped to the destination's fiscal year structure. |
| Journal Entries | Mapping required | Journal entries in inoERP carry header-level and line-level data including debit/credit amounts, account assignments, and reference numbers. We preserve all posted entries but flag entries with non-standard currency or exchange rate data for manual review before import into the destination. |
| Accounts Receivable / Accounts Payable | Mapping required | Open AR and AP subledgers include customer/supplier records, invoice headers, and line items. We extract open invoices by status and map inoERP's party structures to the destination's customer and vendor objects. Closed historical records require value mapping based on the destination's retention policy. |
| Items / Inventory | Fully supported | inoERP tracks items with UOM, cost layers, category hierarchies, and on-hand quantities across multiple inventory locations. We export item definitions, on-hand balances, and location assignments. Lot/serial number history is preserved where it exists in the source. |
| Sales Orders / Purchase Orders | Mapping required | Open and closed orders in inoERP contain header fields (dates, terms, party references) and line items (item, quantity, price, warehouse). We export order status so that closed orders can be mapped to historical records while open orders are re-created as active documents in the destination. |
| Work Orders / WIP | Mapping required | Work orders in inoERP include routing steps, material issues, resource transactions, and completion records. The WIP ledger aggregates costs per work order. We extract the full work order history but note that post-completion cost updates in inoERP may need to be reconciled against the destination's costing module after import. |
| Bills of Material / Routings | Fully supported | BOMs and routings define the product structure and manufacturing steps. inoERP supports super BOMs and multi-level structures. We export the full BOM hierarchy and routing sequence. Phantom BOMs and co-products are mapped to the destination's equivalent structures. |
| Employees / HR | Mapping required | inoERP HR includes employee profiles, job definitions, positions, compensation records, leave balances, and approval hierarchies. We extract employee data and position assignments but flag compensation records that include effective-dated pay components requiring alignment with the destination's payroll effective-dating model. |
| Users / Roles | Mapping required | inoERP uses role-based access control with users, roles, and permissions defined in the Admin module. We export user accounts and role assignments. Mappings must translate inoERP role names and permission sets to the destination's equivalent RBAC model. |
| Documents / Attachments | Not in this platform | inoERP supports document storage in its CMS module, but attachment links are stored as paths to locally hosted files. We do not migrate binary attachments. Customers should migrate file references separately and re-link documents in the destination system post-migration. |
| Payroll / Bank Files | Mapping required | inoERP payroll generates electronic bank files for direct deposit. We export payroll registers, leave balances, and compensation history. Bank file formats are customisable via JavaScript REST APIs and may require destination-specific formatting before use in the new payroll system. |
| Asset Accounting | Fully supported | Asset registers in inoERP include acquisition details, depreciation schedules, and asset categories. We export the full asset record including book values and accumulated depreciation. Depreciation methods are mapped to the destination's equivalent schedule definitions. |
Gotchas
What to watch for in inoERP migrations
Issues we've hit on past inoERP migrations, tagged by severity. FlitStack AI handles every one — surfacing them up front because buyer engineering teams want to know.
Architecture version split between PHP and Go/Flutter
OneApp API has no publicly documented rate limits
Closed-order and historical transaction volume drives migration scope
Dynamic pull system recalculates lot sizes at runtime
Self-hosting creates data export dependency on the customer
| Severity | Issue |
|---|---|
| High | Architecture version split between PHP and Go/Flutter |
| Medium | OneApp API has no publicly documented rate limits |
| Medium | Closed-order and historical transaction volume drives migration scope |
| Low | Dynamic pull system recalculates lot sizes at runtime |
| Low | Self-hosting creates data export dependency on the customer |
Leaving inoERP?
Where inoERP customers move next
6 destinations inoERP can migrate to.
How a inoERP migration works
Four steps, inoERP-specific
Connect
Not publicly documented into inoERP. Scopes limited to read-only on the data we move.
Map
We translate inoERP-specific structures (custom fields, objects, value lists) to the destination's model.
Sample
Test with a 50–200 record subset to validate inoERP quirks before production.
Migrate
Full migration with inoERP rate-limit handling. Rollback available throughout.
FAQ
inoERP migration FAQ
Answers to the questions buyers ask most during inoERP migration scoping. Not seeing yours? Book a call.
Can't find your answer?
Walk through your inoERP migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationReady when you are
Migrate inoERP.
Without the rebuild.
Free scoping call with a migration engineer. Tell us about your inoERP setup and destination — written quote back within a business day.