Opo Codes

GS1 DataMatrix generator

A GS1 DataMatrix is a small square code that carries labelled facts such as a product number, an expiry date and a serial number, used on healthcare and pharmacy items. Opo Codes has a builder that checks each field, draws the code free in your browser, and reads it back. It encodes numbers you supply and does not issue official GS1 numbers.

Open the generatorFree. Runs in your browser.

How to do it

  1. Open the generator with GS1 DataMatrix already selected.
  2. Use Build the data to add product number, expiry date and serial number, and fill each one.
  3. Fix any field the builder flags, then press Use in the barcode.
  4. Check the scan stamp, choose PNG, JPG, SVG or PDF, then download.

Worked example with a serial number

Example text: (01)05901234123457(17)271231(21)SN12345. AI 01 is the product number as 14 digits. Here it is the 13-digit number 5901234123457 with a 0 in front. AI 17 is the expiry date 271231, which is 31 December 2027. AI 21 is a serial number of up to 20 characters, here SN12345.

Check digit of the product number: from the first 13 digits 0590123412345, positions 1, 3, 5, 7, 9, 11, 13 hold 0, 9, 1, 3, 1, 3, 5 and add up to 22, times 3 is 66. Positions 2, 4, 6, 8, 10, 12 hold 5, 0, 2, 4, 2, 4 and add up to 17. The total is 83, the next multiple of 10 is 90, so the check digit is 7.

Why a serial number matters and how big the code is

A serial number makes every item unique, which is what healthcare tracking uses. The serial option makes up to 500 numbered codes at once, and it starts from a prefix such as (01) number (21), so each code gets the next serial. For a larger run, the bulk page reads a spreadsheet.

The example above fits a 20 by 20 grid of modules. Fixed-length items are put first and variable-length items last, which the builder does for you. A rectangular variant of GS1 DataMatrix is also in the picker for long, thin spaces.

Honest limits

This tool encodes the numbers you give it. It does not issue official GS1 numbers and does not check that a number is registered to you. Use the made-up numbers above only to test a layout. Which fields your regulator or buyer needs is their rule, so confirm it before printing.

The scan check reads the code back and compares the data, ignoring brackets and separators. It is not a grading report of print quality, so test a printed label with the scanner in use.

Questions

GS1 DataMatrix or plain Data Matrix?

Plain Data Matrix holds any text. GS1 DataMatrix holds labelled items in the GS1 format, so a buyer's system can read each one.

Do I type the brackets?

Write each identifier in brackets, like (01). They are not drawn in the code. The builder writes them for you.

What goes in AI 21?

A serial number, up to 20 characters, unique for each item.

Can I make many with running serials?

Yes, up to 500 at once with the serial option, or more through the bulk page.

Related tools