Site & Stack Start a project
Start a project
All articles

How to sync Shopify and in-store inventory in one count

How to sync Shopify and in-store inventory so one sale updates both: Shopify POS, connector apps or a custom link, plus the setup steps and tests to run first.

Why two stock counts end up selling what isn’t on the shelf

A shop that sells in person and on Shopify often runs two stock counts without meaning to. The till keeps one, and Shopify keeps another. Each is right about its own sales and wrong about the other’s, until someone copies the numbers across.

For example, a gift shop rings up sales on Square and sells online through Shopify. At 11 am a customer buys the last blue candle at the counter. Square drops to zero, but Shopify still shows one, because nothing told it. At 3 pm an online order comes in for that candle, and someone has to send an apology and a refund.

Selling what you don’t have is only half the cost. The other half runs the opposite way. Staff stop trusting the online count and mark items sold out “to be safe,” and the website turns away sales the shelf could have filled.

The gaps usually come from the same few places:

  • Sales in one system that never reach the other, or reach it hours later.
  • Returns and exchanges that go back on the shelf but not back online.
  • Counts typed into one system only, after a stocktake or a short delivery.
  • Items on the shelf that aren’t for sale: floor models, holds for a customer, damaged stock.
  • The same product under two names or item codes (SKUs), so nothing can match them up.
  • Bundles and gift sets sold as one item, so the pieces inside never come off the count.

First, check which setup you have

How you get to one count depends on what rings up your in-store sales. Most shops fit one of three setups.

  • Shopify POS at the counter and Shopify online. You already have one count. Shopify says its POS syncs with your Shopify admin to track orders and inventory across your retail locations, online store and other sales channels. A sale or restock at the till updates the count for that location. If your numbers still drift, the cause is usually setup or offline sales, not the sync itself, and the steps below cover it.
  • Another till, like Square, Clover or Lightspeed, and Shopify online. Each system keeps its own item list and its own count. To make one sale update both, you can move in-store sales to Shopify POS, add a connector app, or have a connection built.
  • Stock in more than one place, or stock that’s spoken for. A warehouse, a second shop, special orders, or items held for a delivery date. Here the true count depends on records that neither the till nor Shopify may see.

References: Shopify Help Center: Selling in person with Shopify POS (opens in a new tab) · Shopify Help Center: Tracking and adjusting Shopify POS inventory (opens in a new tab)

Option 1: ring up in-store sales on Shopify POS

If you already sell on Shopify, moving the till to Shopify POS is the simplest route to one count. There’s no link to break, because there’s only one item list. When we checked in October 2026, every paid Shopify plan came with basic in-person selling. On the Basic, Grow and Advanced plans, that meant simple customer profiles and returns at the original location. POS Pro, for retail locations, cost an extra $89 a month per location, billed yearly. It adds inventory counts, purchase orders and low-stock alerts.

Shopify plans also cap locations: 2 on Starter, 10 on Basic, Grow and Advanced, and 200 on Shopify Plus, when we checked. Count the shop, back room, warehouse and any pop-up you want to track on its own.

Three things to know before you switch:

  • Staff can sell below zero. Shopify says its “continue selling when out of stock” setting doesn’t apply to POS. Staff can keep selling when the available count reaches zero, and POS warns them first. That helps with a miscounted shelf, but each sale below zero means the count was wrong somewhere.
  • Offline sales wait. Shopify POS takes cash and manual payments without internet, and card payments offline once you turn that on. Orders and inventory sync when you reconnect, and there’s a way to force a sync if they don’t. Shopify also warns that signing out or turning off the device while offline can lose those orders. Until they sync, the website doesn’t know about those sales.
  • Switching has its own costs: new card readers, staff training, and moving your item list and customer history. If your till works well and only the count is the problem, a connection may cost less.

