ThreadCloud SOPs

For the ThreadCloud team only

Push to Shopify

Take approved styles and create them as products in your Shopify store. Push creates each product as a draft — your full product data is in Shopify, ready to go live, but not visible to shoppers yet.

When to use
After Enrich is complete and all styles in the order are READY. You can push partial orders if you want (e.g. push 80% now, push the remaining 20% once you fix the flagged rows).

Before you push

A pre-flight checklist:

  • ✅ Every style you want to push shows READY (not NEEDS REVIEW)
  • ✅ Cost and retail prices look right on each style
  • ✅ Sizes match the linesheet
  • ✅ Currency in the order header matches the linesheet
  • ✅ FX rate is set if buying in a non-store currency (locks on first push)
  • ✅ At least one image per style (push works without images, but the storefront will look bare)
  • ✅ The buying season + delivery window are correct

If anything’s off — fix before pushing. Pulling products back from Shopify is messy.

The push itself

Open the order → click Push to Shopify (top right of the Enrich tab).

You’ll see a confirmation modal:

DetailNotes
Total stylesCount of READY styles to push
SkippedCount of NEEDS REVIEW styles (will NOT push)
ExistingCount being re-pushed (already on Shopify)
NewCount being created fresh

Click Push N styles to confirm.

What happens:

  1. Each style becomes a Shopify product (with all variants as separate Shopify variants)
  2. Tags get stamped: tc-imported, tc-order-{id}, {seasonCode}, brand-{name}, plus category/colour/pattern
  3. The SKU is generated and written; the same value is also written into Shopify’s barcode field (for label-printer fallback)
  4. All 60+ Shopify metafields get written (tc_core, tc_measure, tc_trade)
  5. Images upload to Shopify’s CDN
  6. The product is created as a draft (not visible to shoppers yet)

A progress bar shows how far along the push is. Typical speed is a few seconds per style, so a 50-style order takes a couple of minutes.

When does it actually go live?
Push does not put products on the storefront. Each product lands as a draft. Products are activated on your point-of-sale channel when you receive the shipment. You control when a product goes live on the online store — so a wrong price on a freshly-pushed draft is not visible to customers yet. Still, fix it before you go live.

During the push

Watch the Enrich page. Each style moves into the Pushed group as it lands in Shopify. If any fail, they show an inline error you can read and retry.

You can navigate away during the push — it’ll keep running in the background. The ambient bar tells you when it’s done.

If some styles fail

After push, the order page shows:

  • N approved
  • N failed (with reasons)

Click each failed row to see the exact error. Most common reasons:

ErrorFix
Shopify rate limit exceededWait 60s, re-push only the failed rows
Image upload failed: file too largeResize the image (under 4MB), re-upload, re-push
Invalid metafield valueA field has bad data — fix it on the Enrich tab, re-push
Duplicate SKUAnother product already has this SKU. Most likely a re-push collision. Don’t force-push — check the SKU.
Missing access tokenThe Shopify session expired. Refresh the page; it’ll re-auth on next request.

To retry only the failed rows: select them in the order grid → click Push Selected.

Re-pushing existing products

If a product is already on Shopify and you change something in ThreadCloud (description, fabric, occasion, etc.), you re-push for the change to show. The bulk Push to Shopify button only creates new products — to update ones already in Shopify, use re-push:

  1. Edit the style in Enrich.
  2. Click Re-push all at the top to update every changed live product, or Re-push on a single tile to update just that one.
  3. The product’s status and handle stay the same — a draft stays a draft, a live product stays live, and the storefront URL doesn’t break.

What gets overwritten on re-push
ThreadCloud-owned fields: description, all tc_* metafields, tags (the TC-managed ones), variant barcode (if it was empty). It does NOT touch: inventory quantity, image order, Shopify-internal fields, anything in non-TC metafield namespaces.

After the push

Verify on the storefront:

  1. Open one product on your storefront
  2. Check the description reads well
  3. Check the image gallery
  4. Check the smart filters work (Shop By → click a filter → does the product appear?)
  5. Check the size scale shows correctly

If something’s off, fix in ThreadCloud and re-push.

Pulling products back

If you pushed by mistake or with wrong data:

  • Quick fix — edit in ThreadCloud, re-push. Don’t delete; just overwrite.
  • Full rollback — Shopify Admin → filter by tag:tc-order-{id} → select all → Bulk delete.
  • Metafield rollback — Use the Legacy Enrichment rollback feature (works within 90 days of the last apply).

Common mistakes

Pushing a half-finished order
Pushed products are drafts, so they won’t hit the storefront before you’re ready. But pushing an order that isn’t final makes for messy cleanup. Finish the order first, and if you use the supplier ack flow, wait for the supplier’s confirmation.

Pushing 200+ styles in one go
A single 200+ push can hit Shopify’s rate limits. ThreadCloud throttles automatically but if you see persistent rate-limit errors, split into two pushes 10 minutes apart.

Don’t manually edit products in Shopify Admin after pushing
If you edit a product directly in Shopify Admin (description, tags, metafields, etc.), the next ThreadCloud re-push will overwrite your changes. Always edit in ThreadCloud, never in Shopify Admin.

Next steps