For the complete documentation index, see llms.txt. This page is also available as Markdown.

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.

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.

Mode
What happens

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.

What pyck reports for a SKU
What happens in Shopify

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:

Reason
What it means

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?