References: Shopify: POS pricing (opens in a new tab) · Shopify Help Center: Setting up and managing locations (opens in a new tab) · Shopify Help Center: Setting up inventory tracking (opens in a new tab) · Shopify Help Center: Using Shopify POS offline (opens in a new tab) · Shopify Help Center: Offline checkout on Shopify POS (opens in a new tab)

Option 2: keep your till and add an inventory sync app

If staff like your till, or it does things Shopify POS doesn’t, keep it and add an app that passes stock changes between the two. Shopify’s App Store listed more than 600 apps in its inventory sync category when we checked in October 2026. Many of those link Shopify to marketplaces like Amazon or eBay, not to a till, so read each listing closely. Your till’s own app marketplace is the other place to look.

If only a few items sell both online and in the shop, updating Shopify by hand may be enough. Shopify’s inventory spreadsheet (CSV) import replaces on-hand counts. It skips any row whose stock changed after you exported, so a sale made in between isn’t wiped out.

One example of a connector: Thrive Inventory Management, by Shopventory, lists Square, Clover and QuickBooks Online among the apps it works with. Its plans ran from $59 to $559 a month, billed monthly, with a 14-day free trial, when we checked. Another, Trunk, lists Square POS and multiple Shopify stores among the places it syncs. Its plans started at $35 a month and rose with monthly orders; bundles came on the Pro plan, from $39. So it also fits a shop that runs a second Shopify store, like one for wholesale, from the same stock room. Treat these as examples of the kind of app to compare, not picks.

Before you pay for any connector, get clear answers to these:

  • Which way does it sync? Both ways, or only from one system to the other?
  • How fast? The moment a sale happens, every 15 minutes, or once an hour? A busy shop with one-of-a-kind items needs minutes, not hours.
  • Does it pass each sale as a change, like “minus one,” or copy whole totals across? Changes are safer, for the reasons in the next section.
  • What does it match on? Item code or barcode, and what happens to an item that exists in one system but not the other?
  • Does it handle returns, exchanges, sizes and colors, and bundles made from items you also sell alone?
  • Can it keep separate counts for the shop floor and a back room or warehouse?
  • What happens when it fails? You want an alert, a log of each change, and a way to re-send what was missed. A link that stops quietly is worse than none, because everyone keeps trusting it.
  • What does it cost at your size? Price the plan that covers your number of items, orders and locations, not the one on the banner.

References: Shopify App Store: Inventory sync apps (opens in a new tab) · Shopify Help Center: Exporting and importing inventory quantities with a CSV file (opens in a new tab) · Shopify App Store: Thrive Inventory Management by Shopventory (opens in a new tab) · Shopify App Store: Trunk ‑ Stock Sync & Bundling (opens in a new tab)

How a connection keeps one count, and where it slips

Whether it’s an app or a custom build, every connection does the same job. It hears about a change in one system and makes the matching change in the other. Both sides can send that kind of notice. Shopify can tell another system when an order is placed, and Square can when a stock count changes.

Two rules decide whether the count stays right. First, pick one master count: the system you trust when the two disagree. For most shops, it’s the one where you do your stocktakes. Second, pass changes, not totals. “Sold one, so minus one” is safer than “the count is now 4.”

Shopify’s own developer guide gives the same advice. It says to set totals only from the system that holds the true count, and to pass changes otherwise. It also warns that setting totals without first checking the current number can leave counts wrong when changes overlap. Picture a sale at the till landing a second before an overnight total from the website: one of them gets wiped out.

Square works the same way underneath. Its developer guide says the count it calculates is an estimate, built from the changes since the last physical count. So a full count on a quiet day, then changes passed one by one, beats copying totals across at closing time. If you want other jobs passed between apps too, our guide to the first jobs worth automating covers how to pick them.

References: Shopify developer docs: Webhook topics (opens in a new tab) · Square Developer: Handle inventory event notifications (opens in a new tab) · Shopify developer docs: inventorySetQuantities (opens in a new tab) · Square Developer: Inventory API (opens in a new tab)

