Skip to content

Tagging

Assemblified can write tags onto your Shopify products (BOMs, raw materials) and Shopify orders (BOM execution status). Tags live in Shopify, are visible everywhere Shopify shows tags (admin filters, Liquid, automations), and are kept in sync by a dedicated background queue.

The three surfaces:

  • Material tags — tags applied to Shopify products that back your BOMs and raw materials. Configured in Settings; written automatically on create, or applied on demand.
  • BOM order-status tagsbom-processed, bom-skipped, or no-bom-available written onto Shopify orders so you can tell at a glance which orders Assemblified handled.
  • Bulk BOM product tags — ad-hoc tag changes against the Shopify products behind selected BOMs, driven from the Finished Goods table.

All three feed the same background queue (assemblified_tagging_queue), which talks to Shopify in chunks of 250 products at a time and survives transient API errors.

Every tag this feature manages is stored on the Shopify side — on the product or the order. Assemblified writes them; you can read them back in any Shopify surface that exposes tags. The Assemblified database tracks the configuration (which tags are defaults, what’s been queued) but not the canonical tag state itself.

That means:

  • Editing a tag in the Shopify admin doesn’t update Assemblified’s record of the tag name. If you rename a default tag inside Assemblified, the old tag stays on products until you re-apply.
  • Deleting a tag in Assemblified leaves the Shopify tag in place — unless you tick “Remove this Shopify tag from all matching BOM and raw-material products” in the delete dialog.

All tag writes go through a Cloudflare Queue worker (assemblified-tagging-queue). Each enqueued job carries a chunk of up to 250 product IDs and the tags to add or remove. The worker batches Shopify’s tagsAdd / tagsRemove GraphQL mutations and retries on transient failures.

You don’t manage the queue directly — but if a job ends up in failed state in the Assemblified jobs table, it usually means the Shopify session expired or a product ID is no longer valid. Re-running the action (or re-installing the app to refresh the session) resolves it.