Set up Shop Sync
v2.2Updated Oct 6, 2026
Connect your Shopify store to NEXT, decide who sends emails and where refunds happen, and test an order before launch.
If your products, inventory, and warehouse already run on Shopify, Shop Sync lets you sell through NEXT checkout, payments, and subscriptions without moving any of that. Orders placed through NEXT land in Shopify ready to fulfill, and the tracking and refunds you add in Shopify flow back to NEXT.
This guide takes you from install to a tested first order. Once you are live, your team works from Run Shop Sync day to day.
How Shop Sync works
Shopify keeps products, inventory, and fulfillment. NEXT handles checkout, payments, subscriptions, and order creation.
Active and archived products and their variants sync from Shopify to NEXT. NEXT orders arrive in Shopify as Imported and Unfulfilled. Fulfillment, tracking, cancellations, and refunds you make in Shopify flow back to NEXT.
Keep checkout on Shopify for any storefront hosted by Shopify. Use NEXT checkout on your separate NEXT campaign pages; Shop Sync sends those orders to Shopify for fulfillment.
Before you start
- An active Shopify store. You need to be the store owner, or a staff member with the App developer role or the Develop apps permission. Collaborator accounts cannot create apps in the Dev Dashboard.
- A NEXT store with dashboard access.
- The currency your Shopify store uses, turned on in your NEXT store localization settings. Shop Sync cannot save its settings without it.
- A unique SKU on every Shopify product and variant. Shop Sync matches Shopify fulfillment lines back to NEXT order lines by SKU, so shipped items and tracking land on the right line.
- An image on each variant. Variants without one show a placeholder in NEXT.
Connect Shopify and NEXT
Install Shop Sync in NEXT
In NEXT, go to Apps → Shop Sync and click Install. Keep the settings screen open. It shows the values you enter in Shopify in step 2.
Create the Shopify app
Choose one of the two options below. Option A stays in the Dev Dashboard. Option B creates and configures the app from a terminal, then finishes in the Dev Dashboard.
You do not need a Shopify Partner account.
No tools to install. Most merchants use this option.
-
On the Shop Sync settings screen in NEXT, click Shopify Dev Dashboard and sign in.
-
Click Create app. Under Start from Dev Dashboard, enter a name such as
NEXT Shop Sync, then click Create. -
Shopify opens the app's Versions page. Copy each value from the Shop Sync settings screen into the matching field:
- App URL
- Webhooks API version
- Scopes
- Redirect URLs
Untick Embed app in Shopify admin and leave Use legacy install flow unticked. Click Release, then Release again to confirm. The version name and message are optional.
-
Open your app's Home page. On the Distribution card, click Select distribution method, choose Custom distribution, and confirm. Shopify does not let you change this choice later.
-
Enter your store's
.myshopify.comdomain. To find it, open your Shopify admin: the address bar showsadmin.shopify.com/store/your-store, and the domain isyour-store.myshopify.com. It is also listed under Settings → Domains. Click Generate link. The link works for 7 days. -
Open the install link in a new tab and click Install app.
-
Shop Sync opens Connect to your Shopify App and asks for the App Client ID and App Client Secret. In the Dev Dashboard, open your app's Settings and copy the Client ID and Client secret. Paste them in and click Connect Shopify App.
For developers and AI coding assistants. Requires Node.js 22.12 or later and the Shopify CLI (npm install -g @shopify/cli@latest).
Git 2.28.0 or later is also required.
-
Create the app. Sign in when prompted, then change into the folder the CLI creates:
shopify app init --template none --name "NEXT Shop Sync" -
In
shopify.app.toml, keep theclient_idline and replace everything else with the values from the Shop Sync settings screen:name = "NEXT Shop Sync" application_url = "<App URL>" embedded = false [access_scopes] scopes = "<Access scopes>" [auth] redirect_urls = ["<Redirect URL>"] [webhooks] api_version = "<Webhook API version>" -
Push the configuration. Sign in again if prompted:
shopify app deploy -
Finish in the Dev Dashboard: set Custom distribution, install the app, and enter its Client ID and Client secret when Shop Sync asks (Option A, steps 4 to 7).
NEXT returns you to the Shop Sync settings screen, which shows Connected: and your store's .myshopify.com domain. If NEXT reports missing permissions when you save in the next step, copy the Scopes again and release a new app version.
Choose Product Sync and save the fulfillment location
Decide on Product Sync first, because the first save acts on it:
- Enable Product Sync is ticked when the settings screen first opens. Leave it ticked if Shopify is where you manage products. Saving imports your full Shopify catalogue into NEXT, and later Shopify changes update NEXT automatically.
- Untick it if you manage the NEXT catalogue yourself and use Shopify only for fulfillment.
Then enter a name and the address of the warehouse or 3PL that ships your orders, and click Save Changes. Products do not sync until the location is saved.
Shop Sync imports active and archived Shopify products. Draft products and gift cards stay in Shopify.
Make the launch decisions
Choose who sends customer emails
Pick one sender for order confirmations so customers do not receive duplicates.
In Apps → Shop Sync, enable Send Order Confirmation Emails from Shopify. In Settings → Notifications, disable the NEXT Order Confirmation and any other order or shipping notifications Shopify already sends.
In Settings → Notifications, set the Default From Address and enable Order Confirmation and any other order notifications you want. In Settings → Domains, verify an Email Sending Domain before launch.
In Settings → Notifications, make sure the NEXT Order Confirmation is disabled. Send the confirmation from your email platform.
Whichever option you choose, enable these in Settings → Notifications:
- Refund Notification. When you refund an order in Shopify, untick the option on the refund screen that emails the customer, so the customer gets one refund email, from NEXT.
- Subscription Canceled, Subscription Renewal, and Subscription Update Payment Notifications, if you sell subscriptions. Shopify does not send these.
See the notification setup guide and how to verify an Email Sending Domain.
Set up refunds in Shopify
Refund Shop Sync orders from the order in Shopify admin. Shop Sync refunds the same amount on the matching NEXT order. What ships depends on what you choose in the Shopify refund:
- Items chosen and restocked: Shop Sync removes them from fulfillment in NEXT so they do not ship. The rest of the order ships as normal.
- Items chosen with Restock unticked: they stay in fulfillment and still ship. Use this when the customer keeps the item, such as a partial refund for a damaged product.
- An amount, with no items chosen: the whole order still ships.
- In Apps → Shop Sync, check that Enable Payment Sync is ticked. If it is not, tick it and click Save Changes before you take orders. Orders placed before it was ticked have no Refund option in Shopify admin.
- If you built your own automation that copies Shopify refunds into NEXT through the NEXT API, turn it off before you refund in Shopify. If it stays on, customers are refunded twice.
Refunds made in NEXT stay in NEXT
Shop Sync does not copy refunds from NEXT to Shopify. Refund in NEXT only when a Shopify order has no Refund option.
Test before launch
Place a test order through your NEXT checkout, then check:
- The order appears in Shopify as Imported and Unfulfilled with the NEXT tag.
- Products, quantities, shipping address, and any personalization are correct.
- The customer receives exactly one order confirmation, from the sender you chose.
- After you fulfill the order and add tracking in Shopify, the fulfillment appears in NEXT.
- On a second test order, before you fulfill it, refund one item from the order in Shopify admin and restock it. NEXT shows a refund for the same amount, and the refunded item is removed from fulfillment in NEXT.
- Cancel a third test order in Shopify. NEXT closes its fulfillment order.
- Your support team knows to refund orders in Shopify admin and to edit orders in NEXT.
For the rest of store setup, see the NEXT Get Started guide.
Troubleshooting setup
"Page not found" or "Invalid installation link" after Shopify app install
The App URL or Redirect URL in Shopify does not match Shop Sync if this appears before the Connect to your Shopify App screen.
- In NEXT, open Shop Sync settings and copy the App URL and Redirect URLs.
- In the Shopify Dev Dashboard, replace the matching values and release a new version.
- Reopen the custom install link.
- If it still fails, send NEXT support the address shown in the failing tab so they can identify the mismatch.
"Shopify app installation failed"
The message ends "due to invalid app client secret or install link". Copy the Client secret again from the app's Settings in the Dev Dashboard, then reopen the install link and enter it.
Products are not syncing
Check that Enable Product Sync is ticked and the fulfillment location is saved. Then click Sync Products at the top of the Shop Sync settings screen. Only active and archived products import. If products are still missing, contact NEXT support.
Do not delete the Shopify Product ID and Shopify Product Variant ID metadata fields that Shop Sync creates in NEXT. It uses them to match products.
Reconnect Shop Sync
When Shopify stops accepting Shop Sync's requests, the settings screen shows "Connection to your Shopify store has been lost and syncing is paused" above the Shopify App Setup card.
- In Shopify, go to Settings → Apps and uninstall the app if it is still installed.
- Open the Shopify Dev Dashboard from the Shopify App Setup card and select the app.
- On the app's Home page, open the Distribution card and copy the custom install link. If it has expired, generate a new one.
- Click Install app, then enter the app's Client ID and Client secret (Dev Dashboard → Settings) when Shop Sync asks.
- Confirm Shop Sync shows Connected: and your store's domain.
Variant images are missing in NEXT
Assign an image to each variant in Shopify.
After launch
Run Shop Sync day to day is the page for your support and operations team: where each task happens, how refunds behave, the daily check for stuck orders, and fixes for the problems that show up after launch.
Send order data to Shopify
To copy attribution such as a click ID into Shopify order metafields, see Send NEXT order data to Shopify.
Links and resources
Customer service operations
A daily workflow for reviewing orders, handling fulfillment and refunds, and passing complete context when an issue needs help.
Run Shop Sync day to day
Where your team ships, refunds, and edits Shop Sync orders, the daily check for stuck orders, and fixes for common problems after launch.