Overview & core concepts

Start here. This page explains what setlist is, how it sits alongside Shopify and Fulfil, and the handful of concepts that everything else builds on.


What setlist is

setlist is the operational prep room for products you haven't launched yet. You plan a product, build its variants and SKUs, enter its bill of materials, cost it, run QA tests, forecast it, and review it before launch. When it's ready, Push to Shopify (unlisted) creates it in Shopify with the native Unlisted status — real, so Fulfil syncs it, but hidden from search, sales channels, and the catalog. From there you either use Publish & activate in setlist (publishes your selected sales channels and sets the Shopify status Active) or finish publishing directly in Shopify.

"Plan products, generate SKUs, prescribe tests, set pricing, and review them before they're created in Shopify."

How setlist fits with Shopify and Fulfil

Three systems, each owning its part:

SystemOwns
setlistThe prep: the official name, variants, SKUs, bill of materials, costs, QA tests, forecast, internal notes, and the readiness pipeline
ShopifyThe listing: final photos, SEO, collections, publication — and the live storefront
FulfilAn optional source of truth for synced materials (stock-on-hand and unit costs) and, where a SKU has one there, read-only bills of materials

The product description is shared rather than owned by one side: you edit it in setlist, and for a product linked to Shopify the edit saves to Shopify first. If Shopify and setlist both changed it since the last sync, setlist raises a description conflict for you to resolve. See Shopify catalog & reconciliation.

setlist doesn't try to rebuild Shopify's product editor or Fulfil's inventory — it fills the gap before a product exists in either.

Permissions, as you go. setlist installs with minimal Shopify access and asks for more only when you push a product, list it live, sell a sample, or sync Shopify sales for forecasting. Fulfil is optional too. See Shopify access & permissions.

setlist
the studio
  • Variants
  • SKUs
  • Bill of materials
  • Costs
  • Testing
  • Forecast
  • Readiness pipeline
Shopify
the listing
  • Official name
  • Photos
  • Description
  • SEO
  • Collections
  • Live storefront
Fulfil
source of truth for materials
  • Stock on hand
  • Unit costs
  • Labor
Who owns what — setlist · Shopify · Fulfil

The core model

Product vs. Variant vs. SKU

  • A Product is the design/merchandising container — the name, category, owner, launch, notes. It has an ID, but that ID is not a fulfillment key.
  • A Variant is the actual sellable/fulfillable unit. It carries the SKU, the bill of materials, costs, price, and forecast quantity. QA tests live on the product and are usually scoped to an option value so one test can cover several variants.
  • Every product always has at least one variant. A "simple" product has a single hidden default variant carrying its SKU — you never see the word "variant" until you add a second one.
  • A product can vary on up to 3 option types (e.g. Size, Metal, Length), each with many values. The variants are the combinations.
ProductStacking ringRing
VariantSize 5R-STACK-SS-5BOMCOGSTestsForecast
VariantSize 6R-STACK-SS-6BOMCOGSTestsForecast
VariantSize 7R-STACK-SS-7BOMCOGSTestsForecast

Every product has at least one variant. The SKU and all costs live on the variant — not the product.

Product → variants → SKU

Category vs. Shopify's product type

Two similarly named fields, and they are not the same thing:

  • Category is setlist's own planning field — the catalog you manage in Settings → Categories. It drives SKU generation, default variant options, target margin, target forecast, and sub-categories, and it groups the Products list. It is never written to Shopify.
  • Product type is a read-only mirror of Shopify's own product type. It appears in the Status panel of a product that is linked to Shopify, filled in by the catalog sync, the product webhooks, and catalog reconciliation. setlist never writes it back.

SKUs are generated, not typed

SKUs are built automatically from a per-category template plus your global prefix — e.g. R-STACK-SS. You can override a variant's SKU, but you never assemble one by hand. See Categories & SKUs.

Costs roll up; you type only the price

A variant's material cost sums its bill of materials. Its current labor cost is read-only; automatic Fulfil routing/labor synchronization is not shipped. Materials plus labor make COGS. You enter only the price; margin and a suggested price compute from there.


The pipeline

Every product moves through a fixed set of stages, each with a checklist ("gate") that must be complete before advancing:

Plan → Design → Review → Ready for launch → Launched · Archived

"Ready for launch" is the final editable stage. setlist stages the product in Shopify and you complete publication. "Launched" then appears in the same Stage position as a derived, non-editable lifecycle value — when Shopify is Active, when an imported or merchant-reconciled product is Unlisted, when a setlist-owned product is Unlisted after reaching Ready for launch, or when a Draft product has at least one sold unit. A Draft product with no sales keeps its stored stage and normal editing. This distinction lets products staged in Shopify early continue through Design and Review — setlist preserves the underlying editable workflow stage.

Variants, bill of materials, costs and SKUs, then a design sign-off.

Archivedterminal, off to the side
The pipeline — four stages, a gate between each. Tap a stage.

The grouping hierarchy

Products can be grouped two levels up:

Campaign → Launch → Product

  • A Launch is a drop with a date range; you assign products to it.
  • A Campaign groups multiple launches and products under one banner (e.g. "Summer 2026").
CampaignSummer 2026
LaunchFall drop
ProductStacking ring
ProductSignet ring
Campaign → launch → product

Two testing features (don't confuse them)

  • Testsinternal QA you run yourself (tarnish test, wear test…).
  • User testing — sending physical samples to real people for feedback via a hosted form.

Forecasting is versioned

Forecasts combines recent Shopify sales, older workbook history, and inventory snapshots. Generated forecasts begin as editable drafts; locking one freezes the version so future actuals can score it without rewriting the plan.


A new shop starts empty

setlist ships with no catalogs pre-loaded — you build your categories, team, launches, product lines, classifications, and so on in Settings. The jewelry examples throughout these docs (Rings, Sterling Silver, etc.) come from the optional demo data and are just illustrative.

First-time setup: work through Settings in order, then create your first product card.


Two things to know about the UI

  • Most fields autosave as you type (a quiet "Saving… → Saved"). Multi-part builders and big actions use explicit buttons. See each page for which.
  • Removing is immediate — trash icons delete right away, without a confirmation dialog.

Where to next