All posts
Functional4 min read

Implementing Barcode Scanning for Warehouse Operations in Odoo

Set up Odoo barcode scanning for receipts, picking, and inventory adjustments - enabling warehouse staff to process transfers faster and with fewer errors using handheld scanners.

Barcode Scanning in Odoo Inventory#

Barcode scanning replaces manual product lookups and quantity entry with a scan-and-confirm workflow - faster, more accurate, and mobile-friendly. Odoo's Barcode app integrates with inventory operations out of the box.

Prerequisites#

Apps → Inventory → Install Barcode (if not already enabled).

Inventory → Configuration → Settings → enable Barcode Scanner.

Supported Hardware#

  • USB barcode scanners (keyboard emulation - works as keyboard input)
  • Bluetooth scanners paired to tablets/phones
  • Mobile devices with the Odoo Android/iOS app (camera-based scanning)
  • Zebra/Honeywell industrial handhelds (Odoo-compatible with Zebra's Enterprise Browser)

Configuring Barcodes on Products#

Product → Inventory tab → Barcode: enter or scan the product barcode (EAN-13, UPC, QR code, or custom).

For multiple barcodes per product (e.g., different package sizes):

Inventory → Configuration → Barcodes → New:

  • Product: Widget A
  • Barcode: 7890001234567 (inner pack)
  • Quantity: 1

Add another record for the outer case:

  • Barcode: 7890001234568 (outer case)
  • Quantity: 12

Scanning the case barcode increments quantity by 12.

Barcode Scanning for Receipts#

Barcode App → Operations → Receipts → [PO]:

  1. Scan product barcode → line is highlighted
  2. Scan quantity (or type manually): 50 units
  3. Scan lot/serial number (if required)
  4. Repeat for all products
  5. Validate → receipt is confirmed, stock updated

Barcode Scanning for Picking#

Barcode App → Operations → Transfers → [Picking]:

  1. Scan location barcode (confirms picker is at the right location)
  2. Scan product barcode → system confirms correct product
  3. Scan quantity (or type)
  4. Move to next line
  5. Validate → delivery prepared

Inventory Adjustment via Barcode#

Barcode App → Physical Inventory:

  • Scan product → scan quantity
  • Odoo shows the expected quantity vs. counted
  • Discrepancies are flagged for review before posting

Barcode on Locations#

Print location barcodes (GS1-128 format):

Inventory → Configuration → Locations → [Location] → Print Barcode

Scanning a location confirms the picker's physical position matches the transfer instruction - reduces put-away errors.

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free