This question has been flagged
4 Replies
6412 Views

I have a customer that is using barcodes with GS1 nomenclature. 

Avatar
Discard
Author Best Answer

Each barcode is divided into one or more parts, each beginning with an "Application Identifier" (AI).

To access the list of AI's present in Odoo:


 - Install `stock_barcode`;

 - Enter debug mode;

 - Go to Inventory > Settings > Barcode Nomenclatures;

 - Select "GS1 nomenclature by default";

 - The AI's are in the list of rules (it is the first number of the pattern each time).


For example:

 - For a product, the AI is 01.

 - For a quantity expressed in kg, the AI goes from 3100 to 3105 (the last digit, going from 0 to 5, expresses how many numbers there are after the decimal point).


Some AI's require a barcode of a specific length, others are more flexible.

For AI 01 (product), exactly 14 numbers are expected to follow.

A Serial Number (AI 21) is expected to be followed by any number (maximum 20) of characters, including numbers, letters of the alphabet, and some special characters (!"%-/0-9:-? ).

As a GS1 barcode can be a sequence of different parts, each beginning with an AI, it is easy to tell when one ends and another begins when the length is fixed (as for 01), but less obvious when it is not. case, as with AI 21. In this case, if it is followed by another AI, it ends with a special character called FNC1 that serves as a separator.

By default, this is ASCII character number 29. The "FNC1 Separator" field, still in the BOM form view, allows you to modify it.

Unfortunately, since it's a special character, it will often be invisible because the element that's supposed to display it can't interpret it in the text (that's why the field appears empty).

In the browser console, it can be written like this: \x1D


A practical example to make it clearer...

Let's imagine that I have a product whose barcode is: 76543210

The AI for a product is 01 and is expected to be followed by 14 characters, all of which are numbers. Since the product's barcode is only 8 characters long, we add zeros (0) to the front so that it has the appropriate length.


So a GS1 barcode for this product would look like this: 0100000076543210


If we break it down it looks like this:

 - (01)(00000076543210)

    - 01: This is the Application Identifier that Odoo uses to know that it is a product;

    - 00000076543210: it is the barcode of the product (76543210) to which 6 zeros have been added (000000) so that it has 14 characters.


Now imagine this product is tracked by lot, the AI used to designate a lot is 10. If the lot in question is "lot-0042", the barcode will be: 0100000076543210(\x1D)10lot-0042


If we break it down, it gives this: (01)(00000076543210)(\x1D)(10)(lot-0042)


You don't need to separate AI 01 from AI 10 using FNC1 because you know exactly where the AI ends up. Conversely, if AI 10 predates AI 01, the barcode would look like this: 10lot-0042\x1D0100000076543210. The above only applies in case the GS1 barcode nomenclature has not been modified, however, in case of errors due to not using the FNC1 separator (\x1D) put it like the examples below.


If we break it down, it gives this: (10)(lot-0042)(\x1D)(01)(00000076543210)

                                   (AI)(LN)(FNC1)(AI)(Product)


If you want to add an amount (expressed in units), take the AI 30, followed by up to 8 numbers. For a quantity of 12 units, the different possible combinations are as follows:

 - 010000007654321010lot-0042\x1D3012

   Product + lot + quantity


 - 0100000076543210\x1D3012\x1D10lot-0042

   Product + Quantity + Lot


 - 10lot-0042\x1D3012\x1D0100000076543210

   Lot + quantity + product


 - 10lot-0042\x1D0100000076543210\x1D3012

   Lot + product + quantity


 - 3012\x1D10lot-0042\x1D0100000076543210


   Quantity + lot + product


 - 3012\x1D0100000076543210\x1D10lot-0042

   Quantity + product + lot


Note that for quantity, since Ai accepts up to 8 characters, 3012 equals 30012, 300012, ..., 3000000012


