Celigo's Shopify–NetSuite Integration App is the most widely deployed connector between these two platforms. It handles the core data flows that Shopify merchants running NetSuite as their ERP need: orders in, inventory out, fulfillments back. This guide covers what the integration does, how to set it up, what it costs, and the specific errors that break it most often in production.
At a Glance
- What it syncs: Orders, customers, inventory, items, fulfillment status, refunds
- Setup time: 2–4 weeks (standard); 4–6 weeks with multi-location or B2B
- Year-one cost: $8,000–$21,000 (Integration App license + partner services)
- Most common errors: SKU mismatch, TBA auth failure, location not mapped, fulfillment not triggering
- B2B supported: Yes — separate B2B accelerator released 2025 for wholesale/company accounts
What the Celigo Shopify integration syncs
Celigo's prebuilt Shopify–NetSuite Integration App covers six core data flows that most DTC and omnichannel merchants need:
| Data flow | Direction | What it does | Trigger |
|---|---|---|---|
| Orders | Shopify → NetSuite | Creates sales orders in NetSuite from Shopify orders | Webhook (near real-time) |
| Customers | Shopify → NetSuite | Creates or updates customer records; deduplicates by email | On order import |
| Inventory | NetSuite → Shopify | Pushes available quantity from NetSuite to Shopify stock levels | Scheduled (15 min–hourly) |
| Items / Products | NetSuite → Shopify | Syncs item records, prices, and descriptions to Shopify products | Scheduled (daily or on-demand) |
| Fulfillment | NetSuite → Shopify | Pushes ship confirmations and tracking numbers back to Shopify | Scheduled (hourly) |
| Refunds / Returns | Shopify → NetSuite | Creates credit memos or return authorizations in NetSuite | Webhook on Shopify refund event |
Additional flows — such as gift card handling, POS orders, and dropship purchase orders — can be configured within the same Integration App depending on your setup. Each flow is independent, so you can enable only what you need and add more later without rebuilding from scratch.
Integration App vs custom flows: which to use
Celigo offers two paths for connecting Shopify to NetSuite: the prebuilt Integration App from the Celigo Marketplace, or custom flows built with Celigo's flow builder. For the vast majority of standard DTC setups, start with the Integration App.
The Integration App ships with preconfigured field mappings, tested error handling, and Shopify webhook subscriptions already set up. It reduces initial build time by 40 to 60 percent versus custom flows and is maintained by Celigo as both Shopify and NetSuite release API updates. The downside is less flexibility — if your NetSuite data model is highly customized or your Shopify setup uses uncommon order attributes, you may hit the limits of the prebuilt mappings faster.
Custom flows built in Celigo's flow builder are the right choice when you have requirements the Integration App cannot handle: for example, conditional routing based on Shopify tags, multi-store architectures where multiple Shopify stores feed one NetSuite account, or integrations involving a third system alongside Shopify and NetSuite (a 3PL, a warehouse management system, or an EDI trading partner).
How to set up the Celigo Shopify integration
The Celigo Shopify–NetSuite Integration App install follows a structured path. Here is what the setup process looks like from kickoff to go-live.
Step 1: Authenticate both connections
In Celigo's connection manager, set up the NetSuite connection using Token-Based Authentication (TBA). This requires creating a dedicated NetSuite integration role with the correct permissions, generating a TBA token pair, and entering the account ID, token ID, and token secret in Celigo. Do this in your NetSuite sandbox account first.
For Shopify, Celigo connects via OAuth or a private app API key. Generate a custom app in your Shopify admin under Settings → Apps → Develop apps, enable the required API access scopes (read orders, write fulfillments, read products, write inventory), and paste the credentials into Celigo.
Step 2: Install the Integration App and configure base settings
From the Celigo Marketplace, install the Shopify–NetSuite Integration App. During installation, you select which flows to activate. For a first deployment, enable order import, inventory sync, and fulfillment export. Leave item and customer sync off until your data model is confirmed — turning on all flows at once makes troubleshooting harder.
In the Integration App settings, configure your base mappings: the Shopify store URL, the NetSuite subsidiary (for multi-subsidiary accounts), the default location, and the currency. These settings affect every flow in the App.
Step 3: Review and adjust field mappings
This is where most implementation time is spent. The Integration App ships with default field mappings designed for a standard NetSuite account, but almost every real deployment has customizations that require changes:
- Custom body fields on NetSuite sales orders (purchase order number, Shopify order ID, channel source) must be explicitly mapped
- Shopify order tags or properties that drive NetSuite workflow routing need to be mapped to appropriate NetSuite fields
- Payment gateway field mapping — the Integration App can map Shopify payment method to a NetSuite payment method field for accounting reconciliation
- Shopify discount and shipping line items → NetSuite line items require careful mapping to avoid revenue allocation errors
Step 4: Configure locations and inventory settings
NetSuite inventory quantity fields include On Hand, Available, and commitmentFirm. Most Shopify implementations push the Available quantity to Shopify, not On Hand, because Available already accounts for committed quantity on open orders. Confirm this with your finance team before go-live.
If you use multiple Shopify locations, you must map each Shopify location to a corresponding NetSuite location. This is configured in the Integration App's location mapping table. Missing location mappings cause inventory sync failures for orders placed at an unmapped location.
Step 5: Set up error handling, then test
Configure email or Slack alerting for flow failures in the Celigo error management settings. Choose which error types should pause a flow versus log and continue — authentication errors and API timeouts should pause; lookup misses on optional fields can usually log and continue. Then run the integration in your sandbox environment with a set of test orders, confirm the data appears correctly in both systems, and validate the reverse flow (fulfillments from NetSuite back to Shopify).
Once sandbox testing is complete, repeat the authentication setup in production and promote the flows. Keep sandbox active for ongoing testing after go-live.
How much does the Celigo Shopify integration cost?
A Celigo Shopify–NetSuite integration project involves two cost components: the Celigo platform license and the professional services to configure and go-live.
| Cost component | Standard setup | Complex setup | Notes |
|---|---|---|---|
| Celigo Integration App license | $3,000–$4,500/yr | $4,500–$6,000/yr | Based on transaction volume and plan tier |
| Partner services (setup) | $5,000–$12,000 | $12,000–$30,000 | Complex = multi-location, B2B, 3PL, or custom flows |
| Year-one total | $8,000–$16,500 | $16,500–$36,000 | Ongoing license renews annually; services are one-time |
| Ongoing support retainer | $1,500–$3,000/yr | $3,000–$6,000/yr | Optional; covers monitoring, mapping changes, and updates |
The biggest cost drivers for a Shopify–NetSuite project are multi-location inventory mapping, Shopify B2B requirements, custom order routing logic, and data quality issues in the existing NetSuite item library. A clean item catalog with consistent SKUs across both systems is the single biggest factor in keeping implementation time (and therefore cost) low.
For a detailed breakdown of Celigo platform tiers and how they affect annual licensing, see our Celigo implementation cost guide.
Common errors and how to fix them
Item not found — "No records found for SKU X"
This is the most frequent error in Shopify–NetSuite integrations. When Celigo imports a Shopify order, it runs a lookup in NetSuite to find the matching item by SKU. If the Shopify product's SKU does not exactly match the NetSuite item name or external ID, the lookup fails and the order import errors.
Fix: audit your Shopify product catalog for missing or mismatched SKUs before go-live. In the Celigo integration settings, you can configure the lookup to search by item name, external ID, or UPC — choose the field that is most consistently populated in your NetSuite account. For items that can never match (bundles, gift cards, virtual items), add explicit mappings in the Integration App's item mapping table.
Authentication failure — NetSuite TBA error
Celigo loses its NetSuite connection when the TBA role permissions change, the token is revoked, or NetSuite admin makes a role modification that removes required permissions. The error shows as "Invalid login attempt" or "403 Forbidden" on the NetSuite connection.
Fix: in NetSuite, verify that the integration role still has the required permissions (Transaction → Sales Order → Create, Edit; Lists → Items → View; Lists → Locations → View). Regenerate the TBA token pair in NetSuite under Setup → Integrations → Manage Authentication, then update the credentials in Celigo's connection manager. Always test the connection before reactivating flows.
Inventory not updating on Shopify
Inventory sync failures usually have one of three causes: the scheduled flow is paused (check the Celigo dashboard for a paused state), the NetSuite saved search driving the inventory export has a filter that returns zero records, or a Shopify location is not mapped in the Integration App settings. For a broader diagnosis of why a Celigo integration stops syncing, see the step-by-step guide.
Fix: check the inventory export flow's last run time in the Celigo dashboard. If it ran but exported zero records, open the associated NetSuite saved search and verify its filters are returning inventory data. If location mapping is the issue, add the missing Shopify location → NetSuite location mapping in the Integration App settings and run the flow manually to confirm the fix.
Fulfillment not updating on Shopify after NetSuite ships
The fulfillment export flow reads completed fulfillment records from NetSuite and pushes tracking numbers back to Shopify. If orders ship in NetSuite but Shopify customers are not receiving tracking updates, the most common cause is a saved search filter that requires a specific fulfillment status field that is not being set correctly in your NetSuite fulfillment workflow.
Fix: open the NetSuite saved search that the fulfillment export flow uses as its data source. Run it manually and confirm it returns the recently fulfilled orders. If it does not, check the filter criteria — typically a "Status is Shipped" condition — and verify that your NetSuite fulfillment workflow correctly sets that status on completion.
Duplicate orders created in NetSuite
Shopify fires order webhooks for created, updated, and paid events. If the Celigo order import flow is configured to trigger on multiple event types, the same order can be imported twice. This is most common after going live when old orders are backfilled at the same time new webhooks are arriving.
Fix: in the Integration App settings, ensure the order import flow uses Shopify's order ID as the external ID on the NetSuite sales order. Celigo uses this external ID for deduplication — if a sales order with that external ID already exists in NetSuite, it updates rather than creates. If duplicates have already been created, they must be identified and deleted manually before re-enabling the flow.
Celigo Shopify B2B: what's different
Celigo's standard Shopify–NetSuite Integration App is designed for DTC and D2C workflows where individual customers place orders. Shopify's B2B features — company accounts, net payment terms, draft orders, and wholesale price lists — require a different integration model.
In 2025, Celigo released a Shopify B2B–NetSuite Integration Accelerator that handles the wholesale data model. The key differences versus the standard Integration App:
- Company and contact sync — Shopify B2B uses company records, not individual customer accounts. These map to NetSuite customer records with parent-child relationships for companies and contacts.
- Draft orders → sales orders — B2B transactions often start as Shopify draft orders (quotes) that a rep approves. Celigo maps these to NetSuite quotes or directly to sales orders depending on your configuration.
- Net payment terms — Shopify B2B payment terms (Net 30, Net 60) map to NetSuite payment terms on the sales order, which drives your AR aging correctly.
- Wholesale price lists — Shopify B2B price lists map to NetSuite price levels (Base Price, Customer Price Level 1, etc.), so wholesale pricing is maintained in NetSuite and synced to Shopify rather than being maintained in both systems.
The B2B accelerator requires separate configuration from the standard Integration App and is typically a more complex engagement — expect 4 to 6 weeks for setup and $15,000 to $30,000 in services for a full B2B deployment.
Working with a Celigo partner for Shopify
The Celigo Shopify–NetSuite Integration App can be installed and configured by an in-house NetSuite administrator, but most teams find that the field mapping decisions, error handling configuration, and go-live testing take significantly longer without prior experience on the platform. A certified Celigo partner reduces that timeline by 30 to 50 percent.
What a certified partner brings to a Shopify integration that in-house teams typically lack:
- Pre-built field mapping libraries for common Shopify custom attributes (tags, metafields, discount codes)
- Tested error handling logic for the specific NetSuite errors Shopify integrations surface most often
- NetSuite-side setup — TBA role configuration, saved search design, and integration role permissions — which is where most in-house timelines slip
- Go-live runbook for backfilling historical orders without triggering duplicate imports
Entech Solutions is a certified Celigo implementation partner with extensive experience on Shopify–NetSuite projects for DTC, wholesale, and omnichannel brands. We offer a free scoping call to assess your requirements and provide a fixed-scope proposal before any engagement starts. See our NetSuite–Shopify integration service page for scope, timelines, and what's included.
Frequently Asked Questions
- What does the Celigo Shopify integration sync with NetSuite?
- The Celigo Shopify–NetSuite Integration App syncs orders (Shopify → NetSuite sales orders), customers, inventory (NetSuite quantities → Shopify stock levels), items/products, fulfillment status (NetSuite ship confirmations → Shopify), and refunds (Shopify refunds → NetSuite credit memos or return authorizations). Each flow is independently configurable.
- Do I need NetSuite to use Celigo with Shopify?
- The prebuilt Shopify–NetSuite Integration App is specifically designed for Shopify + NetSuite. Celigo can also connect Shopify to other systems — Salesforce, HubSpot, QuickBooks — using separate Integration Apps or custom flows, but those are different configurations. If you are not on NetSuite, a different connector or platform may be a better fit.
- How long does it take to set up the Celigo Shopify integration?
- A standard Celigo Shopify–NetSuite setup takes 2 to 4 weeks from kickoff to production go-live. This assumes a clean NetSuite item catalog with consistent SKUs and no heavy account customization. Add 1 to 2 weeks for multi-location inventory, non-standard item types, or complex pricing logic. A Shopify B2B deployment typically runs 4 to 6 weeks.
- How much does the Celigo Shopify integration cost?
- The Celigo Shopify–NetSuite Integration App license runs $3,000 to $6,000 per year depending on transaction volume and plan tier. Partner services to configure and go-live add $5,000 to $15,000 for a standard project, or $15,000 to $30,000 for complex setups with B2B, multi-location, or additional systems. Total year-one cost for most mid-market projects is $8,000 to $21,000.
- Why is my Celigo Shopify integration not syncing orders?
- The most common causes are SKU mismatch between Shopify and NetSuite items (lookup fails, order errors), expired or broken NetSuite TBA authentication, or a Shopify webhook that has been reset or disconnected. Check the Celigo error dashboard — it will show the specific failing step and the exact error message, which identifies the root cause in almost all cases.
- Does Celigo support Shopify B2B integration with NetSuite?
- Yes. Celigo's Shopify B2B–NetSuite Integration Accelerator (released 2025) handles company and contact sync, draft orders to sales orders, net payment terms, and wholesale price list mapping. It requires separate configuration from the standard DTC Integration App and is a more complex engagement — typically 4 to 6 weeks and $15,000 to $30,000 in services.
Entech Solutions has delivered Celigo Shopify integrations for DTC brands, wholesale distributors, and omnichannel retailers. Wholesale distributors running EDI alongside ecommerce will find more context in our Celigo for wholesale distributors guide. If you are evaluating a Shopify–NetSuite integration or troubleshooting an existing one, contact us for a free assessment — we can usually identify the root cause and scope a fix in a single call.