Onpack generates the QR code, hosts the product page behind it, and shows every scan live, phones and POS systems alike. Zero code, zero infrastructure, zero reprints.
A conformant GS1 resolver: all 54 checks in GS1's public test suite pass.
onpack.link/01/09506000134352
This is a real, scannable GS1 Digital Link code.
Packaging printed this year will still be on shelves when every one of these arrives. Each of them is a setting on a code you print once.
Up to $2,500 per violation, per day, enforced by private plaintiffs. Onpack serves the full warning to California scans, alongside your on-pack label.
Batteries without a digital product passport, carried by a QR code, cannot be sold in the EU.
Retail checkouts worldwide expect 2D barcodes at the till, and retailers pass the requirement down to their suppliers.
Textiles, furniture, mattresses, tyres, steel and aluminium: each loses EU market access as its passport rules land.
US food needs batch-level traceability records. Exactly what the lot layer keeps, per batch, from day one.
A reprint costs a plate, a print run and stranded inventory. A Digital Link costs nothing, and changes its mind later.
A page like this: your photo, your specs, recall notices when they matter, in the shopper's language. No website needed. Already have one? Point the code there instead.
Fill a form and this is live. No developer, no hosting bill.
Passport data appears for EU shoppers on its own.
A reorder button on every product already out in the world.
Only the affected batch warns. The rest keep selling.
Codes redirect straight to your pages. Nothing to migrate.
A GS1 Digital Link is a barcode that holds a web address instead of only a number. Onpack runs that web address, so a single printed code can do all of the following at once.
The code that opens a page for a shopper returns structured product data to checkout systems, inventory software and AI agents: JSON-LD and a full GS1 linkset from the same URL.
Write a headline, a description, a photo, a button and as many links as you want. Onpack hosts it and the barcode opens it. Already have a product page? Point the code there instead.
Most packs need the old linear barcode and the new 2D code together, within 50 mm of each other. The generator below tells you whether both fit. On a 45 mm lip balm label, they do not.
Store the origin, production date and expiry for every batch. If one batch is recalled, scanning a pack from it shows the recall notice in the shopper's language. Every other batch keeps working.
The same pack can open your Mexican site in Mexico and your US site in the United States. Destination, legal text and language all follow where the scan happened.
Each serial number is cryptographically signed and checked at scan time. The same serial appearing in two countries at once is flagged, and you can revoke one serial without touching the rest.
Scans in the EU can show Digital Product Passport information in the local language. Scans in California can show Proposition 65 warnings. Onpack picks the right one for where the phone is.
Serve codes from your name at ours, or bring your own hostname: we hand you the DNS records and manage the certificate. The printed URL carries your brand.
Every screen in the console is a documented endpoint underneath. Register products, pull print artwork and read scan stats from your own systems.
Your website tells you everything; your packaging has told you nothing. Point the barcode at Onpack and every scan reports in, with nothing to install and no tracking scripts on anyone's phone. Even when codes redirect to your own site, every scan is counted before the shopper lands. Webhooks push each one into your systems as it happens.
Each product keeps a live tally, pushed to your console the moment a code is scanned anywhere in the world.
A shopper's phone and a checkout or warehouse scanner are counted separately, so marketing and operations each read their own numbers.
A serial scanned in two countries at once is flagged as a likely fake instead of inflating your reach.
Enter a GTIN and get the QR code, its element string, and a check that it fits your label next to the linear barcode. No account, no watermark.
Your product
The number under your existing barcode. 8, 12, 13 or 14 digits.
Used to check both codes fit within the 50 mm dual marking distance.
One product or fifty thousand, the price is the same. No price per code, no enterprise plan, no seat count.
Your settings export as JSON and your codes are ordinary web addresses. Moving to a different resolver later is a DNS change, not a packaging reprint.
Your GTINs and company prefix stay licensed from GS1 exactly as they are today. Onpack only hosts what sits behind the number.
Download the code as an SVG with the correct quiet zone, get the human-readable line, and see the exact printed width in millimetres.
PUT/api/products/{gtin}Register the product and write the page its code opens.
GET/tools/labelDownload the print-ready artwork, quiet zone included.
GET/01/{gtin}The request every scan makes. Try it from your phone.