Typically, GS1 specifications require certain AIs to be associated with other AIs on the same barcode. Therefore, all AIs that start with 3 (those that express a quantity, a measure) are necessarily associated with an AI 01. In Odoo, it is quite possible to scan them separately.


In case you do not have a 2d barcode reader for GS1 codes, use your cell phone and make the movements from the Odoo mobile application.


Finally, when an AI necessarily expects a sequence of fixed-length numbers to follow (such as products, packages, and rentals), we can't invent any barcodes.

It must be valid as defined by the GS1 specifications, and to verify this, the last character in the string (called the "check digit") must be defined according to a small calculation. Instead of calculating it by hand, you can use the GS1 "Check Digit Calculator"



Avatar
Discard

Hi, Odoo is compatible with the version ECC200 of GS1 2D datamatrix?
All this configuration that you mention doesn't work with pharma gs1 datamatrix

Hi Pedro,

I am not sure what you mean by pharma gs1 datamatrix

If by pharma GS1 you mean the DataMatrix as described by GS1 website then it is working in Odoo

https://www.gs1.org/industries/healthcare/news/key-role-gs1-datamatrix-barcodes-product-identification-healthcare

Vielen Dank für Ihre E-Mail. Ab dem 09.01.2023 bin ich wieder erreichbar. Ihre E-Mail wird nicht automatisch weitergeleitet.

Unser Ticketsystem steht Ihnen jederzeit zur Verfügung. Es erfolgt eine direkte Benachrichtigung an den zuständigen Ansprechpartner.

 

 

Thank you for your email. You can reach me again on 2023-01-09. Your email is not forwarded automatically.

Our ticket system is available at any time. A direct notification will be sent to the appropriate contact person.

 

 

Freundliche Grüße / Kind regards

 

Nina Lösch
Finance Specialist | Backoffice

Mobil: +49 160 956 12346

E-Mail: nina.loesch@flexicode.net

 

FLEXiCODE GmbH

Kurgartenstraße 37, 90762 Fürth

www.flexicode.net 

https://www.flexicode.net/

 

 

N  i

n

Gesellschaft: FLEXiCODE GmbH; Mühlau 2, 94577 Winzer; Sitz: Winzer

Registergericht: Amtsgericht Deggendorf, HRB 4816; Geschäftsführung: Carolin Scheifl, Lorenz Wiederer

Besuchen Sie uns auf LinkedIn oder Instagram

 


Confidentiality notice and disclaimer

The content of this email is confidential and intended for the recipient specified in message only. It is strictly forbidden to share any part of this message with any third party, without a written consent of the sender. If you received this message by mistake, please reply to this message and follow with its deletion, so that we can ensure such a mistake does not occur in the future. FLEXiCODE GmbH puts the security of the client at a high priority. Therefore, we have put efforts into ensuring that the message is error and virus-free. Unfortunately, full security of the email cannot be ensured as, despite our efforts, the data included in emails could be infected, intercepted, or corrupted. Therefore, the recipient should check the email for threats with proper software, as the sender does not accept liability for any damage inflicted by viewing the content of this email.

Unsere Hinweise zum Datenschutz finden Sie hier: Datenschutzerklärung
Näheres zur Informationspflicht nach Artikel 13 DSGVO und zu unserer Verarbeitung Ihrer personenbezogenen Daten erfahren Sie hier.

Best Answer

I like to add one information:

To use GTIN (Global trade Identification number - AI = 01) you must register as a supplier. There is an annual fee.  The beginning of the GTIN number must always identify the vendor (supplier /manufacturer). 

The same is for the SSCC number (Serial Shipping Containr Code).

You get your number at the national organizastion of GS1.    You can find yours here: https://www.gs1.org/standards/get-barcodes

Avatar
Discard
Best Answer

Can odoo print GS1 labels and GS1 datamatrix labels?

Avatar
Discard
Best Answer

How can I configure Odoo to read Pharma Gs1 datamatrix?

Avatar
Discard