Barcode Inventory
barcode_inventory · OCA/barcode-interface
-
Security25/25No findings
-
Activity25/25Last human commit 1 month ago
-
Required by5/250 modules depend on it
-
Maturity5/25In 1 Odoo series since 18.0
Heuristic over the facts below, not an audit · How it's computed
Description
Perform inventory adjustments and stock counts directly from the Barcode scanner app.
The operator picks an internal location, scans the products found there
(with barcode_gs1 installed, a GS1 label also brings its lot/serial and
quantity), types the counted quantity, and applies. Each adjustment is recorded as a
stock_inventory adjustment
group — draft → in progress → done — so every barcode count leaves a traceable,
auditable record with its own move lines, using Odoo's native on-hand
adjustment mechanism (stock.quant).
This is a feature module on top of barcode_scanner: it registers its own
screens, scan handling and home-screen tile into the scanner core without
patching it, so you install only what you need.
Dependencies
Code analysis
Extracted from the source by best-effort static analysis (no code is executed); details may be incomplete.
Views touched 0
No views found for this module.
HTTP endpoints 0
No HTTP endpoints found for this module.
Models touched 1
No new fields.
Public methods (3)-
action_barcode_apply_count(self, location_id, lines, force=False)@api.modelApply the operator's count as an inventory adjustment of one location. Builds a ``stock.inventory`` adjustment (OCA ``stock_inventory``) of exactly the counted products at that location, sets the counted quantity on each one's stock -- creating it when the location had none -- and applies it through Odoo's own ``action_apply_inventory``. The adjustment is then closed, so every count from the scanner leaves one adjustment record with its own moves. Should the stock of a counted product have changed since the screen showed it, nothing is applied: the changes come back for the operator to decide, and ``force`` applies the count all the same -- the choice the back office offers for outdated counts. Applying inventory quantities is restricted by Odoo to inventory administrators (``stock.group_stock_manager``). -
action_barcode_location_lines(self, location_id)@api.modelReturn the stock a location holds as count lines, one per product and lot, so the scanner can show it before the operator counts. This is a plain read: no inventory adjustment is created yet. It is only built when the operator applies the count (``action_barcode_apply_count``), so backing out of the screen leaves no adjustment in progress. -
action_barcode_lot_names(self, location_id, product_id, search='', limit=50)@api.modelThe names the lot field of a count line suggests: the lots ``_barcode_resolve_lot`` would find for a count at that location, so that no suggestion turns into a new lot once applied. They are looked up as the operator types (``search``), a few at a time: a product may have thousands of lots.