Supply Chain
Odoo Inventory

Odoo Inventory: real-time stock with traceability and Brazilian tax compliance

Multi-location inventory management with full traceability

Manage multiple warehouses, lots, serial numbers, and expiry dates in a single system. Odoo Inventory ties into the Brazilian localization maintained by KMEE: inbound NF-e through SEFAZ, SPED Fiscal (EFD-ICMS/IPI), ANVISA and MAPA controls, for manufacturers, distributors, and retailers operating in Brazil.

Official Odoo module
odoo/inventory
Odoo Inventory
Odoo 18

Why Odoo Inventory?

Real results our clients achieve.

Full stock visibility

Balances by location, lot, serial number, and expiry date in real time. Decide on accurate data, with no parallel spreadsheets.

Inbound NF-e integrated with SEFAZ

Receiving with NF-e XML import, automatic SEFAZ validation, and stock update. Discrepancies surface before the goods are posted.

SPED Fiscal without rework

Stock moves feed EFD-ICMS/IPI directly (Blocks C, H, and K). Physical inventory is exported to SPED with no manual extraction.

Automatic replenishment rules

Reordering rules, min/max quantities, or make-to-order. Purchase or manufacturing orders are generated automatically when stock hits the trigger.

Features

What's included in this module.

Multi-warehouse and multi-company

Multi-level warehouse structure (warehouse, zone, aisle, shelf, position). Internal transfers with or without a fiscal document, depending on the type of move.

Lot and serial number traceability

Automatic FEFO and FIFO. Full trace from origin to destination, essential for ANVISA (pharma, food) and MAPA (agribusiness).

Inbound NF-e from XML

Import the inbound invoice XML, reconcile it against the purchase order, and update stock and costs automatically.

Physical inventory and adjustments

Cycle or full counts generating SPED Fiscal Block H. Adjustments carry a recorded reason for tax audit purposes.

Routing rules (push/pull)

Define automatic movement routes: receiving -> quarantine -> stock, or stock -> shipping -> customer. Complete flow flexibility.

Inventory valuation

Average cost, FIFO, or standard cost. Revaluation and direct integration with the general ledger for automatic reconciliation.

Picking and shipping

Picking, packing, and delivery orders tied to sales orders. Transport document generation integrated with CT-e.

Correios shipping rates and labels

Integration with the Correios CWS API built by KMEE: price and delivery-time quoting right on the sales order, pre-posting created when the outbound transfer is validated, tracking code stored on the document, and the PDF label attached automatically. The customer follows the tracking from the portal.

Reporting and BI

Dashboards for turnover, stock cover, ABC analysis, and obsolescence. SPED export and management reports in one click.

Native integrations

Odoo Inventory connects natively with other Odoo modules, no external integration.

Why implement with KMEE

KMEE integrates Odoo Inventory with the Brazilian tax localization (OCA l10n-brazil), automating inbound NF-e, SPED Fiscal Blocks H and K, and ANVISA/MAPA controls. The shipping end is ours as well: the integration with the Correios CWS API was built by KMEE and covers the full cycle: price and delivery-time quoting on the order, pre-posting generated when the transfer is validated, tracking code, PDF label attached to the document, and cancellation from Odoo itself, in both the sandbox and production environments. Our team has more than 10 years of experience with inventory operations in Brazil.

Who it's for

Scenarios where this module delivers the most value.

Distributors

High SKU counts with lot traceability, FEFO, and SPED Block K compliance for food, beverage, and pharmaceutical distributors.

Manufacturing

Raw material, WIP, and finished goods control integrated with MRP, SPED Block K, and ANVISA obligations.

Retail and wholesale

Multi-warehouse, inter-branch transfers, and cycle counting without stopping operations, with SPED Fiscal automated.

Agribusiness

Traceability required by MAPA for pesticides, seeds, and fertilizers, with expiry and destination control.

Shipping through Correios

Operations that ship via Correios quote freight at the moment of sale and leave the warehouse with the label printed and the tracking code already stored on the order, with no retyping addresses in an external portal, no pasting tracking codes by hand.

Frequently Asked Questions

Does Odoo Inventory support multiple warehouses in Brazil?

Yes. You can set up as many warehouses, zones, and positions as you need, with transfer rules between branches and NF-e issuing for transfers.

How does inbound NF-e work?

You import the inbound invoice XML. The system validates it with SEFAZ, reconciles it against the purchase order, and updates stock and the general ledger automatically.

Does physical inventory feed SPED?

Yes. The OCA l10n-br-account module (maintained with KMEE among its core maintainers) generates EFD-ICMS/IPI Block H from the physical inventory recorded in Odoo.

Can I quote freight and print Correios labels straight from Odoo?

Yes. The integration built by KMEE talks to the Correios CWS API, the successor to SIGEP Web: you quote price and delivery time on the sales order, and when the outbound transfer is validated Odoo creates the pre-posting, stores the tracking code on the document, and attaches the PDF label. Cancelling the pre-posting and the tracking link on the customer portal are covered too. It requires a Correios contract, a posting card with the services enabled, and the API access code generated on the CWS portal. KMEE configures and validates everything in the sandbox first.

Can I track lots with expiry dates?

Yes. Odoo supports lots, serial numbers, and expiry dates, with automatic FEFO and FIFO strategies per product or category.

Explore all Odoo modules

View full catalog

Ready to transform your business management?

Talk to the team that has implemented more Odoo in Brazil. Free process analysis.