Fill out what applies. If you just need a code for a link (not a physical product), only the destination field below is required.
Leave blank if this isn't a retail product — a link-only QR doesn't need one.
Where this code sends people — your product page, a link, whatever it needs to be.
How should this code work?
Static
Data is baked into the code at generation time. Works forever, nothing to manage.
UPGRADE
Live / linked
Code stays connected to this record — update price, recall status, or destination anytime.
Live codes check a real database on every scan, so you can update pricing, flag a recall, or redirect the destination without reprinting anything — and the same code can show different things to a cashier vs. a customer. This is a paid feature. See plans →
Your products
Generate a real code for any saved product or link.
Loading products...
2D — opens a webpage or carries data directly
1D — retail & logistics barcodes
Why price, weight, and recall URL aren't used here
A 1D barcode (the classic black-and-white stripes) can only hold the GTIN number itself — nothing else. There's no room for a price, a link, or any other data. When a cashier scans it, their register looks that number up in the store's own database, not yours — that's the store's own price, already on file there, completely separate from this app. This is a hardware limit of laser scanners, not a choice we made.
Why Destination URL still needs to be filled in: that field isn't encoded into the 1D barcode either — it's saved on the product record itself, and gets used if you ever also generate a QR or other 2D code for this same product later. A 2D code can carry a link, because phones and modern camera-scanners can browse the internet — a 1D laser scanner physically cannot.
Drag & drop an image, or click to choose a file
No image loaded yet — using a plain QR until one is added.
Now test it for real: scan this with your phone's camera. You should land on the destination URL — this is exactly what a shopper would see.