All documentation · Selling & payments
Products and coupons
Build your Clyentra catalog: simple and variable products, the variant matrix, barcodes, Stripe tax codes, AI product imagery, categories, and discount coupons.
9 min read · Reviewed
Everything you sell in Clyentra — on an invoice, in a hosted storefront, inside a deal — resolves back to a product record. This guide covers the two product kinds, the variant matrix, how tax works on a Stripe organization, and how to cut a discount that behaves the way you meant it to.
Where the catalog lives
| Screen | Route | What it holds |
|---|---|---|
| Products | /products/products | Every sellable item, simple or variable |
| Categories | /products/categories | The tree products are filed under |
| Coupons | /products/coupons | Discount codes and who can use them |
Categories first: Category * is required on every product, and the category picker only shows categories whose type matches the product's type. Create at least one category before your first product, or you will bounce back to do it anyway.
Categories: two types, one rule
A category needs a name (max 100 characters) and a Category Type — either Digital Service or Physical Service. Categories nest, and the one hard rule is that a parent must be the same type as its child. Change a category's type and Clyentra clears the parent selection, because the old parent is no longer legal.
The screen offers a tree view and a table view. Use the tree while you are designing the structure; use the table once you are managing a hundred of them.
Simple or variable: pick before you type
The first section of the product form is Product type, and it is a fork in the road. The two cards are:
Simple— "Single variant, no options". One SKU, one price, one stock number. A single book, a single laptop model.Variable— "Multiple variants (size, color, etc.)". One product, many sellable combinations, each with its own price and stock.
The choice reshapes the rest of the form. A Simple product shows the Inventory & Pricing section and you type the numbers in directly. A Variable product hides that section entirely and shows Variants instead — because on a variable product, price and stock live on the variants, not on the parent.
Build the variant matrix
In the Variants section you define option groups — up to three of them. Name each group (Size, Color, Material), add its values, and Clyentra multiplies them out and builds the matrix for you.
- Add an option group. Press
Add Optionand name it — the placeholder reads "Option name (e.g. Size)". Before you do, the section says so plainly: "No options yet. Add an option group (e.g. Size, Color) to create variants." - Watch the matrix appear. Every combination becomes a row under
Variants ({n}). Two sizes and three colors gives you six rows, and you typed none of them. - Fill in each row. Each variant carries its own SKU, Price, retail price and Stock. Leave the SKU blank and the field shows the placeholder
Auto. - Set a default, prune the rest. The star column marks one variant as the Default — the one a storefront shows first. The
Activeswitch turns a combination off without deleting it, which is how you handle "we don't stock XXL in red".
A variable product needs at least one real option: Save a variable product with no usable options and Clyentra stops you: "Add at least one option with values to generate variants." An option group with a name but no values does not count.
The rest of the product form
| Section | What goes in it |
|---|---|
Basic Information | Product Name *, a rich-text description, SKU, and Barcode (UPC/EAN) |
Classification | Type * (Physical Service / Digital Service) and Category * |
Inventory & Pricing | Selling Price, retail price, Purchased Qty, Current Stock, and the Includes tax toggle — simple products only |
Specifications | Weight, Dimensions (L x B x H), and Duration (months) on digital services |
Additional Info | The Tax code, on a Stripe organization |
Images | Upload, Drive, AI Generate, Virtual Try-On |
The barcode is yours to supply: Barcode (UPC/EAN) is a field you type into — Clyentra does not mint one for you. Enter the code from your supplier or from your own labelling scheme. Once the product is saved, its sidebar renders that code as a scannable barcode and gives you a Print label button, so a number you typed by hand still ends up on a physical label.
Tax: the Stripe path
Clyentra's tax model is configured per country. On a Stripe organization — the path for teams selling in the United States, Canada, the United Kingdom and the EU — you do not maintain tax tables by hand. Stripe Tax calculates sales tax or VAT for you, from your tax registrations and from each product's tax code.
That is why the product form carries a required Tax code field in Additional Info. It is a searchable picker — type into Search tax codes… and choose the code that describes what you actually sell. Save without one and Clyentra tells you: "Tax code is required for Stripe".
- The
Includes taxtoggle beside the retail price records whether the price you typed is already tax-inclusive. - Tax registrations are configured once, on the Stripe side — see integrations.
- Getting the tax code right on the product is what makes the tax right on the invoice — see orders-invoices-payments.
Product images, including the ones you don't have yet
The Images section accepts JPEG, PNG, WebP and GIF up to 25 MB per file — go over and you get "Image size must be less than 25 MB." Clyentra compresses images as they upload, so a heavy studio export does not become a slow storefront. Star an image to make it primary.
| Source | What it does |
|---|---|
Upload | Files from your machine |
Drive | Files already in Clyentra Drive — see drive-file-storage |
AI Generate | Describe the shot as a Prompt, pick an Aspect Ratio, press Generate, then Add Image |
Virtual Try-On | Upload a Person Image and a Garment Image, add a prompt, and put the product on a model |
Market a product without leaving it: The product sidebar carries a Market with Clyentra action that turns the product into marketing assets. AI generation and try-on spend AI credits — see ai-credits — and the full toolset lives in ai-image-studio.
Coupons
A coupon is a code, a discount, and a set of conditions. Open /products/coupons and create one.
- Enter the Coupon Code. Type freely — Clyentra uppercases as you go and strips anything that is not a letter, number, hyphen or underscore, up to 30 characters.
summer 20!lands asSUMMER20. - Choose the Discount Type.
PercentageorFlat. A percentage is capped: enter more than 100 and you get "Percentage cannot exceed 100". A flat discount is an amount in your organization's currency. - Set the Conditions.
Min Cart Value,Min Items, andMax Uses Per Lead. LeaveMax Uses Per Leadblank and the placeholder tells you exactly what happens:Unlimited. - Decide who gets it. Under
Lead Restriction,Assign to specific leadnarrows the coupon to one person. "Leave empty to make this coupon available to all leads." - Set the Validity, then save.
Start DateandEnd Dateare both optional — "Leave empty for no date restriction". TheDescriptionfield (max 500 characters) is where you record why this coupon exists, for whoever finds it in six months.
Two date rules are enforced on save: "End date cannot be in the past" and "End date cannot be before start date". An Active / Inactive switch lets you retire a code without destroying its history.
Coupons are a recovery tool, not only a promotion: A lead-restricted coupon is exactly what you send to someone who walked away from a full cart. The abandoned-carts screen will generate one and send it for you — see orders-invoices-payments.
Working the product list
Click any row to open the product sidebar. Most fields edit inline — click the name, the SKU, the stock number, and type. The sidebar also carries a Reviews tab, the rendered barcode with Print label, and a Timeline recording when the product was created and last updated. Pin the products you sell most and they stay at the top of the list.
Questions people ask
Does Clyentra generate a barcode for my product?
No. Barcode (UPC/EAN) is a field you fill in yourself, with the code from your supplier or your own scheme. What Clyentra does is render whatever you entered as a scannable barcode in the product sidebar, and give you a Print label button for it.
How many variant options can one product have?
Up to three option groups — for example Size, Color and Material. Clyentra builds the full matrix of combinations from them, and each combination gets its own SKU, price, retail price and stock. You mark one as the default, and you can switch individual combinations off with the Active toggle.
Why is the Inventory & Pricing section missing on my product?
You picked Variable as the product type. On a variable product, price and stock belong to each variant rather than to the parent, so that section is hidden and Variants takes its place. Switch back to Simple and it returns.
How does sales tax or VAT get calculated?
On a Stripe organization, Stripe Tax does it. You configure your tax registrations once in Stripe, give each product a Tax code on the product form, and tax is computed automatically at checkout and on invoices. The Tax code field is required — save without it and you get "Tax code is required for Stripe". See integrations.
What's the largest product image I can upload?
25 MB per file, in JPEG, PNG, WebP or GIF. Go over and you get "Image size must be less than 25 MB." Clyentra compresses images as they upload, so the size on your disk is not the size your storefront serves.
Can I give one customer their own discount code?
Yes. In the coupon form, use Assign to specific lead under Lead Restriction. Leave it empty and the coupon works for everyone; pick a lead and only that lead can redeem it. Pair it with Max Uses Per Lead to make it single-use.
Why can't I set a 120% discount?
Because paying customers to take your product is rarely the plan. A Percentage coupon is capped at 100 — go higher and validation stops you with "Percentage cannot exceed 100". If you want a fixed amount off instead, switch the discount type to Flat.