Skip to main content

Product catalog

The catalog (AGL-276) is the foundation of Aglyn commerce: every storefront block, checkout, and order line points back at these documents.

The product catalog

Products, options, and variants

A product is what you manage; a variant is what a customer actually buys. Products define up to 3 options (like Size or Color, each with up to 25 values), and the products hub expands them into a variants matrix — up to 100 variants per product, each with its own SKU, barcode, price, compare-at price, weight, image, and inventory count.

  • Types: physical (shippable), digital (delivered as downloads), or service.
  • Status: draft (invisible to visitors), active, or archived.
  • Pricing: a variant with a compare-at price above its price shows a sale badge on storefront blocks.
  • Inventory: leave blank for untracked, 0 means sold out — the same semantics the original product block used. Stock is not tracked on a digital or service subscription-only product: nothing decrements it, on the first charge or on any renewal, so the field is disabled there. A physical subscription tracks normally — every paid cycle decrements one unit per box shipped — and Both — buyer chooses keeps tracking on the one-time sales.

Products created with the earlier single-price product block are lifted into this model automatically as a single default variant — nothing breaks and no migration step is needed.

Billing modes and subscriptions

Each product's Billing setting picks how buyers pay:

  • One-time purchase (default) — a normal order.
  • Monthly / Yearly subscription — buyers subscribe instead of buying once; the product page prices as $X/mo or $X/yr, the buy button reads Subscribe, and an optional free trial (in days) can precede the first charge. An active subscription is what members-only content checks.
  • Both — buyer chooses — the product page shows a one-time / subscribe toggle (same price either way, at the interval you pick) and defaults to one-time. The choice is validated server-side against the product: a one-time sale here is a plain order, while the subscribe choice creates a recurring subscription exactly like a subscription-only product.

Selling subscriptions (including the subscribe side of Both) requires a plan with storefront subscriptions (Business and above). Subscription billing applies to the product page's direct checkout — cart checkouts always charge one-time.

Whether a subscription moves stock follows the product's Type. A physical subscription decrements one unit per paid cycle — the first charge and every renewal each create an order on the Subscription channel and take the box off the shelf, so the stock field stays live and low-stock alerts apply. A digital or service subscription never moves stock, and the stock field is disabled there; any number already saved is kept and shown, but it does not cap subscribers and will not change on its own. A saved 0 still stops new subscribers, so clear it (Clear stock on the notice in the editor) if that is not what you want. On a Both product the stock field stays live, because the one-time sales do decrement it.

Categories and tags

Categories are hierarchical (each may have a parent) and slugged for URLs. Tags are free-form labels. Both drive storefront filtering and smart collections.

Collections

Collections group products for landing pages and storefront blocks:

  • Manual collections are an ordered, hand-picked list.
  • Smart collections define rules — match by tag, category, price, name, or product type, with all or any semantics — and membership updates automatically as products change. Draft and archived products never appear.

Slugs

Products, categories, and collections each have a host-unique slug used in storefront URLs (/products/{slug}, /collections/{slug}). Slugs are lowercase letters, numbers, and dashes.

Google Merchant Center feed

Your catalog is also published as a product feed for Google Merchant Center. The address is on the Store settings card under Commerce → Settings: a read-only Google Merchant Center feed URL field with a Copy feed URL button beside it.

In Merchant Center, add it under Products → Feeds as a scheduled fetch. Merchant Center then re-reads the URL on the schedule you set there, so catalog changes reach it without another upload.

What the feed contains:

  • One item per active product. Draft, archived, and deleted products never appear. Items are per product, not per variant — the price is the lowest price across the product's variants.
  • Per item: the product id, name, description (its name again if the description is empty), a link to /products/{slug} on your store, the product's first image if it has one, the price in USD, an availability value, and the condition new.
  • Availability is out_of_stock when a tracked stock count has reached zero and the product does not allow backorders. Everything else — including untracked stock — is in_stock.
  • Up to 500 products. A larger catalog is not fully represented in the feed.

Two things worth knowing before you submit it:

  • Use the URL the card gives you. Each item's link is built from the address the feed was requested on, so submitting the wrong one puts the wrong domain on every product in Merchant Center.
  • The URL appears once the site has an address — a subdomain or a custom domain. Until then the card says so rather than showing a partial URL.

The feed needs no credentials to read, and it carries only what your storefront already shows publicly. Responses are cached for an hour, so a price or stock change can take that long to appear in a fetch.