Usage & cost notice. Cloudflare Workers, Pages Functions, D1 and third-party APIs can consume quota or create charges depending on plan and usage. Supplier and Shopify limits also apply — review current provider pricing before production.
1. Setup
Setup checklist
Deploy the backend Worker and D1, then deploy this Pages site with the BACKEND service binding.
Protect the dashboard hostname with Cloudflare Access and verify unauthenticated users are blocked.
Create/configure the Shopify app. Set the app URL to this dashboard and the redirect/callback URL to /api/shopify/callback.
Use only the required scopes: read_products, read_inventory, write_inventory.
Store SHOPIFY_CLIENT_ID, SHOPIFY_CLIENT_SECRET and APP_ENCRYPTION_KEY as Worker secrets; never paste them into source code.
Accept the acknowledgement, connect Shopify, add feeds, test them, create mappings and run a dry-run.
Enable scheduled live sync only after the dry-run has been reviewed.
Checking backend configuration…
What this tool will never touch
Every write this app makes to Shopify goes through one inventory-quantity mutation, enforced centrally in code (shopify.ts) with an allowlist that rejects anything else. It cannot rename products, change variant options, edit tags, move collections, or touch UKARA / two-tone status — only the available inventory number.
Cloudflare Access
This dashboard is designed to sit behind Cloudflare Access. Confirm Access is active before entering real credentials.
Schedule
Hourly
Runs on the hour, every hour (UTC).
Runs from the backend Worker Cron even when this page is closed.
Responsibility acknowledgement
Live writes are blocked until this acknowledgement is accepted.
Connect Shopify
Enter the permanent Shopify store hostname. No store is preconfigured.
Check Shopify products
Browse the products and variants currently in your connected Shopify store.
Scheduled live sync
Keep scheduled writes disabled until Shopify is online, the acknowledgement is accepted, feeds are tested and a dry-run has been reviewed.
2. Suppliers & feeds
No supplier records are created automatically.
3. SKU mappings
Map authorised supplier SKUs to Shopify inventory items and locations.
🔍
4. Sync & history
Dry-run first. Live writes require the acknowledgement and a connected Shopify store.