Skip to content

Commit e7cd792

Browse files
Felicioussamueljlieberbrse-odooStraubCreative
committed
[IMP] barcode: split docs + hone in on language
closes #5592 Signed-off-by: Zachary Straub (zst) <zst@odoo.com> Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com> Co-authored-by: brse-odoo <brse@odoo.com> Co-authored-by: Zachary Straub <zst@odoo.com>
1 parent 71aabb2 commit e7cd792

File tree

15 files changed

+317
-209
lines changed

15 files changed

+317
-209
lines changed

content/applications/inventory_and_mrp/inventory/barcode/operations.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ Daily Operations
1313
operations/transfers_scratch
1414
operations/barcode_nomenclature
1515
operations/gs1_nomenclature
16+
operations/gs1_usage

content/applications/inventory_and_mrp/inventory/barcode/operations/gs1_nomenclature.rst

Lines changed: 80 additions & 209 deletions
Large diffs are not rendered by default.
Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
=================
2+
GS1 barcode usage
3+
=================
4+
5+
.. _barcode/operations/gs1_usage:
6+
7+
.. |AI| replace:: :abbr:`A.I. (Application Identifier)`
8+
.. |GTIN| replace:: :abbr:`GTIN (Global Trade Item Number)`
9+
10+
GS1 barcodes provide a standardized format that barcode scanners can interpret. They encode
11+
information in a :ref:`specific structure recognized globally <barcode/operations/gs1>`, allowing
12+
scanners to understand and process supply chain data consistently.
13+
14+
Odoo *Barcode* interprets and prints GS1 barcodes, automating product identification and tracking
15+
in warehouse operations such as receiving, picking, and shipping.
16+
17+
The following sections contain examples of how Odoo uses GS1 barcodes provided by the business to
18+
identify common warehouse items and automate certain warehouse workflows.
19+
20+
.. important::
21+
Odoo **does not** create GS1 barcodes. Businesses must purchase a unique Global Trade Item Number
22+
(GTIN) from GS1. Then, they can combine their existing GS1 barcodes with product and supply chain
23+
information (also provided by GS1) to create barcodes in Odoo.
24+
25+
.. seealso::
26+
- `Purchase GTINs <https://www.gs1.org/standards/get-barcodes>`_
27+
- :ref:`GS1 nomenclature <barcode/operations/gs1>`
28+
29+
.. _barcode/operations/gs1-lots:
30+
31+
Configure barcodes for product, quantity, and lots
32+
==================================================
33+
34+
To build a GS1 barcode that contains information about a product, its quantities, and the lot
35+
number, the following barcode patterns and Application Identifiers (A.I.) are used:
36+
37+
+------------+--------------------------+------+----------------------------------+------------------------------------------+
38+
| Name | Rule Name | A.I. | Barcode Pattern | Field in Odoo |
39+
+============+==========================+======+==================================+==========================================+
40+
| Product | Global Trade Item Number | 01 | (01)(\\d{14}) | :guilabel:`Barcode` field on product form|
41+
| | (GTIN) | | | |
42+
+------------+--------------------------+------+----------------------------------+------------------------------------------+
43+
| Quantity | Variable count of items | 30 | (30)(\\d{0,8}) | :guilabel:`Units` field on transfer form |
44+
+------------+--------------------------+------+----------------------------------+------------------------------------------+
45+
| Lot Number | Batch or lot number | 10 | (10)([!"%-/0-9:-?A-Z_a-z]{0,20}) | :guilabel:`Lot` on Detailed Operations |
46+
| | | | | pop-up |
47+
+------------+--------------------------+------+----------------------------------+------------------------------------------+
48+
49+
.. _barcode/operations/lot-setup:
50+
51+
Configuration
52+
-------------
53+
54+
First, :ref:`enable product tracking using lots <inventory/management/track_products_by_lots>` by
55+
navigating to :menuselection:`Inventory app --> Configuration --> Settings`, and checking the box
56+
for :guilabel:`Lots & Serial Numbers` under the :guilabel:`Traceability` heading.
57+
58+
Then, set up the product barcode by navigating to the intended product form in
59+
:menuselection:`Inventory app --> Products --> Products` and selecting the product. On the product
60+
form, click :guilabel:`Edit`. Then, in the :guilabel:`General Information` tab, fill in the
61+
:guilabel:`Barcode` field with the unique 14-digit `Global Trade Item Number (GTIN)
62+
<https://www.gs1.org/standards/get-barcodes>`_, which is a universally recognized identifying number
63+
that is provided by GS1.
64+
65+
.. important::
66+
On the product form, omit the |AI| `01` for |GTIN| product barcode pattern, as it is only used to
67+
encode multiple barcodes into a single barcode that contains detailed information about the
68+
package contents.
69+
70+
.. example::
71+
72+
To record the GS1 barcode for the product, `Fuji Apple`, enter the 14-digit |GTIN|
73+
`20611628936004` in the :guilabel:`Barcode` field on the product form.
74+
75+
.. image:: gs1_usage/barcode-field.png
76+
:align: center
77+
:alt: Enter 14-digit GTIN into the Barcode field on product form.
78+
79+
.. tip::
80+
To view a list of *all* products and their corresponding barcodes in the Odoo database, navigate
81+
to :menuselection:`Inventory app --> Configuration --> Settings`. Under the :guilabel:`Barcode`
82+
heading, click on the :guilabel:`Configure Product Barcodes` button under the :guilabel:`Barcode
83+
Scanner` section. Enter the 14-digit |GTIN| into the :guilabel:`Barcode` column, then click
84+
:guilabel:`Save`.
85+
86+
.. image:: gs1_usage/product-barcodes-page.png
87+
:align: center
88+
:alt: View the Product Barcodes page from inventory settings.
89+
90+
.. _barcode/operations/lot-setup-on-product:
91+
92+
After activating tracking by lots and serial numbers from the settings page, specify that this
93+
feature is to be applied on each product by navigating to the :guilabel:`Inventory` tab on the
94+
product form. Under :guilabel:`Tracking`, choose the :guilabel:`By Lots` radio button.
95+
96+
.. image:: gs1_usage/track-by-lots.png
97+
:align: center
98+
:alt: Enable product tracking by lots in the "Inventory" tab of the product form.
99+
100+
Scan barcode on receipt
101+
-----------------------
102+
103+
To ensure accurate lot interpretation in Odoo on product barcodes scanned during a receipt
104+
operation, navigate to the :menuselection:`Barcode` app to manage the :ref:`receipt picking process
105+
<barcode/operations/scan-received-products>`.
106+
107+
From the :guilabel:`Barcode Scanning` dashboard, click the :guilabel:`Operations` button, then the
108+
:guilabel:`Receipts` button to view the list of vendor receipts to process. Receipts generated from
109+
:abbr:`POs (Purchase Orders)` are listed, but new receipt operations can also be created directly
110+
through the :menuselection:`Barcode` app using the :guilabel:`Create` button.
111+
112+
On the list of receipts, click on the warehouse operation (`WH/IN`) and scan product barcodes and
113+
lot numbers with a barcode scanner. The scanned product then appears on the list. Use the
114+
:guilabel:`✏️ (pencil)` button to open a window and manually enter quantities for specific lot
115+
numbers.
116+
117+
.. example::
118+
After placing a :abbr:`PO (Purchase Order)` for fifty apples, navigate to the associated receipt
119+
in the *Barcode* app.
120+
121+
Scan the barcode containing the |GTIN|, quantity, and lot number. For testing with a barcode
122+
scanner, below is an example barcode for the fifty Fuji apples in Lot 2.
123+
124+
.. list-table::
125+
:widths: 50 50
126+
:header-rows: 1
127+
:stub-columns: 1
128+
129+
* - 50 Fuji apples in Lot0002
130+
-
131+
* - 2D Matrix
132+
- .. image:: gs1_usage/fuji-apples-barcode.png
133+
:alt: 2D matrix of GS1 barcode of 50 fuji apples with an assigned lot number.
134+
* - |AI| (product)
135+
- 01
136+
* - GS1 Barcode (product)
137+
- 20611628936004
138+
* - |AI| (quantity)
139+
- 30
140+
* - GS1 Barcode (quantity)
141+
- 00000050
142+
* - |AI| (lot)
143+
- 10
144+
* - GS1 Barcode (lot #)
145+
- LOT0002
146+
* - Full GS1 barcode
147+
- 01206116289360043 000000050 10LOT0002
148+
149+
:ref:`If the configuration is correct <barcode/operations/troubleshooting>`, `50/50`
150+
:guilabel:`Units` processed will be displayed and the :guilabel:`Validate` button turns green.
151+
Click the :guilabel:`Validate` button to complete the reception.
152+
153+
.. image:: gs1_usage/receive-50-apples.png
154+
:align: center
155+
:alt: Scan the barcode for a product on the reception picking page in the *Barcode* app.
156+
157+
.. _barcode/operations/quantity-ex:
158+
159+
Configure barcode for product and non-unit quantity
160+
===================================================
161+
162+
To build a GS1 barcode that contains products measured in a non-unit quantity, like kilograms, for
163+
example, the following barcode patterns are used:
164+
165+
+-------------+--------------------------+----------+--------------------+----------------------------+
166+
| Name | Rule Name | A.I. | Barcode Pattern | Field in Odoo |
167+
+=============+==========================+==========+====================+============================+
168+
| Product | Global Trade Item Number | 01 | (01)(\\d{14}) | :guilabel:`Barcode` field |
169+
| | (GTIN) | | | on product form |
170+
+-------------+--------------------------+----------+--------------------+----------------------------+
171+
| Quantity in | Variable count of items | 310[0-5] | (310[0-5])(\\d{6}) | :guilabel:`Units` field on |
172+
| kilograms | | | | transfer form |
173+
+-------------+--------------------------+----------+--------------------+----------------------------+
174+
175+
Scan barcode on receipt
176+
-----------------------
177+
178+
To confirm that quantities are correctly interpreted in Odoo, place an order in the *Purchase* app
179+
using the appropriate unit of measure (:guilabel:`UoM`) for the quantity of products to be
180+
purchased.
181+
182+
.. seealso::
183+
:ref:`Simplify vendor unit conversions with UoMs <inventory/management/uom-example>`
184+
185+
After the order is placed, navigate to the :menuselection:`Barcode` app to :ref:`receive the vendor
186+
shipment <barcode/operations/scan-received-products>`.
187+
188+
.. example::
189+
On the receipt in the *Barcode* app, receive an order for `52.1 kg` of peaches by scanning the
190+
barcode containing the |GTIN| and quantity of peaches in kilograms.
191+
192+
.. list-table::
193+
:widths: 50 50
194+
:header-rows: 1
195+
:stub-columns: 1
196+
197+
* - 52.1 kg of Peaches
198+
-
199+
* - 2D Matrix
200+
- .. image:: gs1_usage/peaches-barcode.png
201+
:alt: 2D matrix of GS1 barcode of 52.1 kg of peaches.
202+
* - |AI| (product)
203+
- 01
204+
* - GS1 Barcode (product)
205+
- 00614141000012
206+
* - |AI| (kg, 1 decimal point)
207+
- 3101
208+
* - GS1 Barcode (quantity)
209+
- 000521
210+
* - Full GS1 barcode
211+
- 0100614141000012 3101000521
212+
213+
:ref:`If the configuration is correct <barcode/operations/troubleshooting>`, `52.1 / 52.1`
214+
:guilabel:`kg` will be displayed and the :guilabel:`Validate` button turns green. Finally, press
215+
:guilabel:`Validate` to complete the validation.
216+
217+
.. image:: gs1_usage/scan-barcode-peaches.png
218+
:align: center
219+
:alt: Scan barcode screen for a reception operation in the Barcode app.
220+
221+
Verify product moves
222+
====================
223+
224+
For additional verification, the quantities of received products are also recorded on the
225+
:guilabel:`Product Moves` report, accessible by navigating to :menuselection:`Inventory app -->
226+
Reporting --> Product Moves`.
227+
228+
The items on the :guilabel:`Product Moves` report are grouped by product by default. To confirm the
229+
received quantities, click on a product line to open its collapsible drop-down menu, which displays
230+
a list of *stock move lines* for the product. The latest stock move matches the warehouse reception
231+
reference number (e.g. `WH/IN/00013`) and quantity processed in the barcode scan, demonstrating that
232+
the records processed in the *Barcode* app were properly stored in *Inventory*.
233+
234+
.. image:: gs1_usage/stock-moves-peach.png
235+
:align: center
236+
:alt: Reception stock move record for 52.1 kg of peaches.
27.6 KB
Loading
1.95 KB
Loading
1.64 KB
Loading

0 commit comments

Comments
 (0)