Warehouse stock
Letting pyck drive the stock counts your Shopify locations show
Audience: Logistics Manager
pyck knows what is actually on the shelf. This feature copies that count into Shopify so your storefront sells what you really have.
It is off until you switch it on.
pyck decides the stock count at every paired location. Each sync writes pyck's number over whatever Shopify holds. Any on-hand quantity you edit by hand in the Shopify admin is overwritten at the next sync and the change is lost. Correct stock in pyck, not in Shopify.
In pull mode a hand edit survives less than one interval. In push mode it can be gone within seconds.
1. Pair each location with a storage area
Nothing happens until a Shopify location is paired with the pyck storage area that holds its stock.
Pairing lives under Connections, in the Warehouse stock card. It only appears on the production connection — no other tenant may write your stock.
The rules are strict, and the app will refuse a pairing that breaks them:
One storage area stocks one location. A location cannot be fed by two areas, and an area cannot feed two locations.
An area nested inside another cannot be paired alongside it. A pyck area's count includes everything below it, so pairing both a parent and its child would count the same goods towards two Shopify locations. Areas sitting side by side are fine.
A virtual storage area — one pyck uses to record movements rather than to hold goods on a shelf — can be paired, but the app warns you. What it counts is unlikely to match what is in the location.
2. Choose how stock reaches Shopify
The Warehouse stock page offers three options. Pick one — they cannot run together, because each would overwrite the other's work at unpredictable moments.
Off
Nothing reads pyck and nothing writes stock. Your Shopify quantities stay exactly as they are.
Pull — this app asks pyck on a timer
The app reads each paired storage area on a schedule (once an hour by default) and writes the counts onto its Shopify location. Every run is checked before it writes.
Push — pyck tells this app when stock moves
Nothing runs on a timer. Your pyck workflow calls the app whenever stock moves and the app writes that one quantity straight to Shopify.
The preview approval and the safety limits described below apply to pull mode. Push mode writes one quantity at a time, so there is no whole warehouse being read at once to check.
3. Approve the first sync for each location
A location that has never synced will not be written to until you say so.
On the Warehouse stock page, choose Check what pyck holds. The app reads the whole paired storage area, reports how many SKUs it found, and writes nothing. When the numbers look right, choose Approve and run the first sync.
Both run while you wait, so leave the page open — a large warehouse can take a few minutes. After the first sync succeeds, syncing carries on by itself.
The first sync of a large warehouse may also have to switch thousands of products on at that location in Shopify first, one request each. That work is spread across several later syncs, so stock arrives in batches until it is done.
What actually gets written
These three rules are the heart of the feature.
A number, including 0
It is written. Zero is a real sell-out and has to reach your storefront.
No entry at all
The SKU is skipped. It is never set to zero and never touched.
pyck errors, or cannot be reached
The run writes nothing at all. Not partially, not zeroes.
The second rule is the important one. It means a pyck outage, an expired key, a pairing pointing at a deleted storage area or a mis-scoped tenant cannot empty your catalogue — all of them produce absences, and absences write nothing.
So anything you do not keep in the paired storage area is left exactly as it is in Shopify.
A SKU that more than one Shopify product uses is also skipped rather than guessed at. The app will not decide for you which of two products a count belongs to.
Why your available quantity can look wrong
The app writes Shopify's on-hand count — the physical number of units in the warehouse.
Shopify works out available itself, by subtracting the units already committed to open orders. So:
That is why a location can legitimately show a negative available: pyck says there are 3 units on the shelf, Shopify has 5 already promised to customers, so 2 are owed. That is accurate, not a bug — you are oversold and the number is telling you by how much.
It is also why the app writes on-hand rather than available. Writing a physical count into available would add the committed units back and let you sell them twice.
A sync that stops is the safety net working
Every stopped run means the same thing: nothing was written and your stock was left alone. Stopped runs are shown in orange, not red, for exactly this reason.
A run stops when:
Waiting for your approval
The location has never synced. Approve it on the Warehouse stock page.
It would have emptied the location
pyck reported most of this location's stock as zero. Far more often a storage area that was emptied, re-seeded or renamed in pyck than a real sell-out.
The paired storage area is gone
The area no longer exists in pyck. Pair the location with one that does.
pyck reported far less than last time
This run found much less stock than the last successful one. Usually a pyck-side problem rather than a real fall.
The run took too long
Its counts were already out of date by the time it was ready to write, and writing them would have moved your stock backwards.
The sync stopped part-way
The app restarted mid-sync. Nothing partial was left behind; the next sync starts over.
Most of these clear themselves. Once pyck reports normal counts again, the next sync goes through without anyone doing anything.
Overriding the emptying limit
When a run would set most of a location to zero, it stops and offers an override. Use it only if the warehouse really is empty — every one of those products stops being sellable from that location the moment it is written.
The override applies to one sync. The next sync is checked in exactly the same way, so if pyck is still reporting the area as empty it stops again, which is what you want.
Prerequisites checklist
Stock will not move unless all of these are true:
You have a production connection, and it is switched on.
The Shopify location is paired with a pyck storage area.
The mode is pull or push, not off.
For pull mode, the location's first sync has been approved.
If something looks wrong, see When something looks wrong.
Last updated
Was this helpful?
