De fleste forklaringer om QR-koder til digitale produktpas stopper ved "scan koden, åbn en webside." Det går glip af den interessante del. QR-koden på et compliant produkt indkoder et GS1 Digital Link, og den komponent, der gør den nyttig, er resolveren — tjenesten, der forvandler én produktidentifikator til mange forskellige, kontekstbevidste svar.
Denne artikel viser, hvad resolveren faktisk gør, med et live-pas du kan kalde lige nu (ingen tilmelding, ingen nøgle).
Hvad et GS1 Digital Link i virkeligheden er
Et GS1 Digital Link er en almindelig HTTPS-URL, der indlejrer GS1-identifikatorer som path-segmenter, hver tagget med en Application Identifier (AI):
https://id.gs1.org/01/04019999999902/21/DEMO-BAT-01
└─01─┘ └──GTIN───┘ └21┘ └─serial─┘
01→ GTIN (Global Trade Item Number) — hvilket produkt21→ serienummer — hvilken individuel enhed10→ batch/lot (alternativ til serienummer)
Fordi det er en almindelig URL, åbner ethvert telefonkamera den. Fordi den er struktureret, kan maskiner parse den. Den dobbelte natur er hele pointen.
Resolveren: én URI, mange svar
En dum QR-kode returnerer én fast side. En resolver inspicerer forespørgslen og returnerer den repræsentation, der passer til den, der kalder:
- en forbruger med en telefonbrowser får en menneskelæsbar HTML-side;
- et genbrugsanlægs system beder om JSON-LD og får maskinlæsbare strukturerede data;
- en myndighed kan anmode om det fulde linkset — hvert typet link, produktet eksponerer.
Samme URL, forskellige svar, afgjort af Accept-headeren (eller en ?format=-override).
En live-resolver du kan kalde lige nu
qr3.app hoster et offentligt demo-batteripas. Åbn det i en browser:
Du vil se forbrugersiden for EcoMax 5000 (Demo) fra GreenPower GmbH. Bed nu den samme URL om maskinlæsbar JSON-LD:
curl "https://qr3.app/dpp/04019999999902/DEMO-BAT-01?format=jsonld"
{
"@context": ["https://schema.org", "https://gs1.org/voc/"],
"@type": "Product",
"gtin": "04019999999902",
"name": "EcoMax 5000 (Demo)"
}
Det er resolveren, der gør sit arbejde: én identifikator, en menneskelig side og et JSON-LD-dokument bygget på schema.org + GS1's web-vokabular. Andre repræsentationer er tilgængelige på samme måde — ?format=json (rå pas), ?format=linkset (alle typede links), ?format=dcat-ap — eller via standard Accept-forhandling (Accept: application/ld+json).
Validér identifikatorer, før du udsteder links
En resolver er kun så troværdig som de identifikatorer, der ligger bag den. Validér en GTIN, før du bygger et Digital Link til den:
import { QR3 } from "@qr3/sdk";
const client = new QR3({ apiKey: process.env.QR3_API_KEY! });
const result = await client.gs1.validateGs1({
identifier_type: "gtin",
value: "04019999999902",
});
console.log(result.valid); // true
console.log(result.detail); // "Valid GTIN-14"
Registrér dine GTIN'er
Hold de identifikatorer, du bruger, under styring, så hvert Digital Link kan spores tilbage til et kendt produkt:
const gtin = await client.gs1.createGs1Identifier({
identifier_type: "gtin", // or "gln" | "company_prefix"
value: "04019999999902",
label: "EcoMax 5000",
});
Brug qr3 som din resolver
Du behøver ikke selv at bygge og drive en resolver. Peg din produkt-QR-kode mod Digital Link'et, host passet på qr3.app, og resolveren leverer den rigtige repræsentation per forespørgsel. GTIN/serienummer i URL'en forbliver stabile for evigt (så trykte etiketter aldrig brydes), mens dataene bag dem forbliver opdaterbare.
FAQ
Er selve QR-koden anderledes end en almindelig? Nej — det er en standard QR (eller Data Matrix), der bærer en GS1 Digital Link-URL. Ethvert kamera åbner den; intelligensen ligger i resolveren, ikke i symbolet.
Får forbrugere og genbrugsanlæg virkelig forskelligt indhold?
Ja — det er content negotiation. Browseren får HTML; et system, der anmoder om application/ld+json (eller ?format=jsonld), får strukturerede data fra den samme URL.
Kan jeg beholde min egen produktside og stadig være compliant?
Ja. Digital Link'et kan eksponere flere typede links (et linkset) — din marketingside, det officielle pas, et genbrugsdatablad — hver tagget med en linktype.
Kilder
Prøv live-passet ovenfor, og kom gratis i gang og resolv dit eget.