Shopify · Stocky · read-only extraction

Get your Stocky data out

Stocky shuts down on 31 August 2026. Its API shuts down with it. This page pulls your purchase orders, suppliers and stock adjustments into CSV files — entirely inside your browser. Your API key is never sent anywhere except Stocky itself.

2 Feb 2026Removed from the App Store. No reinstalling.
31 Aug 2026App and API stop working.
~29 Nov 2026Read-only access ends (Shopify says at least 90 days).

Your store

The store Stocky is installed on. Open Stocky and look at the bottom of any page — it says "Logged in at …". That is not always your main shop.

Find it at stocky.shopifyapps.com/preferences/api while you are signed in.

Do both — neither one is enough

The key gets your purchase orders with their line items, and supplier record IDs and timestamps. Nothing else can reach those.

The script further down runs inside Stocky in your own session and reaches a different set: 41 columns per variant, a purchase-order report carrying supplier order numbers and received-to-date totals, adjustment reasons and the staff who made them, payment terms, and the lead times and minimum order quantities that no export contains at all.

Neither covers the other, so run both. And check /preferences/api first: on some stores the API section has to be switched on by Shopify support before a key appears at all, and that request takes days — start it now if you need to.

What the key cannot reach

The API covers purchase orders, suppliers, stock adjustments and tax types. It does not expose these, so the export above will not contain them:

  • Supplier lead times and re-stock periods
  • Per-variant lead-time overrides
  • Minimum order quantities
  • Which vendors a supplier is linked to
  • Pack size, reorder points, bin locations, custom fields

All of it is on screen inside Stocky, which is why every migration guide tells you to copy it out by hand. You don't have to — the script below reads those pages for you. It is not an alternative to the export above; the two reach different data, and a complete copy needs both.

Getting the rest

This part runs inside Stocky itself, in your own signed-in session, so it needs no API key. It visits your vendor and supplier pages, reads the values off them, and saves a ZIP containing ready-to-use CSVs plus the original pages as a backup.

Why this looks alarming, and when it should

Pasting code into a browser console is exactly the trick attackers use to hijack accounts, which is why Chrome makes you type allow pasting first. That warning is doing its job.

So apply the rule properly: read the code, or have whoever handles your tech read it, before running it. It is about 600 lines, commented, and issues only GET requests. And after this, go back to never pasting console code that arrives in a DM, an email, or a support chat — including from anyone claiming to be us.

Open Stocky and sign in

Any page will do. The script only works on stocky.shopifyapps.com and stops immediately anywhere else.

Open the console

F12, or Option-Command-J on a Mac, then pick the Console tab.

Type allow pasting and press Enter

Chrome asks for this once per session. Other browsers may not ask at all.

Paste the script, press Enter

Use the copy button below. It prints a short menu when it loads.

Run it

Type stockySnapshot.run() and press Enter. On a large catalogue start with stockySnapshot.run({ maxEntities: 25 }) to see how it behaves first. It reports progress as it goes and downloads a ZIP when finished.

Check what it missed

Open MANIFEST.md in the ZIP. Read the top first: if any count disagrees, it says so there. Then check the Not captured section — each line is a page it failed to read, which is data that did not get saved. Send that list to info@khalaq.tech if anything on it looks important.

stocky-snapshot.js

      

Inside the ZIP: parsed/ holds the CSVs you can open straight away, csv/ holds Stocky's own exports untouched, and html/ holds the original pages. That last folder is the insurance — if a parsed value looks wrong, the source page is still there, and Stocky no longer has to exist for someone to check it.

Two things only you can do

Neither tool can reach these, and both matter:

  • The orders report. Requesting it queues a job on Stocky's side and emails you a download link that expires after one week. Request it now rather than in late August — a job queued the day before shutdown may deliver a link to an app that no longer exists.
  • The profit report. It has no CSV version. Export it from its own page if margin history matters to you.

Why you can trust this page

  • Your key cannot leave this page, and that is enforced rather than promised. This site is served with a Content-Security-Policy whose connect-src permits exactly two destinations: Stocky, and this domain. Your browser blocks anything else at the network layer, no matter what the code says. Check it yourself: open the Network tab and look at the response headers.
  • Nothing you enter here reaches us. Your key and your Stocky data are handled entirely inside your browser tab. We keep no log of your visit and run no server in the path.
  • No third-party domain is contacted at all — no fonts, no CDN, no tag manager, no tracker. View the source and search for http: the only external address is Stocky's.
  • Visits are counted by a cookieless script served from this domain, which records a page view and nothing else. It is one line at the bottom of the source; delete it and the page behaves identically.
  • The Stocky API is read-only. Every documented endpoint is a GET; there are no write operations. This page could not alter your data even if it tried.
  • Every request it makes is printed in the log, as it happens.

Still uneasy? Save the page to your desktop and open it from there. It only ever talks to Stocky.

Where you may still want help

The tools above get your data out. Three things they do not do:

  • Loading it into whatever you move to. Shopify's own guidance is to store supplier lead times, minimum order quantities, case packs and supplier SKUs as variant metafields — supplier.lead_time_days and friends. That mapping, and writing thousands of them through the Admin API, is work.
  • The per-variant fields no export reaches: pack size, bin location, shelf limit, minimum stock, reorder points and Stocky's custom fields. They exist only on individual product pages inside Stocky.
  • Rebuilding the purchasing workflow itself — native purchase orders drop reorder suggestions, store supplier currency and payment terms per order rather than on the supplier, and cannot email a PO at all.

If any of that matters to you, write before the deadline. After 31 August the API is gone and the options get considerably worse.

info@khalaq.tech