This module allows to consume products directly from a project task.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Consume products directly from a project task: add stock moves, confirm, reserve, transfer or scrap materials, and post the cost to the project's analytic account.
This module links inventory operations to project tasks so materials can be consumed while working on a task.
- On the project form a new "Stock" section lets you set the default operation type, source and destination locations, and an analytic date.
- On task stages you can enable "use stock moves" and "done stock moves". Tasks in those stages show a "Stock Info" tab where you add the products to consume.
- Buttons on the task let you Confirm materials, Check availability materials, Transfer materials, Unreserve, Scrap and Cancel materials. A manager can Lock or Unlock the material list.
- The task shows a stock status (pending, confirmed, assigned, done, cancel), a Scraps counter and a Product Moves button opening the inventory moves.
- When materials are transferred, an analytic line is created with the product cost, using the task's analytic account or distribution, so the cost is booked to the project.
- Changing the project or task locations updates pending moves; reserved moves block location changes.
- Scraps can be linked to a task, and the scrap form shows the related task.
It touches project.project, project.task, project.task.type, stock.move, stock.move.line, stock.scrap and account.analytic.line.
Depends on
Required by other modules
Models and fields (7)
- stock.move · extends an existing modeltask_id (Related Task), analytic_line_ids (Analytic Lines), raw_material_task_id (Task for material), show_cancel_button_in_task
- stock.scrap · extends an existing modeltask_id (Task)
- project.task · new modelgroup_id, move_ids (Stock Moves), scrap_ids (Scraps), location_id (Source Location), scrap_count (Scrap Move), stock_state, picking_type_id (Operation Type), use_stock_moves, done_stock_moves, location_dest_id (Destination Location), unreserve_visible (Allowed to Unreserve Inventory), stock_analytic_date, stock_moves_is_locked, stock_analytic_line_ids (Stock Analytic Lines), allow_moves_action_assign, stock_analytic_account_id (Move Analytic Account), allow_moves_action_confirm, stock_analytic_distribution
- project.project · extends an existing modellocation_id (Source Location), picking_type_id (Operation Type), location_dest_id (Destination Location), stock_analytic_date
- stock.move.line · extends an existing modeltask_id (Task)
- project.task.type · extends an existing modeluse_stock_moves, done_stock_moves
- account.analytic.line · extends an existing modelstock_move_id (Stock Move), stock_task_id (Project Task)
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-03Confirmation status: 1 confirmed, 8 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/project.
terminal Installation and usage
OCA documentation · Odoo 18.0Configuration
Source · Odoo 18.0To configure this module, you need to:
- Go to Inventory -\> Configuration -\> Settings and check "Storage Locations" option.
- Go to Inventory -\> Configuration -\> Operation types.
- Create a new operation type with the following options:
Operation type: Task materialCode: TMType of operation: DeliveryDefault Source Location: WH/StockDefault Destination Location: WH/Stock/Shelf 1- Go to Project -\> Configuration -\> Projects.
- Create a new project with the following options:
Name: Task materialOperation type: Task material- Go to Project -\> Configuration -\> Task Stages and edit some records.
In progress: Check Use Stock Moves option and add the created project.Done: Check Use Stock Moves option + Done Stock Moves and add the created project.
Usage
Source · Odoo 18.0- Go to Projects -\> Task material (project) and create a task and edit it.
- Stock Info is displayed in the Extra info tab with the same project information, but it can be modified.
- Add some product to Stock Info tab and set some initial demand (1 for example).
- Click on the button Confirm material to confirm all moves.
- Change the stage to Done.
- Stock Info tab is readonly and some buttons show in header:
Check availability materials: Product availability will be checked.Transfer Materials: Stock moves are confirmed and moved from one location to another.Unreserve: Remove the reservation stock of the products.Cancel Materials: Set the moves of the products as cancelled.Scrap: Allows the defined products to be scrapped.
No verified information in OCA: Installation.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
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.