| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Discuss (mail) |
| Lines of code | 48 |
| Technical Name |
stock_picking_qr_codes |
| License | LGPL-3 |
| Website | https://sjr.ie |
| Versions | 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Discuss (mail) |
| Lines of code | 48 |
| Technical Name |
stock_picking_qr_codes |
| License | LGPL-3 |
| Website | https://sjr.ie |
| Versions | 17.0 18.0 19.0 |
Stock Picking QR Codes
Render QR codes on the standard Stock Picking (Picking Operations) and Return Slip PDF reports — no template duplication, no Python overrides.
Also updates the Return Slip report so both default
barcodes (o.name and OBTRETU) are printed as QR codes.
What it does
The module inherits the standard QWeb reports and uses
xpath overrides only.
On the Picking Operations report
(stock.report_picking) it switches each existing
barcode widget to the QR symbology:
- Document / picking name — the header barcode identifying the transfer
- Lot / Serial Number — per move-line lot or serial barcode
- Product barcode — per move-line product barcode
- Package barcode — package label barcode
On the Return Slip report
(stock.report_return_slip) it converts both standard
barcode widgets to QR:
- Return reference (
o.name) — barcode converted to QR OBTRETUcode — barcode converted to QR
For readability on printed reports, the encoded value is also shown as text under the Lot / Serial, Product, and Package QR codes.
Why use it
- QR codes scan reliably from a wider range of angles and at smaller print sizes.
- QR codes can encode longer references (lot numbers, package names) without overflowing the layout.
- Pure-XML override — nothing to upgrade with future Odoo point releases as long as the upstream report keeps the same anchors.
Usage
- Install the Stock Picking QR Codes module.
- Open Inventory → Transfers and select a picking.
- Click Print → Picking Operations to print all four QR replacements, or Print → Return Slip for the return reference and OBTRETU QR codes.
Changing the QR code size
Each QR code can be resized independently. Open
views/stock_picking_qr_codes.xml and edit the
t-options attribute for the code you want to change:
width/height— the rendered image resolution in pixels (controls sharpness; default200x200).img_style— the on-page CSS size, for examplewidth:80px;height:80px;for the document and package codes, andwidth:60px;height:60px;for the lot/serial and product codes.
After saving the file, upgrade the module (Apps → Stock Picking QR Codes → Upgrade) for the new sizes to take effect.
Example — make the document QR code larger:
<attribute name="t-options">{'widget': 'barcode', 'symbology': 'QR',
'width': 300, 'height': 300,
'img_style': 'width:120px;height:120px;'}</attribute>
Known conflicts
stock_picking_totals_report — if both modules are installed on the same database, the Picking Operations report will fail to render until two of the four QR templates are deactivated. The totals module rewrites the per-move-line row of the picking report, which removes the xpath targets for the lot/serial and product barcodes.
To fix:
- Open Settings → Technical → User Interface → Views.
- Find the view with External ID
stock_report_picking_qr_lotand untick Active. - Repeat for
stock_report_picking_qr_product.
The document-name and package QR codes still print; only the per-line lot/serial and product barcodes are skipped (they are no longer printed by the totals report anyway). Return Slip overrides are unaffected. Re-tick Active on both views if you later uninstall the totals module.
Info
| Name | Stock Picking QR Codes |
|---|---|
| Version | 19.0.1.0.0 |
| Depends | stock |
| License | LGPL-3 |
| Author | SJR Nebula |
| Website | https://sjr.ie |
| Support | info@sjr.ie |
Please log in to comment on this module