This module make possible create invoice based in Stock Pickings.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Lets Brazilian companies attach fiscal operations, taxes and fiscal document data to stock transfers, and create the fiscal invoice (nota fiscal) directly from a picking.
This module connects warehouse operations with Brazilian fiscal rules. On a transfer (picking), users can choose a fiscal operation, see fiscal document information (type, series, number, key) and record freight, insurance and other costs. Each transfer line also carries fiscal fields such as fiscal operation line, CFOP, fiscal quantity and fiscal price, and the applicable taxes are computed automatically from the fiscal operation.
Where it appears: - Company settings get a new "Estoque" (Stock) tab with default fiscal operations for stock, incoming and outgoing moves. - Operation types (receiving, delivery, etc.) get a default fiscal operation and an option to pre-generate the fiscal document number on pack, on validate, or in the invoice wizard. - Warehouse rules get a fiscal operation and an invoice status (to be invoiced or not applicable). - The transfer form and list show the fiscal operation and document number.
Automatic behaviour: - Transfers and their lines inherit the fiscal operation from the operation type, company defaults or the rule that created them. - Taxes on transfer lines are derived from the fiscal operation and the direction of the move. - For outgoing fiscal operations with a zero price, the cost price is used instead of the sale price. - Returns use the return fiscal operation defined on the original operation; if none is set and the transfer must be invoiced, an error blocks the return. - The invoice-from-picking wizard can take the accounting journal from the fiscal operation and raises an error if that journal is missing.
It touches stock.picking, stock.move, stock.picking.type, stock.rule, res.company and the invoice-on-shipping wizard.
Depends on
Required by other modules
Models and fields (8)
- stock.move · new modeluom_id, tax_ids (Taxes), comment_ids (Comments), fiscal_price, tax_framework (Tax Framework), delivery_costs, fiscal_tax_ids (Fiscal Taxes), fiscal_operation_id
- stock.rule · extends an existing modelinvoice_state (Invoice Status), fiscal_operation_id (Fiscal Operation)
- res.company · extends an existing modelstock_fiscal_operation_id, stock_in_fiscal_operation_id, stock_out_fiscal_operation_id
- stock.picking · new modelcomment_ids (Comments), currency_id, fiscal_operation_id
- stock.picking.type · extends an existing modelfiscal_operation_id (Default Fiscal Operation), pre_generate_fiscal_document_number (Pre-generate Fiscal Document Number)
- stock.return.picking · extends an existing model
- stock.invoice.onshipping · extends an existing modelgroup, has_fiscal_operation, fiscal_operation_journal (Account Jornal from Fiscal Operation)
- stock.return.picking.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. The module is very large and only part of the code was read. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 5 confirmed, 4 with no information of 9 versions.
Sources · Odoo 17.0
Confirmed on 2026-11-03 in branch 17.0 of OCA/l10n-brazil.
terminal Installation and usage
OCA documentation · Odoo 18.0Installation
Source · Odoo 18.0This module depends on:
- stock_account
- stock_picking_invoicing
- l10n_br_stock
- l10n_br_account
Configuration
Source · Odoo 18.0No configuration required.
Usage
Source · Odoo 18.0Go to Picking and in Additional Information select the field 'Invoice State', if choosed 'To be Invoice' should be inform the Fiscal Operation and the Taxes after Confirm and Tranfer the Picking an button will appear to 'Create Invoice' with the possibility to create invoice based in Grouped Pickings.
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.