| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Point of Sale (point_of_sale) • Discuss (mail) • Invoicing (account) |
| Lines of code | 560 |
| Technical Name |
crowe_multi_barcodes_pos |
| License | AGPL-3 |
| Website | https://www.crowe.mv |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Point of Sale (point_of_sale) • Discuss (mail) • Invoicing (account) |
| Lines of code | 560 |
| Technical Name |
crowe_multi_barcodes_pos |
| License | AGPL-3 |
| Website | https://www.crowe.mv |
Product Multi Barcode
Scan any barcode for a product — in POS, Sales, Inventory, and Purchase
Assign multiple barcodes to a single product or variant and let cashiers, warehouse staff, and sales users find the right item by scanning or typing any of them. The default product barcode still works alongside your alternate codes, so supplier labels, legacy packaging, and internal codes all resolve to the same product without duplicates or manual lookups.
Key Features
Multiple Barcodes per Product
Add as many alternate barcodes as you need on the product template (single-variant products) or directly on each product variant. Every code is validated for uniqueness across the database.
POS Barcode Scanning
Scan any configured alternate barcode at the Point of Sale and the correct product is added to the order line instantly — no need to re-label stock or maintain separate POS products.
Lookup Everywhere
Multi-barcode search works beyond POS: Sales Orders, Purchase Orders, Inventory transfers, receipts, deliveries, and any standard product search field recognise alternate barcodes.
How It Works
Configure barcodes once, scan them anywhere
Open the product
Go to Point of Sale → Products → Products and open the product you want to configure. The product form shows the standard fields — sales price, category, and the default barcode field on the General Information tab.
Add barcodes on the product
Open the Multi Barcodes tab and add one row per alternate barcode. For a single-variant product, add codes on the template. For products with variants, open each variant and add barcodes on the variant’s Multi Barcodes tab instead.
Scan any barcode at the POS
Open a POS session and scan or search using any configured alternate barcode. The module builds a barcode-to-product map when the session loads, so lookups are fast at the counter.
Same product, every barcode
Whether you scan 123456 or 009988, the same product appears in POS. Cashiers never need to know which code is “primary” — they all resolve to the correct item.
Configuration
A dedicated tab on the product form — no extra menus
- Go to Point of Sale → Products → Products (or Inventory / Sales products).
- Open the product and select the Multi Barcodes tab.
- Add one row per alternate barcode in the editable list.
- For multi-variant products, open each variant and add barcodes on the variant’s Multi Barcodes tab instead.
- Save. The barcodes are available immediately in POS and product search.
Benefits
Faster checkout
Cashiers scan supplier or legacy barcodes without re-keying product names or hunting through the product list.
One product, many codes
Map packaging changes, partner-specific labels, and historical barcodes to a single product record — no duplicate products in your catalogue.
Consistent across apps
The same alternate barcodes work in POS, Sales, Purchase, and Inventory operations, keeping data entry consistent across departments.
Safe by design
Uniqueness constraints prevent two products from sharing the same barcode, reducing stock and billing errors at the source.
Feature Summary
On the product
Multi Barcodes tab on product templates and variants.
Editable list for quick barcode entry.
Global uniqueness validation on every barcode.
Default product barcode remains fully supported.
Behind the Scenes
multi.barcode.products model stores alternate codes.
Product search and barcode lookup extended on template and variant.
POS loads a barcode-to-product map at session start.
Works in Sales, Purchase, Inventory, and POS search fields.
Technical Details
Server side
-
multi.barcode.products — stores alternate barcodes linked to
product.templateandproduct.product, with uniqueness constraints and POS data loading viapos.load.mixin. -
product.template — adds
template_multi_barcodes_idsand overrides_search_barcodeandname_searchto resolve alternate codes. -
product.product — adds
product_multi_barcodes_idsand extends barcode and name search for variant-level lookups.
Front end (OWL)
- Patches PosStore to load multi-barcode records and build a barcode-to-product map at session start.
- Patches ProductSearch so POS barcode scanning resolves alternate codes alongside the default barcode.
Compatibility & Dependencies
Version
Built for Odoo 19.0, compatible with both Community and Enterprise editions.
Dependencies
Requires product, point_of_sale, stock, and web.
Support
Brought to you by Exponent Pvt Ltd
Author
Exponent Pvt Ltd
Website
crowe.mv
Licensed under AGPL-3.
Please log in to comment on this module