How to sync Shopify and in-store inventory, step by step

Whichever option you pick, the setup is much the same. Give it a slow week, and do the full count on a day you’re closed.

  • List every place stock sits and every place it sells: the counter, the website, the back room, a market stall, a warehouse.
  • Clean up the item list. Give each size and color one item code, the same in both systems. Add barcodes where you can, so staff scan instead of type.
  • Pick the master count and write it down, so nobody “fixes” the other system by hand.
  • Turn on stock tracking for every item in Shopify. Then decide whether the website may keep selling when an item hits zero. For most shops, it shouldn’t.
  • Mark stock that isn’t for sale. Shopify splits stock on hand into available, committed (in unfulfilled orders or reserved in a draft order) and unavailable. Unavailable covers things like damaged stock, quality control and safety stock. Floor models and damaged returns belong there, not in available.
  • Use safety stock as a small buffer on fast sellers, so a till sale that hasn’t reached the website yet can’t oversell. For an item a customer is holding, reserve it in a draft order, so Shopify counts it as committed and the website can’t sell it.
  • Decide which locations fill online orders. Each Shopify location has a setting for this, and it’s on by default. If the shop floor shouldn’t fill web orders, turn it off there.
  • Count everything on a closed day, enter it in the master count, then switch on the link.
  • After that, count one shelf a week. On Shopify POS, you turn on quick count in your admin first. A quick count replaces the quantity with what was counted, so a sale between counting and submitting throws it off. On any till, count when you’re closed or quiet, and submit right away.

References: Shopify Help Center: Setting up inventory tracking (opens in a new tab) · Shopify Help Center: Understanding inventory states (opens in a new tab) · Shopify Help Center: Setting up and managing locations (opens in a new tab) · Shopify Help Center: Planning an inventory count with Shopify POS (opens in a new tab) · Shopify Help Center: Changing inventory quantities on Shopify POS (opens in a new tab)

Test it with real sales before you trust it

A demo shows tidy sample items. Your shop has sizes, bundles and the odd item with no barcode. Spend an afternoon on this list with five real items, and write down how long each change takes to show up on the other side.

  • Sell one item at the till. Watch the online count drop, and time it.
  • Place a real online order. Watch the till’s count drop.
  • Return an item at the counter, then exchange a size. Check both counts.
  • Sell the last unit at the counter and online within a minute of each other. See what happens, and who gets told.
  • Make a sale with the internet off, reconnect, and check both counts.
  • Change a count by hand in each system, and see which change wins. It should be the master count.
  • Find the log. You should see each change, when it happened and where it came from. In Shopify, the Inventory adjustment changes report in your admin lists changes made by hand, by apps, by transfers and by fulfilled orders, plus quick counts made on POS.
  • Export the item list and counts to a spreadsheet, and open it. If you ever switch, you need your data out in one piece.

References: Shopify Help Center: Changing inventory quantities on Shopify POS (opens in a new tab) · Shopify Help Center: Inventory reports (opens in a new tab)

When one count needs more than a sync

For many shops, Shopify POS or a good connector app is enough. Having a connection built only makes sense when no app handles how your shop works, or when the count has to do more than pass sales back and forth. Simple holds may not need anything extra either: Shopify counts units reserved in a draft order as committed, so they stop showing as available.

A sync only passes along what the two systems know, though. Some stock is spoken for in ways neither one tracks:

  • A furniture or lighting showroom. A sofa can be sold, part-paid and waiting for a delivery date while it still sits in the warehouse. The count should show it as taken. Our guides to special orders and deposits and booking delivery days cover those records.
  • A shop that orders from vendors for customers. Items sold before they arrive need to reach the right customer when the delivery comes in, not go back on the shelf for anyone.
  • A bike or appliance shop that also repairs. Parts used on a repair leave stock without a sale at the counter, and they should land on the repair invoice too.
  • Someone copies the same sale between the till, Shopify and a third app, like an order book or job tracker, every week.

