Autocomplete purchase invoices from receptions
Autocomplete invoices lines by selecting the receptions originating from a purchase order.
auto_awesome What this module does
AI-generated from the code · Odoo 14.0On a draft vendor bill, pick a reception (goods receipt) and Odoo fills the invoice lines with the quantities still to be billed from that reception's purchase order.
This module adds a helper field on vendor bills so you can build a bill directly from a goods reception instead of typing lines by hand.
- On a draft vendor bill (
account.moveof type in_invoice), a new field "Auto-Complete from Picking" appears next to the existing purchase-order field. It only lists receptions that are done, incoming, belong to the same company and vendor, and still have something waiting to be billed. - Choosing one loads the vendor, currency and other header data from the related purchase order, then creates invoice lines for each received product quantity that has not yet been billed. Lines already linked to a stock move are skipped, so nothing is duplicated.
- Each generated line keeps a link to its stock move and to the reception, shown as optional columns on the invoice lines.
Behind the scenes, stock moves and receptions get billing indicators: "Billed Qty", "To Invoice Quantity" and a "Billing Status" on the reception (Nothing to Bill, Waiting Bills, Fully Billed). These are computed from the linked invoice lines, counting vendor bills up and refunds down, and ignoring cancelled invoices.
The module touches account.move, account.move.line, stock.move and stock.picking, and depends on purchase_stock.
Depends on
Models and fields (4)
- stock.move · extends an existing modelqty_received_invoiced (Billed Qty), qty_received_to_invoice (To Invoice Quantity), received_invoiced_line_ids (Invoiced Lines)
- account.move · extends an existing modelautocomplete_purchase_picking_id (Auto-Complete from Picking)
- stock.picking · extends an existing modelreceived_invoiced_status (Billing Status), received_invoiced_line_ids (Invoiced Lines)
- account.move.line · extends an existing modelpicking_invoiced_id (Picking), stock_move_invoiced_id (Stock Move)
Text generated by AI (DeepSeek) from reading the Odoo 14.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 14.0
Confirmed on 2026-11-03 in branch 14.0 of OCA/account-invoicing.
terminal Installation and usage
OCA documentation · Odoo 14.0Usage
Source · Odoo 14.0- Create some storable products and set the
Control PolicytoOn received quantities. - Create a purchase order with the previously created storable products.
- Confirm the purchase order
- Receive the products
- Go to
Invoicing > Vendors > Bills - Create a new bill
- Select the picking in the
Auto-Complete from Pickingfield - The invoice lines will be automatically filled with the product quantities from the picking.
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.