Skip to main content

Bulk Upload Errors: BOMS

Bulk Upload Errors: BOMS

Paul Ortiz avatar
Written by Paul Ortiz
Updated yesterday

BOM Upload Errors in Distru

Overview

This page documents the most common, required-field and validation errors you’ll see when bulk uploading Bills of Materials (BOMs) into Distru, along with exactly how to fix each one.

Prerequisites

  • Products referenced by your BOM (outputs/ingredients) are created in Distru.

  • You know each product’s inventory tracking method (Package, Product, Batch).

  • If you’ll use Dynamic Ingredients, you know your Categories, Subcategories, Groups, and Tags and how to format them.

  • If adding Costs, you have Cost Types set up in Settings → Cost Accounting → Cost Types.


Table of Contents


Step by Step Guide [Errors]

Error: output_product_name: does not exist

Error: ingredient_product_name: does not exist

📖 What It Means

These errors occur when the Output Product Name or Ingredient Product Name entered in the bulk upload sheet cannot be found in Distru. The system only accepts names of products that already exist in Distru, so if the names don’t match exactly, the BOM upload will fail.

How to Resolve

  1. Confirm that all products listed in your BOM (both output and ingredients) have already been created in Distru.

  2. Navigate to ☰ Hamburger Menu > Inventory > Products and search for the exact product name.

  3. Copy/paste the product name directly from Distru into your BOM sheet to ensure accuracy.

⚠️ Common Mistakes

  • Entering a product name that hasn’t been created yet.

  • Typos or mismatched spacing (e.g., "510 Cartridge" vs "510 Cartridge").

  • Using placeholder names that were never updated.


Error: row: must populate INGREDIENT UNIT TYPE when row is ingredient

📖 What It Means

This error occurs when you list an ingredient in your BOM but leave the Ingredient Unit Type blank. Every ingredient row requires both a Quantity and a Unit Type to be valid.

How to Resolve

  • Enter both Ingredient Quantity and Ingredient Unit Type for every ingredient row.

  • Valid unit types include: Fluid Ounce, Gallon, Gram, Kilogram, Liter, Milligram, Milliliter, Ounce, Pint, Pound, Quart, Unit.

⚠️ Common Mistakes

  • Leaving the unit type blank.

  • Using plural forms (e.g., "Grams" instead of "Gram").

  • Typos in unit type values.


Error: name: Please enter a name

📖 What It Means

This error occurs when the BOM Name column in your bulk upload sheet is blank. Every BOM must have a name so the system can associate ingredients and outputs.

👉 While the BOM Name can differ from the Output Product Name, it’s best practice to keep them 1:1 aligned. This helps clearly tie which BOM drives which product and avoids confusion later.

How to Resolve

  1. Enter a valid BOM Name in the BOM Name column.

  2. Use descriptive names that identify the build (e.g., "510 Rosin Cartridge").

  3. For clarity, match the BOM Name to the Output Product Name whenever possible.

⚠️ Common Mistakes

  • Leaving the BOM Name field blank.

  • Copy/pasting rows where the BOM Name column accidentally clears.

  • Creating a BOM Name that doesn’t clearly tie back to an Output Product.


Error: product: The product being used cannot be package-tracked

📖 What It Means

This occurs when you attempt to build a Batch-Tracked BOM using a Package-Tracked Product as an ingredient. Distru does not allow combining cannabis-tracked packages into non-cannabis tracked builds, since this breaks METRC compliance.

How to Resolve

  • Verify the tracking type of the product:

    1. Search for the product in the Distru top search bar, select it, click the three dots → Edit.

    2. The product page will show whether it is Package, Product, or Batch tracked.

    3. Alternatively, navigate to ☰ Hamburger Menu > Inventory > Products and search/filter by product.

⚠️ Common Mistakes

  • Mixing package-tracked products with batch builds.

  • Not checking the tracking type before including products in BOMs.


Error: quantity: Please enter a quantity

📖 What It Means

This error appears when the Ingredient Quantity field is blank. Distru requires a numerical value to define how much of each ingredient is consumed.

How to Resolve

  • Enter a valid number for every ingredient row under Ingredient Quantity.

⚠️ Common Mistakes

  • Leaving the column blank.

  • Entering text (e.g., "one" instead of 1).

  • Copying/pasting data with hidden spaces or invalid characters.


Error: row: cannot populate both INGREDIENT and COST fields with data

📖 What It Means

This error occurs when a single row contains values in both Ingredient fields and Cost fields. Distru requires that ingredient rows and cost rows be separated.

How to Resolve

  • Create separate rows:

    • One row for the ingredient (with Ingredient Quantity + Unit Type).

    • A different row for costs (Cost Description + Cost Quantity + Cost Type).

⚠️ Common Mistakes

  • Trying to log both ingredient usage and cost allocation on the same line.


❌ Error: cost_type_id: can't be blank

What It Means

A Cost Type is required when adding a cost row.

How to Resolve

  • Enter a valid Cost Type.

  • Create new ones at Hamburger Menu → Settings → Cost Accounting → Cost Types if needed.

Common Mistakes

  • Empty Cost Type cell.

  • Using names that don’t exist in your Cost Types list.


Error: row: ingredient cannot be both product type and filter type

📖 What It Means

This happens when a row tries to use a specific product name and a dynamic filter (category/group/subcategory/tag) at the same time. The system does not allow this combination.

How to Resolve

  • Use separate rows for:

    • One with the exact Product Name, and

    • Another with a dynamic filter (Category, Group, Subcategory, or Tag).

⚠️ Common Mistakes

  • Combining both fields in one row.

  • Not realizing that categories and subcategories can be combined (e.g., "Tincture Filling [Tincture]").



Error: ingredient_product_subcategory_filter: must be in the format 'Subcategory [Category]'

Error: ingredient_product_subcategory_filter: contains subcategories that do not exist

📖 What It Means

These errors occur if the Ingredient Product Subcategory Filter is entered incorrectly. Distru requires the format:

Subcategory [Category]

How to Resolve

  • Verify valid subcategories exist in ☰ Hamburger Menu > Settings > Customize Distru > Product Categories.

  • Ensure you enter the subcategory first, then the category in brackets.

  • (Optional) Add a helper column like Short Subcategory to concatenate automatically with a formula:

    =IF(ISBLANK(G2),"",CONCATENATE(G2," [",F2,"]"))
  • When re-uploading, map only the official subcategory filter column, not the helper field.

⚠️ Common Mistakes

  • Entering category without subcategory (invalid).

  • Entering subcategory without category (invalid).

  • Populating both Product Ingredient and Dynamic Filters on the same row (must be separate).


❌ Error: cost_type: does not exist

What It Means

The Cost Type you entered doesn’t match anything configured in Distru.

How to Resolve

  • Check Hamburger Menu → Settings → Cost Accounting → Cost Types.

  • Use an existing name exactly or create the missing one.

Common Mistakes

  • Spelling/casing differences.

  • Assuming a generic label (e.g., “Labor”) exists when it hasn’t been created.


❌ Error: quantity: can't be blank (Cost Quantity)

❌ Error: quantity: is invalid (Cost Quantity)

What It Means

While the error says quantity, this refers to Cost Quantity on cost rows. It’s either blank or not a valid number.

How to Resolve

  • Enter a numeric value in Cost Quantity (no $, commas, or words).

Common Mistakes

  • $5 instead of 5

  • one instead of 1

  • Copy/paste with hidden spaces or formatting


Related Articles / Next Steps

Did this answer your question?