Products, variations and the stock behind them.

A shirt is not one thing. It is five sizes in four colours, each with its own stock, and sometimes its own price. The catalog is built around that matrix rather than around a flat product list.

And the same catalog feeds the counter, the online store, the partner portal and the API, so a price is changed in one place.

Variations as a matrix

Define the axes your products vary on, colour, size, or anything else, and the variants come out as a grid you fill in. Stock and price overrides live per variant.

Stock that moves by itself

Every change is a movement with a reason: an order deducted it, a purchase order restocked it, someone counted. A variant crossing your low-stock line raises an alert, in the app or by email.

What can be printed on what

Print sides and printing methods are attached per product, so a screen print offered on one garment and not on another is a fact the store and the order form both already know.

Bring in what you already have

Import products from a spreadsheet, mapping your columns to ours. Missing categories, suppliers, tags and variation options are created as they are found. Existing products are matched by SKU and updated rather than duplicated.

Change a hundred products at once

Raise a price by a percentage across a selection, add a printing method to all of them, change a category, publish or unpublish to a store. Array fields are added to or removed from rather than overwritten, so nothing else on the product is lost.

Questions shops ask

Do we have to track stock?

No. Numbered inventory is a part you can switch off. Without it the catalog is still products, variations, prices and printing options, which is what the store and the order form need.

Can a customer see one price and a partner another?

Yes. A partner's catalog is a curated list with its own prices per product, and the store shows yours. Neither one is a second copy of the product.

Come and see it running in a shop like yours.