
A cannabis product catalog is the structure every other system in your dispensary reads from. Inventory counts hang off it, traceability reports pull from it, and your online menu displays whatever fields it contains. Build it in a rush ahead of a go-live date, and the mistakes don't show up on day one – they show up months later as broken compliance reporting, missing menu fields, or a product setting nobody can find a way to change. That's true whether you're building a dispensary product catalog from scratch or rebuilding one during a POS migration, when an old system's export rarely maps cleanly onto a new template.
In this article, we’re covering the specific order you should build your cannabis product catalog in as well as how classification decides the fields every product carries, the three ways to add products at volume, what custom fields extend, and the settings that lock permanently once inventory is received.
Key Takeaways
- A cannabis product catalog is the master record of every product a dispensary sells, structured by classification so each product carries the compliance fields its market requires.
- Classification comes first. It determines which template – and therefore which fields – a product inherits, and a product can belong to only one classification.
- There are three build methods: manual entry, cloning, and bulk import. The right one depends on volume.
- Unit of Measure, Batch Tracking, and Non-Stock lock the moment inventory is received and stay locked even after that inventory sells down to zero.
What Is a Cannabis Product Catalog?
A cannabis product catalog is the master record of every product a dispensary sells, structured by classification so each product carries the compliance fields its market requires. It sits underneath inventory rather than alongside it: the catalog holds product records and data like classification, net weight, cannabinoid content, and pricing, while inventory holds quantities, batches, and package IDs at a location.
That structure carries regulatory weight because classification determines which template a product uses, and templates hold the fields that make up a product's information. Fields can be set to require data, which enforces compliance information at the product and even package level rather than catching gaps later in a report.
In a multi-location business, the catalog is shared across every location in the Hub, while stocking decisions stay local. This is also the foundation cannabis inventory management and Metrc traceability run on; neither works correctly if the underlying product records are wrong.
Why Does Classification Structure Matter Before You Add Cannabis Products?
Classification is assigned at the Master Product level and inherited by every variation beneath it. A cannabis product belongs to only one classification, and that classification selects the template carrying its compliance fields. Get the structure wrong, and everything built on it inherits the mistake.
Three terms matter here, and they get used loosely. A category is a folder grouping classifications, such as Cannabis or Accessories. A classification groups like products, such as Flower or Edibles, and can hold sub-classifications like indica, sativa, and hybrid under Flower. A template attaches to a classification and holds the field groups a product inherits. That's the basic shape of product taxonomy in a cannabis catalog, and it's worth getting right before a single product is entered.
Classification also controls product tree order, which sets display order on the Cova POS, categories first. A structure built around how head office thinks about the business – instead of how a budtender moves through a sale – costs you seconds on every transaction.
A few constraints matter before you build: deleting a classification requires either no assigned products or a classification to move them to first, and a category can only be deleted once it holds no classifications or sub-categories. Once a template is created, it can’t be deleted; an unwanted one can only be left unassigned. If a cannabis template needs editing later, contact Cova Support first to confirm the change won't affect compliance reporting.
Build classifications around how your compliance reporting groups products, not around how your marketing does. Menu categories can be reshaped later. Remember: Once a template is created, it’s permanent. During onboarding, a Cova project coordinator helps walk you through classification structure and the product catalog import.
How Do You Build a Product Catalog: Manual Entry, Cloning, or Bulk Import?
Dispensary product catalog setup happens through three methods, and the right one depends on volume and how similar new products are to what's already built.
When should you clone a cannabis product instead of creating a new one?
Cloning suits a product nearly identical to one that’s already built, and only a Master Product can be cloned; cloning one with variations clones all of them. The process: select the product, go to Tools > Clone, give the clone a unique Master Product group name, and save. "Unique" isn't stylistic; Cova rejects a name that already exists.
Afterward, update assets, descriptions, supplier, SKU, and pricing, and archive any variations you don't need. A supplier shipping the same edible in four flavors is the clearest case: clone once, rename it, and edit four variations.
What changes if you are migrating from another POS?
Expect to remap fields, not paste columns. A migration export won't map cleanly onto a new template; column names, unit conventions, and category structures rarely survive intact. Migration is also the moment to prune products you've already stopped selling and to sequence the build so the catalog is checked before any inventory is received. If you're mid-migration, it's worth reading how to plan a POS migration alongside this build.
How Do You Bulk Import Products into a Dispensary POS?
A bulk product import moves many products at once through a spreadsheet template, downloaded per classification, filled in, and re-uploaded, after which the dispensary POS reports which products were created and which failed.
- In the Hub, navigate to Catalog > My Catalog and select bulk import. Exact labels vary slightly by Hub version.
- Select a classification and download its template. Products import by classification, so Flower and Concentrate need separate files.
- Fill the template in Microsoft Excel (templates can only be edited in Excel if you are using Cova).
- Fill in Product Name only if the product has variations. Rows sharing a name become variations of one master product.
- Leave Manufacturer blank. A populated Manufacturer field will fail the import; use the Supplier field instead.
- Match dropdown fields verbatim. Net Weight and Equivalent To accept only a whole number or decimal.
- Set Unit of Measure to SingleUnit for products sold in single units; use Gram only for products sold by weight. Set Batch Tracking to TRUE for cannabis products, FALSE for non-cannabis. Note: the spreadsheet value is SingleUnit, but the equivalent setting in the product interface reads Each; this is a common cause of failed rows.
- Upload the file. Two emails follow: successful creations, and failures with the reason for each.
Why do bulk product imports fail?
Most failures come from template edits and field-format errors, not the underlying data, and the failure email names the reason for each rejection: removing the sample data on row 2, renaming the Products tab, populating Manufacturer instead of Supplier, dropdown values that don't match verbatim, letters or symbols in a numeric field, and image links left as dl=0 instead of dl=1.
What Custom Fields Should You Add to Your Dispensary Product Catalog?
Default templates carry the compliance fields a market requires. Custom fields capture everything else you want to hold against a product, and that data then shows up on your POS and through integrations such as dispensary menu software, ecommerce, and self-service kiosks (see how POS and ecommerce integration draws on catalog data).
Custom fields live in their own Field Group. There are eight usable field types, but three do most of the work: Number, with an optional unit such as mL, mg, or percent; Dropdown; and SingleLineText.
There are a few constraints you’ll want to watch for on build day. A field's type can't be changed once created. A field name can never be reused, even one previously archived, or it conflicts in the Hub. Don't edit the default Details or Online Menu groups; create a new Field Group instead. And a new field can take up to 60 minutes to appear in a template's dropdown.
What Is a Non-Stock Product, and Which Settings Lock Permanently?
A non-stock product is a non-tangible item sold without tracking inventory, such as a delivery fee. Non-Stock is one of three Product Behaviors, alongside Unit of Measure and Batch Tracking, that lock permanently once inventory is received. On a master product with variations, the Product Behaviors tab appears on each variation, not the master, so an audit needs to happen at the variation level.
A non-stock product tracks no inventory and can sell an unlimited quantity; it can also be archived without first zeroing inventory, unlike stocked products. One qualifier: if you’re using a third-party integrator, your inventory has to be brought in once before the integration can see it, typically with a New Quantity Adjustment from 0 to 1; anyone running ecommerce or menu integrations will hit this. A delivery fee is the clearest example: Fees classification, no variations, Non-Stock set to Yes, Unit of Measure Each, Batch Tracking off.
Here's the part worth building an audit process around: these three settings can be changed right up until inventory is received, and they lock permanently the moment it is. The lock holds even if the product's current inventory is zero – selling the stock down does not release it.
The remedy is a four-step procedure: zero the inventory with a New Quantity Adjustment, clone or re-create the product with the correct behaviors, archive the old product, then create and receive a purchase order into the new one. Archiving doesn't erase sales history; it stays visible on reports. The cost is the rebuild and a split product record, not lost data. This is the most common avoidable rebuild in a POS migration. Audit these three fields on every product before your first receipt, and in the spreadsheet on every bulk import.
How Do You Manage a Product Catalog After Launch?
Catalog quality degrades through staff additions and one-off supplier requests more than through any single bad decision. Three habits hold it steady.
- Set a SKU management convention before anyone else gets Hub access; retrofitting one later is harder than setting it up front.
- Retire products through the right status: Discontinued hides a product from the POS and ecommerce without archiving it, while archiving is easy to do and hard to reverse. Use Discontinued for anything you might stock again, and reserve archiving for products you won't.
- Audit custom fields periodically as part of ongoing product catalog management; a field built for one supplier promotion tends to outlive it.
If a classification mistake does slip through at volume, the Bulk Product Editor can bulk-edit Classification and a few other fields directly from Product view. This is also where it pays to periodically optimize your product mix using the data the catalog has been collecting.
FAQ
Can you change a cannabis product's classification after you have created it?
Yes. Reassignment happens when a classification is deleted, since you select a new classification to move its products to. At volume, the Bulk Product Editor can change Classification directly from Product view. Product Behaviors work differently: Unit of Measure, Batch Tracking and Non-Stock cannot change once inventory is received.
Do you need a separate dispensary product catalog for each location?
No. The product catalog is shared by every location in a Hub, while a given location may or may not sell or stock a given product. It's one catalog with local stocking decisions layered on top, so every store works from the same product data and budtenders get a consistent experience.
Building a Cannabis Product Catalog That Holds Up
Here’s an order of operations that works: classify first, choose a build method that matches your volume, import or clone the products, extend them with custom fields, then set product behaviors correctly before anything is received. Confirm your classification structure before importing a single row, and audit Unit of Measure, Batch Tracking, and Non-Stock at the variation level before your first inventory receipt.
In a dispensary POS system like Cova, classification is set once and inherited by every variation built on it, across every location in the Hub. Book a demo today to see how it holds up under an actual product catalog.