Check a marking code from a photo
Photograph the DataMatrix on the pack — the page breaks the code down and shows whether everything Chestny Znak needs is in place. The photo is not sent anywhere: the code is read in your browser.

Check
Upload a photo of the code
A phone photo will do: the whole code in the frame, sharp, with no glare.
The page checks the code's structure, not its authenticity or status. Authenticity and product status are shown by the Chestny ZNAK app.
Code structure
How a marking code is built
The breakdown on this page follows these fields, in the order they appear in the code.
- FNC1
- A control character at the start of the code. It tells the scanner and the till that GS1 fields follow. Without it this is a plain DataMatrix, and Chestny Znak will not accept it.
- (01) GTIN
- The product code, 14 digits. The last digit is a check digit: the page recalculates it, so a typo in the GTIN shows up at once.
- (21) Serial number
- The number of this particular item; its length depends on the product group. Letters, digits and punctuation — including “;” and “,”.
- GS
- An invisible separator, character code 29. It follows the serial number: without it there is no telling where the serial ends.
- (91) (92) or (93)
- The verification code — the cryptographic part. Chestny Znak issues it together with the code: it cannot be guessed or made up.
Fields (01) and (21) together are called the identification code (KI): it identifies the product in documents. The marking code (KM) is the KI plus the verification code: it is printed on the pack and scanned at the till.
The exception is a cigarette pack. Its code is 29 characters without identifiers: GTIN, serial number, maximum retail price and verification code in a row. This page recognises it too.
On the line
Where codes break during marking
Three faults we have found on lines. The first two show up in the breakdown; the third shows up as a code that will not read at all.
The GS1 flag is lost
The printer or marking machine applied the code as a plain DataMatrix. The symbol looks the same but will not pass the system. The GS1 flag is set in the print command or in the machine settings — it will not appear on its own.
The serial number is cut at “;” or “,”
Some equipment treats these characters as its own separators and splits the code on them. On one machine this spoiled every 14th code; in the breakdown such a code has no verification code.
The symbol bleeds
The code is too small for the laser spot: the dot is wider than a cell, and neighbouring cells merge. We size the symbol to the spot diameter, not the other way round.
Questions
The check in brief
Can a photo tell whether a code is genuine?
No. A photo shows the structure: the GS1 flag, the GTIN, the serial number and the verification code. Authenticity and product status are shown by the Chestny ZNAK app, which checks the code against the system.
Is the photo sent anywhere?
No. The code is read in your browser; the image stays on your device.
Why does the page not find the code?
Usually it is glare, blur or a code only partly in the frame: take the photo closer, straight on and in even light. If the symbol was damaged or bled during marking, check it on the line — such a code may not read at the till either.
What if the code has problems?
Find where it was spoiled on the way from ordering to the pack: most often the GS1 flag or part of the serial is lost when the code is passed to the equipment. We will trace it during an audit of your line.
Station quote
Let us scope your line
Only name and phone are required — an engineer takes it from there. You get the station layout, equipment list and price range. Free, within a working day.
Line and equipment already in place, only software needed? PPKLink is sold separately
Want a ballpark figure first? What a station costs