Free tool · no account

Can your barcode carry a passport?

Paste any GTIN, EAN or UPC. This checks the format and check digit — and the thing most tools miss: whether it is an in-store number that would make your Digital Product Passport unresolvable to everyone else.

Try:

Runs entirely in your browser · nothing is sent to a server or stored

What this tool checks — and what it can't

A valid check digit proves a number is well formed. It does not prove the number is licensed to you. Those are different questions, and only the second one determines whether your passport survives contact with a customs officer.

QuestionAnswered here?How
Is the format valid (8/12/13/14 digits)?YesLength + digits
Is the check digit correct?YesGS1 modulo-10
Is it an in-store / restricted number?YesReserved prefix ranges
Is it licensed to your company?NoNeeds a GS1 registry lookup

That last row is the one that bites. If you need a passport built on identifiers that hold up — GS1 Digital Link resolution, the QR, and the registry filing — run the free readiness check or read how GS1 Digital Link carries a DPP.

GTIN, EAN, UPC — what the number actually is

GTIN stands for Global Trade Item Number, and it is the umbrella term. EAN and UPC are not different systems; they are older names for particular lengths of the same number. That is why a checker that accepts "EAN" and one that accepts "GTIN" are doing the same arithmetic.

For a product passport the relevant number is almost always the GTIN-13 on the consumer item, because that is the number a scanner in the field will read.

How the check digit works

Every GTIN ends in a check digit derived from the digits before it, using a modulo-10 calculation. It exists to catch mistyped and misread numbers, and it is the only part of a GTIN you can validate offline — which is exactly what the tool above does.

  1. Take the number without its final digit.
  2. Working from the right, multiply alternate digits by 3 and 1.
  3. Add the results together.
  4. The check digit is whatever takes that sum up to the next multiple of 10 (and 0 if the sum is already a multiple of 10).

Worked example on 400638133393: the alternating sum comes to 89, the next multiple of ten is 90, so the check digit is 1 and the full GTIN-13 is 4006381333931. A single transposed pair almost always breaks this, which is why a failed check digit usually means a typo rather than a fake number.

The prefixes that quietly break a passport

Some ranges are reserved for numbers that were never meant to leave a building. They pass the check digit perfectly, which is what makes them dangerous: nothing looks wrong until the identifier has to resolve for someone outside your company.

A restricted number is meaningful only inside the organisation that assigned it. Build a product passport on one and the barcode still scans, but the identifier means nothing to a customs officer, a recycler or a customer — which defeats the purpose of having a passport at all. The tool above flags these explicitly.

From a valid GTIN to a working passport

A digital product passport is reached through a data carrier on the product, and in practice that carrier is a GS1 Digital Link QR or Data Matrix built around your GTIN. Three things have to be true, and only the first is checkable here:

If you are working towards the battery passport deadline of 18 February 2027, identifiers are the cheapest thing to get right early and one of the more expensive to correct once labels are printed. See how GS1 Digital Link carries a DPP, or check what else your products need with the free readiness check.

More free tools