Add process to prebook a sale order's stock before confirming it
auto_awesome What this module does
AI-generated from the code · Odoo 18.0This module lets you reserve stock for a draft or sent quotation before confirming it, so you can secure inventory early. It adds Reserve Stock and Release Reservation buttons on the sale order form.
On a draft or sent quotation, you can click "Reserve Stock" to prebook the products. This creates internal stock moves that reserve the goods without confirming the sale order. The button is only visible when the order is not yet confirmed and stock is not already reserved. Once reserved, a "Release Reservation" button appears to cancel the reservation and free the stock.
The reservation uses a separate procurement group and marks the generated stock moves with a flag so they are not picked or assigned like normal deliveries. You cannot mark a reservation move as picked; Odoo will block it with an error.
You can exclude certain products from prebooking by setting the "No Prebook Stock" option on a stock route. If a product uses that route, its lines will be skipped when reserving.
For advanced configuration, stock rules now have a "Prebook Picking Type" field. If set, reservation moves will use that operation type instead of the default one. This is useful to separate reservation moves from regular delivery moves.
The sale order form shows a computed indicator (stock_is_reserved) that tracks whether a reservation exists. The forecasted report also hides reserved quantities from the available stock calculation, so you see the real availability.
When you confirm the sale order or cancel it, any existing reservation is automatically released first.
Depends on
Required by other modules
Models and fields (5)
- sale.order · extends an existing modelstock_is_reserved
- stock.move · extends an existing modelused_for_sale_reservation
- stock.rule · extends an existing modelprebook_picking_type_id
- stock.route · extends an existing modelno_sale_stock_prebook
- sale.order.line · extends an existing model
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: 3 confirmed, 6 with no information of 9 versions.
Sources · Odoo 14.0
Confirmed on 2026-11-03 in branch 14.0 of OCA/sale-prebook.
terminal Installation and usage
OCA documentation · Odoo 18.0Usage
Source · Odoo 18.0On the sale.order view you will find two new buttons "Reserve Stock" and "Release reservation" which are only shown if the state is in "Quotation" or "Quotation Sent".
The reservation creates the picking/moves via a procurement run by placing a real move.
No verified information in OCA: Installation, Configuration.
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.