Blog/Operations
OperationsOctober 27, 2026·8 min read

How Shopify Inventory Locations Work, and Which SOPs Break

A second warehouse or a new market changes how orders route, which rates show and what customers can buy. Here is what changes, and a four-pass check for the SOPs that stop matching.

AY
Anand Yadav · Founder, ReccordSOP
·Last reviewed October 27, 2026

Every new location and every new market changes the steps your fulfillment team follows. The written procedure rarely changes with them. So after any location change, don't trust an SOP until it passes a short check. That check has four passes, and it is at the end of this post.

In Shopify, a location is a place that holds stock or sends out orders. That can be a warehouse, a shop, a pop-up, or an app such as a 3PL. Each location keeps its own stock count. Once you have two, one product can sit in both places at once. A procedure written for one pool of stock no longer describes the store.

One dated change comes first. Shopify retired the Stocky app on August 31, 2026. Any SOP that still opens Stocky is not stale. It is dead.

Which SOPs go stale when you add a location?

The ones that name a single number, a single screen, or a single pool of stock. Five kinds break on day one:

  • Anything that quotes one stock figure. "Check available units" now has to say at which location.
  • Reorder triggers. A reorder point built on store-wide sales no longer tells you which shelf is empty.
  • Pick, pack and label steps. The location that ships the order may change, and so may the carriers on offer.
  • Oversell handling. Routing can send an order to a location with no stock. Your support macro has no branch for that yet.
  • Screenshots of the Inventory or Locations pages. They now show a count per location, not one figure.

The fix is to rewrite every number as a per-location number. Our inventory replenishment SOP explains why reorder points rot as sales shift. With a second location, you work that trigger out for each location, not once for the store.

What changes in the admin when you add a second location?

Three things switch on. Each one needs a step your old document does not have.

First, stock is counted per location. A manual count update is now an update to one location's number.

Second, order routing starts to work. Shopify only applies routing rules when a store has two or more fulfillment locations. With one location, every order goes there and the rules do nothing. So the day a second warehouse goes live, a settings page that sat idle starts deciding where orders ship from.

Third, the default location starts to cost money. Unless you change your shipping settings, Shopify works out rates from the default location. If you move the default to a country a carrier doesn't serve, that carrier's rates disappear at checkout. Shopify's own example: set a default in the United States, and Canada Post rates stop showing.

How does Shopify decide which location fulfills an order?

It runs your routing rules from top to bottom. Each rule works on what the rule above it left. The location ranked highest at the end gets the order. Shopify's help page says the rules pick a location for each item in the order. That is why one order can ship from two places.

The default setup has three rules, in this order:

  1. Minimize split fulfillments. Locations that hold every item come first.
  2. Stay within the destination market. Locations in the same market as the shipping address come first.
  3. Ship from the closest location. Distance is a straight line, not driving distance.

Shopify's worked example: an order ships to New Jersey, and the store has stock in New York, Vancouver, Miami and Texas. Texas drops out on stock. Vancouver drops out on market. New York beats Miami on distance.

Two outcomes need their own branch in your SOP. Splits still happen: the first rule cuts them down, but it can't stop one when no single location can fill the order. And routing doesn't stop overselling. It can send an order to your top location even when that location has no stock, so the sale isn't lost. Someone then has to move stock there or change the fulfillment location before it ships.

When an order lands somewhere unexpected, Shopify lists the usual causes:

  • The location doesn't have online order fulfillment turned on.
  • Its address isn't verified, so the closest-location rule skips it.
  • It had no stock when the order was placed.
  • It isn't in an active shipping zone that covers the destination country.
  • The customer's address couldn't be matched to a map point. This is more common outside the United States. The closest-location rule is skipped and your oldest location is used.
  • Two locations tied. The older one wins. Add the Use ranked locations rule to control this.

If a 3PL does the routing, our ShipBob order routing SOP covers warehouse priority by customer zone in ShipBob's own screens.

What does opening an international market change for your team?

Markets add a second kind of availability that has nothing to do with stock. A market is a group of customers. You define it by country or region, B2B company location, retail location, or sales channel. Then you choose what that group gets: currency, catalogs, theme changes, domain and language, and duty and tax settings.

The trap is the catalog. A product must be in a catalog assigned to a market before customers there can see it or buy it. If they open the page for a product they can't buy, they get your store's 404 page. Your support team will read that ticket as a broken link, not a catalog setting. If you import catalogs by CSV, write down one more rule: leave currency symbols out of the Fixed Price column.

Two more settings catch people out. Your store currency, not your store address, sets your primary market. A US address with the currency set to Canadian dollars makes Canada the primary market. And turning a market off has side effects. If it used subfolders, those URLs stop working, so you need redirects. A market on its own domain or subdomain redirects to your primary domain by itself.

Markets also feed routing. The second default rule drops any location outside the order's market before distance is checked. So adding a market, or moving a location into one, can change which warehouse ships an order even when stock and distance haven't changed.

Try it on one of your own procedures.

Record a process once, AI writes the structured SOP. 3 free SOPs, no credit card.

Start for free →

When should a shipping profile decide the location?

