Digital Link

Why isn't my GS1 Digital Link resolving? Causes and fixes

Paula Rivero

By Paula Rivero

Co-founder and CEO of Digital Link, focused on GS1 standards and EU packaging compliance.

A product pouch with a QR code at the centre, flanked by a checkout scanner icon counting sales and a phone icon counting scans

Key facts

  • A GS1 Digital Link resolves when a phone's scan reaches a resolver that recognises the identifiers in the URL and redirects to a live page. When it fails, the cause is almost always in one of four places: the printed code, the URL syntax, the domain, or the resolver's entry for that product.
  • A checkout reads the product identity from the code itself, without the internet. So a code can ring up at the till and still fail on phones: that points at the domain or the resolver, never at the GTIN.
  • Start by decoding the code to read its exact URL, without opening it. Most problems are visible in that one line.
  • On Digital Link Connexum, the platform behind this site, a custom subdomain needs a CNAME record pointing to whitelabel.digitallink.ai plus a final step with support, and GTINs are validated when each link is created.

"Not resolving" covers several different failures, and each has a different fix. The table below maps what you see to its likely cause. The six steps after it find the cause in a few minutes, in order from the cheapest check to the most involved.

Symptom, cause and fix

What you seeLikely causeFix
The phone camera doesn't react to the code at allA scanning problem, not a resolving one: size, quiet zone, contrast or print damageCheck the print against the legibility guide
"Server not found" or a DNS errorThe domain or subdomain in the URL isn't set up, or its DNS record is wrongFix the DNS record (step 3) and allow time for it to propagate
A security or certificate warningNo HTTPS certificate has been issued yet for the custom domainFinish the domain setup with your resolver provider
A "not found" page from the resolverThe resolver has no entry for that GTIN, or the GTIN in the URL has a typoAdd the product on the resolver, or correct the code (step 4)
Some items open, others from the same product don'tThe code carries a batch or serial number with no entry, and no fallback to the product levelAdd the batch entries, or set a default destination at GTIN level
It opens, but the wrong pageThe default destination is out of date, or the code was printed from an earlier draftDecode the code (step 1) and update the destination
It opens in the wrong languageNo language versions are set on the resolverAdd the language versions of the destination
It rings up at the checkout but fails on phonesThe identity in the code is fine; the web side (domain or resolver) is brokenGo straight to steps 3 and 4
It works on phones but the checkout won't read itThe checkout isn't 2D-ready, or isn't set to parse GS1 Digital LinkTalk to the retailer, and keep the linear barcode meanwhile (see the dual barcode guide)
  1. Decode the code and copy its URL. Use a scanner app that shows the content of the code instead of opening it, or the preview your phone's camera displays. Compare it character by character with the link you meant to print: a code printed from an old file is one of the most common causes.
  2. Check the URL syntax. The address must start with https://, then your domain, then /01/ and the GTIN in its 14-digit form, with shorter GTINs padded with leading zeros and a valid check digit. Qualifiers come in a fixed order, /10/ (batch or lot) before /21/ (serial number), and attributes such as the expiry date, 17, go in the query string after ?, not in the path. The technology guide has the full rules.
  3. Open the domain in a desktop browser. Paste the URL. If the browser can't find the server or shows a certificate warning, the problem is the domain: for a custom subdomain, check that its DNS record exists and points where your provider says, and that the setup has been completed.
  4. Check the resolver's entry. Look up the GTIN on your resolver. It needs an active entry with a default destination. If the code carries a batch or a serial number, that level needs an entry too, or the resolver needs to fall back to the product level. The resolver guide explains how that routing works.
  5. Check the destination page. If the redirect works but the page fails, the problem is the page itself: a deleted page, an expired campaign, or a page behind a login.
  6. Scan from the pack, on several devices. Once the URL opens in a browser, scan the printed code on two or three phones and, if you can, a 2D checkout scanner. If phones still don't react, it's a print problem, not a resolving one.

A few causes are specific to how the platform is set up:

  • Custom subdomain. Codes on your own subdomain, such as qr.yourbrand.com, need a CNAME record pointing to whitelabel.digitallink.ai. The root domain (yourbrand.com) and www can't be used. After adding the record, contact support to finish the setup, including the certificate. The help center article has the exact steps.
  • GTIN errors. The platform validates each GTIN when a link is created, so an invalid number is caught before printing. If a printed code carries a GTIN the platform never accepted, the code was generated somewhere else.
  • Destinations. Every link is dynamic: you can change the destination, add language versions or set a recall page without reprinting.

If none of the steps finds the cause, write to support@digital-link.com with the decoded URL and a photo of the printed code.

Frequently asked questions

Because the checkout reads the GTIN straight from the code, without the internet, while a phone has to reach your domain and your resolver. If the till works and phones don't, the code is fine and the problem is on the web side: the domain, its certificate, or the resolver's entry.

Usually because the default destination on the resolver is out of date, or because the printed code carries a different URL from the one you are editing. Decode the code to see its exact URL, then update the destination for that GTIN.

Use the 14-digit form. A GTIN-8, GTIN-12 or GTIN-13 is padded with leading zeros to 14 digits in the URL, and the last digit must be a valid check digit.

Yes, as long as the URL in the code is correct: the domain, the resolver entry and the destination can all be fixed after printing. Reprinting is only needed when the code itself carries a wrong domain, a wrong GTIN or a broken syntax.

Because the code carries a batch or serial number that the resolver has no entry for, and it isn't set to fall back to the product level. Add the batch entries, or set a default destination at GTIN level.

Be a leader in the transition from barcodes to GS1 QR codes