The Problem

Your store sells. Your accounts wait.

Without an integration, someone copies each Shopify order into ERPNext by hand. Under pressure that falls days or weeks behind. Stock and revenue in ERPNext stop matching reality, customers get duplicated, and month-end turns into a reconciliation project.

Integrations that did work can stop too. Shopify has changed how custom apps authenticate and is moving away from its REST Admin API. Connectors built on the old model need updating before they fail. Read what changed in 2026.

What Syncs

Orders, customers, products and stock.

Each flow can be switched on or off, so the integration matches how your business actually works.

Flow Direction How
Orders Shopify → ERPNext Instant via webhook, with a 15-minute fallback check
Order cancellations Shopify → ERPNext Instant via webhook
Customers Shopify → ERPNext On create and update, plus an hourly catch-up
Products ERPNext → Shopify (optional) Title, SKU and price from ERPNext, for items you choose to publish
Inventory ERPNext → Shopify (optional) Available quantity pushed on every stock movement, plus an hourly reconcile
Built for Shopify in 2026

Current Shopify APIs. No permanent tokens.

New authentication model

Apps created in Shopify's Dev Dashboard no longer get a permanent access token. The connector exchanges your client ID and secret for a short-lived token and refreshes it automatically, with nothing for your team to rotate.

GraphQL Admin API

Built on Shopify's GraphQL Admin API, the API Shopify now recommends, not on the legacy REST API.

Verified webhooks

Every webhook is signature-checked, acknowledged at once and processed in the background, so Shopify never times out waiting on ERPNext.

Reliable by Design

No missing orders. No duplicates.

An integration is only useful if you can trust it. In a production reconciliation, every Shopify order matched exactly one ERPNext invoice: none missing, none duplicated.

01

Idempotent imports

Each Shopify order maps to one ERPNext document. Replayed webhooks and overlapping checks can never create a duplicate.

02

Retried until it succeeds

An order that fails, for example because of an unknown SKU, is retried every 15 minutes until fixed. It never ages out and gets lost.

03

Alerts when something needs you

The first failure emails your team and notifies System Managers in ERPNext. Repeats don't flood your inbox.

04

Everything logged

Every sync is recorded with its status, payload and error, so any question about an order is answered in seconds.

Fits How You Sell

Configured to your business, not the other way round.

Stocked or made to order

Ship from stock and the invoice moves inventory, with FIFO batch allocation. Make or pack after the order and the invoice posts the sale, while stock leaves on the Delivery Note.

Taxes, shipping & payments

Tax templates chosen by place of supply (for example, India GST in-state or out-of-state), shipping as its own line, and payments routed to the right gateway clearing account.

Clean customer records

Customers matched by Shopify ID, then by email, before a new one is created, so repeat and guest buyers don't become duplicates.

SKU-based item matching

Shopify SKUs map to ERPNext item codes, with barcode as a fallback. An unmatched SKU is flagged, never silently skipped.

Your custom fields

Mandatory custom fields on invoices, orders and item rows are filled from configuration, without code changes.

You choose the product master

Keep your catalogue in Shopify and only pull orders, or manage products in ERPNext and publish them. Nothing reaches your storefront unless you choose it.

How It Works

From first call to live orders.

  1. Review

    A call about how you sell, then a look at your Shopify store, ERPNext setup, taxes and custom fields.

  2. Configure & test

    We install and configure the connector on a staging site, map your items, and run test orders end to end.

  3. Go live

    We switch on live sync and reconcile Shopify against ERPNext order by order to prove nothing is missing.

  4. Support

    We monitor imports, handle Shopify API changes and adapt the integration as your store grows.

FAQ

Shopify + ERPNext questions.

Does the connector work with Frappe Cloud and self-hosted ERPNext?

Yes. It installs as a standard Frappe app, so it runs on Frappe Cloud or on your own server.

Which ERPNext version is supported?

The connector is built and running in production on ERPNext v15. Ask us about other versions.

Why do older Shopify integrations stop working in 2026?

Apps created in Shopify's Dev Dashboard no longer receive a permanent access token. They get a client ID and secret that must be exchanged for a short-lived token, which expires after 24 hours. Integrations that expect a permanent token need to be updated. Our connector requests and refreshes these tokens automatically and uses the GraphQL Admin API.

What happens if an order fails to import?

It is recorded as failed, your team is alerted by email and in ERPNext, and the connector retries it every 15 minutes until it succeeds. Orders are never silently dropped, and replayed webhooks never create duplicates.

Can it handle make-to-order products?

Yes. The invoice can post the sale without moving stock, with stock leaving on the Delivery Note once the item is made or packed. For stocked products the invoice can move stock directly.

Why are customer names missing from some orders?

Shopify only shares customer names, emails and addresses with apps it has approved for protected customer data. Until approval comes through, orders still import against a default customer. We help you apply and switch customer sync on once approved.

How is the project priced?

After a short call and a review of your store and ERPNext setup, we send a fixed-price proposal for setup, plus an optional monthly support plan.

Ready to connect Shopify to ERPNext?

Tell us about your store and how you sell. We'll reply within one business day, wherever you are.

Start the Conversation →