When certain products must always ship from certain places. Shopify's advice is direct: if different locations should fulfill specific products, use shipping profiles to assign products to locations. Routing then chooses among the locations each product is allowed to ship from. Rates, zones and profile limits are covered in our post on how Shopify shipping rates work.

One switch on each location matters too. Turning off "Use inventory at this location to fulfill online orders" takes that stock out of the product's online quantity. That is the number customers see if you show stock levels. It also stops Shopify POS ship-to-customer orders from using that stock. Draft orders and some other sales channels can still draw on it.

Shopify shipping rates explained, and why they drift

Profiles, zones and the rate names that quietly merge when two profiles meet in one cart.

What replaced Stocky, and what has to be rewritten?

Shopify's built-in inventory tools replaced Stocky. Purchase orders, transfers, stock counts and adjustments now happen in the Shopify admin or Shopify POS. Four details belong in whatever you rewrite:

  • The export window is closing. Shopify gives read-only access to export Stocky data for at least 90 days after August 31, 2026. That means it could close from late November. Old purchase orders and stocktakes don't move across by themselves. Suppliers can't be exported at all. Export what you need now.
  • Purchase order history doesn't import. A CSV upload only adds product lines to a new draft purchase order. Past statuses, received quantities and supplier links stay behind.
  • Integrations broke. Stocky's APIs stopped on August 31, 2026. Any tool that read Stocky needs to work with Shopify's inventory tools instead.
  • Transfers only move stock between locations. Each variant can have one bin per location, but moves between bins or zones inside one building aren't tracked. An internal re-slotting procedure still needs its own method.
Export before the window closes

Stocky's read-only export access lasts at least 90 days from August 31, 2026, so plan as if it ends in late November. Export completed purchase orders, stocktake history and cost data while you still can.

How do you find out which documented steps went stale?

Run a short check after every location or market change, not a quarterly rewrite nobody gets to. Four passes:

  1. Open the four settings screens and write down what you see. They are Settings > Locations, Settings > Shipping and delivery > Order routing, your shipping profiles, and Markets > Catalogs. Your SOPs point at these screens, so these are the ones that go stale.
  2. Place one test order for each location you expect to ship from, plus one to an international address. Check that each order lands where your document says, and whether it split.
  3. Check what each market can buy. On the Products page, use View as and pick a market. Products left out of that market show as Unpublished. Each one is a 404 a customer would have found first.
  4. Compare the steps, don't overwrite them. The useful result is a list of which steps changed, not a clean new document. Our post on SOP version control without the overwrite explains why a visible change history is what makes the current version trustworthy.

Where this check falls short: it tells you the settings changed, not whether the new settings are right. If someone who has left set up routing, matching the document to the admin just locks in their choices. Treat those as two questions. Give the second one to whoever owns fulfillment cost.

Inventory reconciliation SOP for Shopify and your 3PL

Once orders route to the right place, the counts at each location still have to match.

Next step

Pick the most recent location change. Run the four-pass check against the SOP that covers it. One procedure that matches the admin today beats a library written before the second warehouse existed.

ReccordSOP turns a screen recording into a step-by-step SOP, with a screenshot for each step and the clicked button highlighted. Re-record the same task later and it compares the new recording with the existing SOP, flagging the steps that changed instead of overwriting them. Workspace admins get an email when an SOP goes 90 days without an edit or a review. It doesn't watch your Shopify settings, so someone still has to notice a routing or catalog change and re-record.

The free plan covers 3 SOPs in total. Team is $19 per user per month, with a 3-user minimum. Start with the location procedure you just checked: record it on reccordsop.com and keep the comparison for the next time a location changes.

Frequently asked questions

What are Shopify inventory locations?

A location is any place in Shopify that holds stock or sends out orders: a warehouse, a shop, a pop-up, or an app such as a 3PL. Each location keeps its own stock count, so adding a second one turns one stock number into two.

Does Shopify always ship from the closest location?

No. Ship from closest location is the last of three default rules. It runs after minimize split fulfillments and stay within the destination market, so a closer location can lose on stock or market. Distance is measured in a straight line, and a location with an unverified address is skipped by that rule.

Why do international customers see a 404 on a product page?

The product isn't in a catalog assigned to that customer's market. Shopify shows your store's 404 page instead of an out-of-stock message. Check it with View as on the Products page before customers report it.

Can order routing oversell a location?

Yes, on purpose. Routing doesn't stop overselling. It can send an order to your top location even with no stock there, so the sale isn't lost. You then move stock or change the fulfillment location before it ships.

How long can I still export data from Stocky?

Shopify gives read-only export access for at least 90 days after August 31, 2026, so plan as if it ends in late November 2026. Suppliers can't be exported, and old purchase orders can't be imported into Shopify, so export completed purchase orders, stocktakes and cost data now.

Ready to record your first SOP?

3 free SOPs to start. No credit card required. See if drift detection keeps your docs honest.

Start for free
AY
Anand YadavFounder, ReccordSOP

I built ReccordSOP after watching too many DTC ops teams lose months to undocumented workflows. These SOPs are battle-tested with Shopify operators running $1M to $50M brands.

Last reviewed October 27, 2026

Related reading