OdooWiki OCA HUB

Product Ingredients

product_ingredient folder_open OCA/product-attribute open_in_new
Technical Settings License: AGPL-3

This module allows to set ingredients information for a given product.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Lets you record the ingredients and allergens of a product, and automatically copies that information onto each stock lot of the product. An Ingredients tab appears on products and lots.

This module adds an ingredient and allergen register to Odoo products and stock lots.

  • On a product (only for consumable/"consu" type products), a new "Ingredients" tab lets you list each ingredient with its scientific name, percentage, and allergen. You can also flag allergen traces and write additional ingredient information.
  • The same "Ingredients" tab is added to the product template form when the product has a single variant.
  • On a stock lot, an "Ingredients" tab shows the ingredient list, allergen traces and additional information. These are filled automatically from the product when the lot is linked to a product, and remain editable afterwards.
  • Allergens are managed through a dedicated "Allergens" product attribute, created automatically when the module is installed. Allergen fields only propose values from that attribute.
  • A computed "Allergens" field on the product gathers the allergens of its ingredients plus the declared allergen traces.
  • Ingredients are stored in their own records, so the same ingredient can be reused across products, with a sequence to control display order.

All internal users can read, create, edit and delete ingredient records. The module touches products, product templates, product attributes and stock lots.

Depends on

productstock
Models and fields (8)
  • stock.lot · extends an existing modelingredient_ids, ingredient_additional_info, ingredient_allergen_trace_ids
  • product.product · extends an existing modelallergen_ids (Allergens), ingredient_ids (Ingredients), ingredient_additional_info, ingredient_allergen_trace_ids (Allergen traces)
  • product.template · extends an existing modelallergen_ids, ingredient_ids, ingredient_additional_info, ingredient_allergen_trace_ids
  • product.attribute · extends an existing model
  • product.ingredient · new modelname, allergen_id, is_allergen, scientific_name
  • product.attribute.value · extends an existing model
  • product.ingredient.value · new modelsequence, percentage, product_id, allergen_id, is_allergen, ingredient_id, scientific_name
  • stock.lot.ingredient.value · new modellot_id, sequence, percentage, allergen_id, is_allergen, ingredient_id, scientific_name

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 3 confirmed, 6 with no information of 9 versions.

Sources · Odoo 18.0

Confirmed on 2026-11-03 in branch 18.0 of OCA/product-attribute.

terminal Installation and usage

OCA documentation · Odoo 18.0

To use this module you have to:

  • Create or edit a product variant or product template with just a variant.
  • Go to ingredients page
  • Create some ingredients for the product.

Now you can print the "Ingredients Info" report label.

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.