Somewhere between “we can manage inventory in a spreadsheet” and “we need a real ERP integration” there is a point every growing Shopify merchant hits, usually signalled by the same symptoms: stock counts that do not match between the warehouse and the website, staff manually re-keying orders into accounting software, and a finance team that no longer trusts the numbers coming out of Shopify without double-checking them.
This post is about what actually needs to happen for a Shopify-ERP integration to work properly, the real approaches available (native connectors, middleware, custom API builds), the genuine trade-offs of each, and, importantly, when you do not actually need a full ERP integration yet. Too many merchants either over-invest in a custom integration before they need one, or under-invest and end up with the exact reconciliation problems an integration was supposed to prevent.
We are writing this from the position of having scoped and built these integrations for Australian merchants across different ERPs and volumes. The mechanics below apply broadly whether you are connecting to NetSuite, MYOB, Xero, Cin7, SAP Business One, or something more niche.
What an ERP integration actually needs to sync
Before comparing tools or approaches, it helps to be precise about what data actually needs to move, in which direction, and how urgently.
Inventory levels, Near real-time in both directions. Shopify needs current stock to avoid overselling; the ERP needs to know what has sold to keep its own records accurate. This is usually the most time-sensitive sync in the whole integration, because even a 15-30 minute lag can cause overselling on fast-moving SKUs, particularly around promotions.
Orders, Typically near real-time, one direction (Shopify to ERP), so the order can be picked, packed, invoiced, and reported on in the system of record. Some businesses also need order status flowing back to Shopify (fulfilment confirmation, tracking numbers) so customers get accurate updates.
Customer data, Often batch or near real-time depending on whether the ERP drives customer-specific pricing or credit terms (common in B2B and wholesale setups). If customers place orders through both a B2B portal and Shopify, this sync becomes more important and more complex.
Pricing, Direction depends on where pricing is actually managed. Many merchants set retail pricing in Shopify and wholesale/tiered pricing in the ERP, which means sync needs to be selective rather than a blanket mirror.
Fulfilment status, Usually ERP to Shopify, so tracking numbers and shipped status reach the customer-facing order without manual entry.
Financial data (invoices, credit notes, payment reconciliation), Often batch, since accounting workflows are less time-critical minute to minute but need to be accurate and complete, particularly for GST reporting.
The mistake we see most often is treating “the integration” as one single thing that needs to be uniformly real-time. In practice, a good integration treats each data type differently, inventory near-instant, financial reconciliation batched overnight, because forcing everything into real-time sync adds cost and fragility without adding real business value.
The three real approaches
Native or certified connectors
Pre-built apps in the Shopify App Store (or offered directly by the ERP vendor) that handle a defined, common set of sync scenarios out of the box. Examples in the Australian market include dedicated connectors for Cin7, and accounting-focused native integrations for platforms like Xero and MYOB.
Where this works well: Standard business models, single or modest multi-location inventory, relatively standard order flows, no heavily customised pricing logic. Setup is faster (weeks, not months) and ongoing maintenance is largely the vendor’s problem, not yours.
Where it breaks down: Once your business has workflow quirks the connector was not built for, split shipments, complex bundle/kitting logic, non-standard tax handling, or multi-entity setups, you end up fighting the tool’s assumptions rather than working with them. Support for edge cases is usually limited to what the connector vendor has chosen to build, which you do not control.
Middleware / iPaaS platforms
Integration platforms (Celigo, Workato, Boomi, and similar) that sit between Shopify and the ERP, letting you configure sync logic, field mapping, and transformation rules without writing a full custom application. Most support Shopify’s Admin API and webhooks on one side and standard ERP connectors (NetSuite, SAP, Dynamics) on the other.
Where this works well: Businesses with genuinely custom logic needs but not enough engineering resource to maintain fully custom code, you get configurability without a from-scratch build. Good middleware platforms also give you visibility into failed syncs and retry logic, which matters enormously for reconciliation (see below).
Where it breaks down: Licensing costs for these platforms are ongoing and not trivial, and someone on your team (or your agency) still needs to understand the platform well enough to maintain and extend the flows as your business changes. It is not “set and forget”, it is a configuration layer that still needs care.
Custom API builds
Built directly against Shopify’s Admin API (REST or GraphQL) and webhook system, calling the ERP’s own API or middleware layer. This is the most flexible option and the only one that can handle truly bespoke business logic, a manufacturing business with complex bill-of-materials-driven inventory, for example, or a multi-brand operation running several Shopify stores against one ERP instance.
Where this works well: Complex, high-volume, or genuinely unique operational logic where no connector or middleware template fits. Also the right call when order volume is high enough that Shopify’s API rate limits need careful management (batching, bulk operations via GraphQL, webhook-driven event processing rather than polling).
Where it breaks down: Cost and ongoing maintenance burden are real. Custom code needs monitoring, error handling, and updates when Shopify’s API versions change (Shopify deprecates API versions on a quarterly cycle, and REST Admin API surface is gradually being superseded by GraphQL, so a custom build needs someone keeping it current). This is not a “build once” investment, budget for ongoing support the same way you would for any core business system.
The real trade-offs, side by side
| Native/certified connector | Middleware/iPaaS | Custom API build | |
|---|---|---|---|
| Setup time | Fastest (days-weeks) | Moderate (weeks) | Longest (months) |
| Upfront cost | Lowest | Moderate | Highest |
| Ongoing cost | App subscription | Platform licence + config time | Development/maintenance retainer |
| Flexibility | Limited to vendor’s use cases | High, within platform constraints | Unlimited, but you own it |
| Handles complex logic | Poorly | Reasonably well | Best |
| Who maintains it | Vendor | You/agency, using the platform | You/agency, from scratch |
Key evaluation criteria before you choose
Multi-location inventory support. If you fulfil from more than one warehouse, 3PL, or retail location, check whether the integration approach can map Shopify’s native multi-location inventory correctly to the ERP’s own location/warehouse structure, this is a common gap in simpler connectors that assume a single stock pool.
Order volume and API rate limits. Shopify’s Admin API enforces rate limits (calculated differently for REST vs GraphQL, and higher for Shopify Plus stores). If you are processing thousands of orders a day, a naive polling-based integration can hit limits and fall behind. Webhook-driven architecture (Shopify pushes events out, rather than the integration constantly asking “anything new?”) scales much better and is worth insisting on regardless of which approach you choose.
Returns and exchanges handling. This is the most commonly underspecified requirement. Ask explicitly: when a return is processed in Shopify, does inventory get restocked in the ERP automatically? Does a refund trigger the right financial entries? Many “successful” integrations handle the happy path (order in, fulfilled, done) well and handle returns as an afterthought, which is exactly where reconciliation problems start.
Error handling and reconciliation. What happens when a sync fails, a product SKU mismatch, a webhook that times out, a duplicate order? A good integration has visible error logging and either automatic retry or a clear manual reconciliation process. An integration with no error visibility just fails silently, and you find out three weeks later when finance can’t make the numbers balance.
Shopify Plus features, if applicable. If you are on Shopify Plus, check whether the integration approach properly supports things like multiple Shopify stores under one Plus organisation, Shopify Flow-triggered automation, or B2B-specific objects (company accounts, price lists) if you run wholesale through Shopify’s native B2B features. Not every connector or middleware template was built with Plus-specific data models in mind.
A practical evaluation framework
Work through these in order before committing to an approach:
- Map your actual data flows, list every data type (inventory, orders, customers, pricing, fulfilment, financials), which system is the source of truth for each, and how time-sensitive each one genuinely is.
- Identify your non-standard requirements, kitting/bundling, multi-location, multi-entity, complex tax or GST handling, B2B pricing tiers. Be honest about how many of these you actually have versus assume you might need later.
- Check for an existing certified connector for your specific ERP first, if one exists and covers your data flows, it is usually the fastest and cheapest starting point.
- If the connector falls short on 1-2 specific gaps, consider whether middleware can bridge just those gaps rather than jumping straight to a full custom build.
- Only move to custom development when the business logic itself (not just the connection) is genuinely bespoke, this is a build-vs-buy decision worth treating seriously, since the ongoing maintenance commitment is real.
- Plan for reconciliation from day one, decide who checks for sync failures, how often, and what the manual fallback process is when (not if) something breaks.
When you actually need an ERP integration vs when simpler tools are enough
Not every store needs this. If you are running a single-location store, moderate order volume, and your main pain point is stock accuracy rather than financial or fulfilment complexity, a dedicated inventory management integration may solve the actual problem without the cost and maintenance commitment of a full ERP sync. Tools built specifically for multi-channel stock sync are often lighter to implement and cheaper to run than connecting a full ERP.
A genuine ERP integration earns its cost when you have real accounting complexity (multi-entity, complex GST/BAS reporting, inventory costing methods like FIFO/weighted average that need to be consistent across systems), meaningful order volume where manual re-entry is a real labour cost, or multiple sales channels (retail POS, wholesale, Shopify) that all need to hit one financial and inventory source of truth. If none of that applies yet, it is entirely reasonable to hold off and revisit the decision as volume grows, over-building integration infrastructure before you need it is a common way agencies (not just Nexly, generally) overcharge growing merchants.
If you are trying to work out which category you are in, or which specific ERP connection makes sense, NetSuite, Cin7, Xero, or something else, Nexly’s Shopify ERP integrations service is a reasonable place to start the conversation, since the right approach genuinely depends on your order volume, catalogue complexity, and which system holds the financial source of truth.
FAQ
How much does a Shopify ERP integration cost in Australia?
It varies enormously by approach and complexity, a certified connector might run to a modest monthly app fee, while a custom API build is a proper project-scale investment with ongoing maintenance costs on top. The honest answer is that cost should be scoped against your specific data flows and complexity, not quoted as a flat number, because a single-warehouse retailer and a multi-entity wholesale operation are not comparable builds.
Can Shopify sync inventory with an ERP in real time?
Near real-time, yes, when the integration is built on Shopify’s webhook system rather than periodic polling. True instant sync is not realistic given normal network and processing latency, but a well-built integration keeps the lag to minutes, which is sufficient to prevent overselling for the vast majority of businesses.
Do I need Shopify Plus to integrate with an ERP?
No, standard Shopify plans support ERP integration through the Admin API and webhooks. Shopify Plus becomes relevant if you need higher API rate limits for very high order volumes, run multiple stores under one organisation, or use Plus-specific features like native B2B company accounts that the integration needs to account for.
What is the difference between an ERP integration and an inventory management app?
An inventory management app typically focuses narrowly on stock levels and multi-channel/multi-location sync. A full ERP integration is broader, it also touches orders, customer data, pricing, and financial records, because the ERP is usually the system of record for the whole business, not just stock. If stock accuracy is your only real pain point, the narrower tool is often the better starting point.
What happens if the ERP integration goes down or a sync fails silently?
This is exactly why error handling and reconciliation need to be part of the evaluation, not an afterthought. A properly built integration logs failures and either retries automatically or flags them for manual review; without that, failures surface as mismatched stock counts or missing orders that someone only notices days later, which is far more expensive to fix than the monitoring would have cost.
Ready to work out the right approach for your store?
If you are weighing up a connector, middleware, or a custom build and want an honest read on which fits your order volume and complexity, book a call with the team or start with a Shopify audit to see exactly where your current setup is creating manual work.