Reference: Shopify Help Center: Understanding inventory states (opens in a new tab)

How we connect Shopify and your shop, and what it costs

If two or more of those sound like you, the count belongs in a system that also holds those orders, holds and jobs. Our guide to choosing between an inventory app and your own system walks through that choice.

We build custom business software, plus the connections that keep it in step with the apps you keep. We connect to Shopify, Square, Stripe, QuickBooks Online, Google Calendar, and Gmail or Outlook. For any other till, we check it can connect before we quote.

These are our prices as of October 4, 2026. A focused fix, like connecting Square to Shopify so one sale updates both, is $750–$3,000 over 1–⁠2 weeks. One business system, like special orders, deposits and delivery dates that hold stock and connect to Shopify and Square, is $6,000–$18,000 over 6–⁠10 weeks. A full system with customers, orders, stock, delivery scheduling, invoices and payments is $18,000–$40,000 over 10–⁠16 weeks.

Every launch includes 30 days of fixes, and monthly care is priced in your quote. You own the code we write once it’s paid in full; hosting runs on our account, and you can take it over after payment. The first call is free, and you get a fixed price in writing within 48 hours of it. If Shopify POS or a connector app fits your shop better, we’ll tell you.

Want a system like this, built around how your business works?

See business systems & software
Back to all articles

Questions owners ask.

Does Square work with Shopify?

Yes, but only through a connection. Square and Shopify each keep their own item list and stock count. A sale at a Square till won’t change Shopify’s count unless something passes it along. Your options are a connector app that supports both, a connection built for you, or moving in-store sales to Shopify POS. Whichever you choose, match item codes in both systems first, and test returns, exchanges and sizes before you rely on it.

Does Shopify track inventory?

Yes, for each product or variant where tracking is turned on, at each location. Shopify splits stock on hand into available, committed (in unfulfilled orders or reserved in draft orders) and unavailable, like damaged stock or safety stock. Available is the stock Shopify treats as ready to sell. Even so, POS staff can sell past zero, and so can your website if you turn on “continue selling when out of stock.” Turn tracking on for every item before you link anything, or those items won’t count down.

Does Shopify POS work without internet?

Partly. When we checked in October 2026, Shopify said POS can take cash and manual payments offline. Card payments work offline once you turn that on in your admin. Orders and inventory sync when you reconnect. Don’t sign out or turn off the device while offline, though: Shopify warns that can lose those orders. Until then, your website doesn’t know about those in-store sales, so a one-of-a-kind item could sell twice. Reconnect quickly, then check those items.

Why is my Shopify inventory not updating?

Check these first. Tracking may be off for that product or variant. The sale may have come off a different location. A connector app may not match the item code, or may have stopped. Or a sale happened between counting a shelf and submitting the quick count, so the count set the number back to what it was before that sale. Start with the Inventory adjustment changes report in your Shopify admin.

Can two Shopify stores share one inventory?

Yes, with a connector app or a custom connection. When we checked in October 2026, apps like Trunk listed sync between multiple Shopify stores, matched by item code. Use the same item codes in both stores and pick one as the master count. Then test returns, and the last unit selling in both stores at once.

  • Read this ifYou sell furniture, appliances or other big items, and booking delivery days eats your phone time.

    Delivery scheduling software for showrooms, without phone tag

    Delivery scheduling software for showrooms: let customers pick a day from real truck room, checked against stock and the balance due, without phone tag.

    Delivery scheduling · 13 min read

  • Read this ifYou sell or use stock in a shop, showroom or parts room, and wonder if an inventory app is enough.

    Inventory tracking software: an app or your own system?

    Inventory tracking software for shops, showrooms and parts rooms: what Square, QuickBooks and Sortly charge, how to test one, and when you need your own system.

    Inventory software · 12 min read