Product catalog
One catalog. A different price list for every account.
In B2B the product is the easy part — what changes per customer is the price, the pack, the minimum, and whether they're even allowed to see it. TackQuote keeps one product record and layers those differences on top, so your reps quote from the same catalog your buyers browse.
What a product record actually has to hold
A retail catalog needs a name, a photo, and a price. A wholesale catalog needs to know that this item ships in cases of twelve, has a four-case minimum, and isn't sold to one of your channels at all.
Identity and price
Name, SKU, barcode, description, unit of measure, tax code, and a unit price alongside your cost and RRP — so margin is visible at the moment someone discounts.
Pack and order rules
Pack size, units per pack, pack UOM, and pack price, plus minimum and maximum order quantities that are enforced when a line is added — not discovered at fulfilment.
Variants
Child products roll up to a parent with their own option values, and the builder can open the whole size or colour matrix instead of making a rep hunt for each SKU.
Stock position
Quantity on hand, reserved quantity, and a status of in stock, low stock, out of stock, preorder, or backorder — with backorder and preorder allowed per product.
Detail-page content
Multiple images, weight and dimensions, size, colour, material, style, a free-form specifications map, and file attachments for spec sheets or drawings.
Visibility
Mark a product visible to everyone, B2B only, B2C only, or hidden — the same catalog can serve a public storefront and a gated wholesale channel.
Per-customer catalogs
Show each account only what they're meant to buy
- Scope a catalog to a company, a buyer group, or all B2B buyers
- Add or remove products from a catalog individually
- Per-product visibility on top: all, B2B only, B2C only, or hidden
- Pack size and order minimums can differ per customer group
- Enable or disable a whole catalog without unpicking its contents
- Full rangeEverything not marked hiddenAll B2B buyers
- Northwind approved listOnly SKUs on their contractCompany
- Distributor rangeResale-only productsBuyer group
- ClearanceKept, not currently offeredDisabled
Two ways to say “this costs less for them”
A negotiated list and a quantity break are different problems. Price books handle the first, volume tiers the second, and they compose.
Price books
A whole price list, assigned and dated
A price book holds per-SKU prices in its own currency and can carry effective-from and effective-until dates. Assign it to named buyers or to buyer tiers, mark one as your default, and reference the contract it came from.
- Per-SKU unit price, with optional quantity range per entry
- Currency per book
- Valid-from / valid-until windows
- Assigned to specific buyers or to tiers
- Optional contract reference
Volume tiers
Quantity breaks, with a floor under them
Tiers attach to a SKU with a label, a quantity band, and a discount percentage. Each tier can also carry a margin floor, so a generous break on a thin product cannot quietly sell below the line you set.
- Minimum and maximum quantity per tier
- Discount percentage per tier
- Optional margin floor per tier
- Tiers can be deactivated without deleting history
Beyond the catalog. A company can also carry its own negotiated price for a specific product, and separate pricing rules can key off buyer tier, territory, quantity, order value, or channel. The quote builder resolves all of it and shows the rep the price that actually applies.
While you quote
Find the SKU without leaving the quote
- Partial search across product name, SKU, and barcode
- Exact lookup by SKU or barcode for scanning
- Open a parent product’s full variant matrix
- Filter by category
- Stock status and quantity shown on the record
- Brake pad set, heavy dutyBRK-4410In stock
- Brake pad set, extended wearBRK-4412Low stock
- Brake rotor, ventedBRK-4420Backorder
- Caliper rebuild kitBRK-4431In stock
A real category tree
Categories nest as deep as your range needs, each with a slug and a sort order you control. Retiring one deactivates it rather than destroying the products underneath it. Categories are also what channel pricing keys off, so you can set a discount for a whole category against a partner segment instead of SKU by SKU.
Sync without losing your work
Products mirrored from a connected store keep a link to their source, so a re-sync refreshes the details the store owns — name, description, price, image — while every B2B rule you added on top survives. Products you created by hand are never overwritten by a sync at all.
Stop maintaining a spreadsheet per customer
Put the range in once, then decide who sees what and what they pay for it.