Product Catalog
A shared, always-on product database of over 600,000 hardware and software items that every quote, order, asset and storefront in Solidlio draws from.
The problem
An MSP’s product list lives in three places that never agree: a distributor’s web portal, a spreadsheet of “the stuff we actually sell”, and whatever the technician typed into the last quote. Nobody can answer “what did we pay for this last time” without opening a supplier site, and when the same monitor gets entered as three different part numbers, the asset register stops being able to tell you how many you have deployed.
What Solidlio does about it
Solidlio maintains one catalog for the whole platform. Products are keyed on a unique internal SKU and carry the manufacturer’s MPN, EAN and UPC alongside it, so the same item entered from two directions resolves to one row. Every product belongs to a brand and sits in a category tree, and each one carries live per-distributor cost and stock from the connected supplier feeds — the cheapest available cost is computed and stored on the product itself. Because there is one catalog rather than one per tenant, a product corrected once is corrected for everybody, and the catalog is the same object that quoting, asset tracking and the storefront all point at.
Capabilities
| Capability | What it does |
|---|---|
| Unified product record | One row per item, with SKU, MPN, EAN, UPC, descriptions, specifications, images and documents. |
| Brand register | Manufacturers with aliases, parent-company relationships, logos, and support, warranty, driver and firmware links. |
| Category tree | Nested product taxonomy with per-node product counts, served as a full hierarchy in one call. |
| Filtered browse | Search by name, SKU, MPN or EAN, filter by brand, category and status, sort on seven fields. |
| Multi-distributor costing | Records each distributor’s cost and quantity for a product and computes the lowest and average cost across them. |
| Currency-safe cost edits | Refuses a cost change that does not state its currency, so a shared row cannot be silently re-priced. |
| Six-state lifecycle | Active, draft, archived, discontinued, out of stock and coming soon. |
| Referential-safety delete | A product with customer assets attached is discontinued rather than removed; a brand with products is deactivated rather than deleted; a category with children or products cannot be deleted at all. |
| Bulk status and retirement | Change status or retire up to 100 products in one transaction. |
| Internal product linking | Ties a catalog item to its internal billing product so orders and invoices reference the same thing. |
| Manufacturer-data import | Creates a product from Icecat by MPN and brand or by GTIN, pulling specifications and images with it. |
| Read-everywhere, write-restricted | Every signed-in user can read the catalog; only MSP administrators and above can change it. |
Built for MSPs and their clients
The catalog is a platform asset, not a tenant asset. There is one copy, and it is maintained centrally so that no MSP has to build a product database before it can quote anything.
| Organization (client) | MSP | |
|---|---|---|
| Reading the catalog | Full read access to products, brands and categories | Full read access |
| Changing the catalog | None | MSP administrators create, edit, retire and bulk-manage products, brands and categories |
| Distributor identity | Not shown on brand pages — sees warehouse locations and availability only | Not shown on brand pages; named distributor relationships are platform-only |
| Sell pricing | Set by the MSP in its own service catalogue and store pricing, layered over these cost figures | Owns its own markup and sell prices, per brand and per category |
Cost data on the catalog is visible to any signed-in user. Sell-side pricing, markup and client-specific rates are a separate layer and are documented in the Pricing & Margin and Service Catalogue datasheets.
How it works
- Products arrive — from connected distributor feeds, from a manufacturer-data import by MPN or GTIN, or typed in by hand.
- They are keyed and classified — a unique internal SKU is enforced across the whole catalog, the manufacturer identifiers are indexed alongside it, and the product is placed under a brand and a category.
- Cost is attached — each distributor carrying the item contributes a cost and a quantity; the platform computes the cheapest available cost and stores it on the product.
- An administrator curates — at Platform → Catalog → Products they filter the list, open a product, correct its details, and move it through the status lifecycle. Brands and categories are managed on their own pages.
- Everything else consumes it — quotes, orders, subscriptions, the asset register and the storefront all reference the same product row, so a correction propagates without a re-import.
Editions
The Product Catalog carries no plan gate. What differs by role, not by plan, is who may write: MSP administrator and above.
Integrations
- Icecat — manufacturer product data. Import a product by MPN and brand or by GTIN; match an existing product to the Icecat index; enrich it with specifications, images and documents. Brands and categories can be linked to their Icecat supplier and category records.
- Distributor feeds — per-product cost, quantity, warehouse breakdown and lead time from connected distributors, surfaced on every product and rolled up into the lowest and average cost. Feed configuration is documented separately.
- Solidlio billing products — a catalog item can be linked to its internal billing product so commerce and the catalog agree on identity.
- Solidlio asset register — assets reference catalog products, which is what makes the delete guard necessary.
One product list, maintained once, that every part of the platform already points at.