
A Shopify ERP integration succeeds or fails on one decision made before any code: which system owns each type of data. Products might be mastered in the ERP, orders created in Shopify, inventory owned by the warehouse, and customer records split between both. Once that ownership map is written down, choosing between a prebuilt connector, an integration platform, and a custom integration becomes a practical question rather than a sales conversation.
This guide covers how to build that map, where these integrations usually break, and how to decide what kind of integration your business needs.
Signs your Shopify and ERP are not really connected
- Someone exports orders from Shopify and imports them into the ERP every day.
- Finance and ecommerce report different revenue for the same week.
- Price changes are made twice, once in each system, and sometimes only once.
- Refunds in Shopify do not reach the ERP, so accounts receivable and stock are off.
- The connector "works," but a few orders a week fail and sit in an error queue nobody checks.
The last one is the most common. The integration exists, but it has no owner, so small failures accumulate into month-end reconciliation work.
Start with a data ownership map
List every object that crosses between systems, then decide who creates it, who may change it, and which direction it flows. A typical starting point looks like this, but yours may differ.
| Data | Usual owner | Flow | Questions to settle |
|---|---|---|---|
| Product master data (SKU, cost, dimensions) | ERP | ERP to Shopify | Who owns marketing copy and images? Usually Shopify. |
| Prices | ERP or Shopify | One direction only | How are sale prices, B2B price lists, and currencies handled? |
| Inventory | ERP or WMS | To Shopify, per location | Do you send available or on-hand quantities? |
| Orders | Shopify | Shopify to ERP | When does an order transfer: at payment, at fulfillment? |
| Fulfillments and tracking | ERP, WMS, or 3PL | To Shopify | Partial shipments, split shipments, drop-ship lines? |
| Refunds and returns | Shopify | Shopify to ERP | How do restocking, credit notes, and exchanges post? |
| Customers | Often split | Depends | Do B2B accounts, terms, and credit limits live in the ERP? |
The rule that prevents most problems is simple: each field has one owner, and changes flow away from it. Two-way sync on the same field is where overwrites and loops come from.
Where Shopify ERP integrations usually break
Order transformation
A Shopify order carries discounts, shipping lines, taxes, gift cards, tips, and sometimes several payment methods. The ERP needs these mapped into its own concepts: line discounts or header discounts, tax codes, shipping items, and payment accounts. Most failures happen here, usually on the unusual orders: a 100% discount, a gift card purchase, an edited order, a mixed-tax cart.
Refunds and edits after the fact
Orders change after they are created. Items are removed, addresses corrected, partial refunds issued. An integration that only sends the order once, at creation, leaves the ERP with a record that no longer matches reality.
SKU and variant mismatches
ERPs identify items by their own codes. Shopify identifies variants by ID and optional SKU. If a product is created in Shopify without a matching ERP item, the order fails to import. You need a rule for how new products are created and a report for anything unmatched.
Volume and rate limits
Shopify's Admin API uses cost-based rate limits, and large reads are better served by bulk operations, which run asynchronously and return results as a file. ERPs have their own limits too. A catalog import or a sale-day order spike can exceed either side if the integration sends one call per record with no queue.
Events that are missed or duplicated
Shopify notes in its webhook best practices that deliveries can be missed or duplicated and recommends reconciliation jobs. An order integration needs a way to detect that an order already exists in the ERP, and a daily check that every paid order arrived.
Connector, integration platform, or custom build
There are three broad routes. None is correct for everyone.
A prebuilt connector
Many ERPs have a Shopify connector, either from the ERP vendor or a partner. This is often the right choice when your business follows the connector's assumptions: standard orders, straightforward taxes, one store, one warehouse. Check how it handles refunds, edits, and multi-location inventory before signing.
An integration platform (iPaaS)
Platforms such as Celigo, Boomi, or similar tools provide prebuilt flows plus room to customize mappings. They suit businesses with several systems to connect and a team that can maintain the flows. Customization is possible, but complex rules can become hard to follow inside a visual builder.
A custom integration
Custom code makes sense when your rules are specific to your business: custom order splitting, drop-ship lines that go to suppliers, B2B pricing, bundles, or several storefronts. It gives you full control over retries, logging, and edge cases. The tradeoff is that you need an engineering owner who will maintain it as APIs and processes change.
We cover this choice more broadly in Native connector, middleware, or custom API integration.
If you are choosing between these options now, bring your ownership map, even a rough one, to a Systems Discovery Call. The first question we will ask is which system owns each type of data.
A rollout plan that avoids a painful go-live
- Write the ownership map and get finance, operations, and ecommerce to agree on it.
- Collect real edge cases from the last few months: refunds, edits, gift cards, split shipments, B2B orders.
- Build in a sandbox or test company and replay those edge cases, not only simple orders.
- Backfill and reconcile products and open orders before switching live.
- Run in parallel for a period where the integration writes to the ERP while staff still verify totals.
- Define ownership after launch: who receives failure alerts, who fixes a stuck order, and who approves mapping changes.
What to monitor once it is live
- Orders paid in Shopify but missing from the ERP after a set time.
- Items in a failure queue, with the reason and the order number.
- Daily revenue totals in both systems, compared automatically.
- Inventory differences above a threshold per SKU and location.
- Unmapped products created in Shopify.
These checks turn a silent problem at month end into a small fix on the day it happens.
Common questions
How long does a Shopify ERP integration take?
It depends on how many objects you sync, how clean your product data is, and how many edge cases your order flow has. A connector for a standard setup can be quick to configure. A custom integration covering multiple stores, drop-shipping, and B2B pricing takes longer, and most of that time goes into mapping and testing edge cases, not writing API calls.
Should inventory flow from the ERP to Shopify or the other way?
Usually from whichever system knows what is physically on the shelf, often the ERP or warehouse system. Shopify then reflects it and records sales, which flow back as orders.
Can we replace the connector later?
Yes, if the ownership map and edge cases are documented. That document is the most reusable part of any integration project.
Next step
If your team is still moving data between Shopify and your ERP by hand, or the connector keeps dropping orders, book a Systems Discovery Call. It is 45 minutes on your systems, workflows, and where the handoffs fail. Bring the name of your ERP, the number of stores and warehouses, and a few orders that did not import correctly. You leave with a clear picture of what to build, whether you hire us or not.
Farooq Ch
Oct 2026