Food Craft, Allergen, Shelf Life & Label Management — free foundation: costed recipes, ingredient cost, the 14 INCO allergens, use-by date per lot and expiry alert, variable-weight label, daily production, waste.
Bakers, pastry chefs, charcutiers and artisan food producers
Overview
Food Trades — Recipes, Allergens & Production (DYONYSOS)
Food craft businesses (butchers and delicatessens, bakers, pastry chefs…) plan their daily production by hand, lose track of unsold items and waste at the end of the day, and display allergens on paper that becomes outdated as soon as a recipe changes. This application addresses all three problems on a deliberately simple foundation: product, stock, account — no dependency on mrp, no cash register, no Enterprise module.
Important — what the app does, and what it does not do. It is not a full HACCP system (no temperature logs, no cleaning plan), not an industrial cost-price calculation with labor and depreciation (see Odoo Manufacturing if you need more advanced features), and not a cash register (pair it with Point of Sale if needed).
No food safety values are shipped with this module. Shelf lives, alert threshold before the use-by date, temperatures: nothing is hard-coded and nothing is proposed by default. These values depend on the food product, the process and the establishment's food safety management plan — the app provides the mechanisms, the artisan provides the figures. Likewise, the information shown on a label depends on the food product and the method of sale: the module composes a label from your data and does not confer any compliance.
Also searched as: INCO regulation allergens Odoo, bakery allergen labels, lot use-by date Odoo expiry alert, variable-weight price-per-kilo labels, artisan recipe ingredient cost, bakery cost price, unsold waste management for butchers and delicatessens, artisan daily production schedule, birthday cake takeaway order Odoo.
Recipe sheet (dyo.bouche.recette): ingredients with quantities, linked to a finished product (product.template). Allergens are never checked by hand on the finished product: they propagate automatically from the allergens declared on each ingredient — including when an ingredient is itself the finished product of another recipe in the module (pastry cream used in a layered dessert, for example).
Reference list of the 14 major allergens (dyo.bouche.allergene) from EU Regulation No 1169/2011 (INCO), shipped with the module (functional data, not demo data): gluten, crustaceans, eggs, fish, peanuts, soybeans, milk, tree nuts, celery, mustard, sesame seeds, sulphites, lupin, molluscs.
Labels never silently outdated (main risk identified): each recipe carries a “label up to date” indicator calculated by comparing the validated set of allergens with the current set of allergens (recalculated whenever an ingredient changes, even indirectly, through a sub-recipe). The slightest difference switches the indicator to “to review” — on the recipe form, in lists, and on the product — until a manager explicitly validates it.
Cross-cutting search: “which products contain tree nuts?” is a simple search on the product's Allergens field — it works just as well for a finished product with a recipe as for a purchased raw material whose allergens are declared manually.
Daily production (dyo.bouche.production_jour): plan by product and by day, with a suggested quantity calculated from the invoiced sales history (account.move) of the previous 28 days — averaged only over days with a sale, so that closing days do not dilute the average. A starting point, never an imposed quantity.
Waste and unsold goods (dyo.bouche.perte): quantity, configurable reason, recording that delegates to stock.scrap (the standard stock move logic is never rewritten); waste rate per product over a period, relative to planned production.
Customer takeaway orders (dyo.bouche.commande_client): birthdays, events, with pickup date and product lines; automatic numbering; alert when an order approaches its pickup date without having been sent to production.
Ingredient cost price on the recipe form: unit price per ingredient (can be overridden line by line for the day's price), trim loss rate per ingredient — you pay for gross weight, not net weight —, number of units produced by the recipe, from which the unit food cost, margin on food, food cost percentage and markup multiplier are derived. The target rate is set per company: it is a management benchmark, not a standard.
Expiry date per lot and expiry alert (stock.lot): origin or supplier, supplier lot, manufacturing date, expiry date and type of date marking (use-by or best-before). The lot status — fresh, sell soon, expired — is recalculated on every display, never stored: a lot that expired overnight cannot remain displayed as “fresh”. A dedicated “Expiring soon” screen opens on the lots in stock to watch, and a daily scheduled action schedules an activity for each one. The alert lead time is a company setting.
Variable-weight label: a wizard retrieves the ingredient list (in descending order of quantity, with allergenic ingredients highlighted), the allergens, the use-by date and the lot, multiplies the weighed weight by the price per kilo and prints the ticket. A free-text label footer is configurable per company.
Morning screen: for each product, the day's production compares what history suggests, what customers have already ordered for the day, and what you decide to produce. A red line flags uncovered orders, and a button raises the quantity — without ever lowering it. Kanban view readable on a phone.
Dashboard: pivot/graph views of production and losses, groupable by product family (category).
Demo data: a baker-pastry chef with three costed recipes (including one sub-recipe used in another, to illustrate cascading propagation, and one trimmed ingredient to illustrate gross weight), three lots including one expired and one to be sold off, a production plan over several days, recorded losses, and a customer order.
Key points
- Recipe cards — Ingredients, quantities and units, with each line's allergens visible on entry.
- Calculated allergens — Union of the ingredients' allergens, propagated through sub-recipes, with circular reference detection.
- Label indicator — Ongoing comparison between the calculated allergens and those frozen at the last validation.
Specifications
| Price | Free |
|---|---|
| License | LGPL-3 |
| Odoo series | 19.0: published on the Odoo Apps Store; 20.0: published on the Odoo Apps Store |
| Version | 1.2.0 |
| Edition | Odoo Community / on-premise |
| Technical name | dyo_metiers_bouche |
| Domain | Manufacturing and food trades |
Price excluding VAT as displayed on the Odoo Apps Store; purchase and installation are done on the Store or through your Omnifloo instance.