Distribution catalogs run on different pressure points than direct-to-consumer retail: SKU counts in the tens of thousands, costs that vary by supplier, pricing that's negotiated rather than advertised, and buyers who need accurate specs more than they need marketing copy.
Pricing that reflects what you actually pay
When a product has multiple supplier mappings, choose which cost feeds the price calculation - preferred supplier, lowest cost, highest, or average. Formula-based rules apply at four specificity levels (default, family, supplier, product), with more specific rules automatically overriding general ones, so a global margin doesn't have to be re-entered per supplier.
Four price types, correctly separated
Selling price, RRP, compare-at price, and B2B/wholesale price are each tracked independently per product, in their own currency - so a consumer-facing discount display and a negotiated wholesale rate never get confused with each other.
Every supplier, one import pipeline
CSV, XML, JSON, and XLSX from any supplier, with AI-assisted column mapping and a scheduled sync so catalogs update without someone re-running an import by hand. Configurable duplicate handling means you choose what happens when a SKU already exists - update, skip, or flag as an error.
Enterprise access control, without enterprise complexity
Role-based permissions, invitation-based onboarding, and MFA (required for admin accounts, optional elsewhere today) mean a buying team, a content team, and a pricing team can all work in the same catalog without stepping on each other or requiring a separate identity system.
A public API for your own systems
Scoped API keys with schema:read, products:read, and products:write permissions, plus delta-sync so your own systems can pull only what's changed since a given timestamp - useful for feeding an ERP or a partner's own catalog sync.