GS1 Conformant Resolver

Resolves GS1 Digital Link URIs to product information, masterdata, EPCIS endpoints, and twelve more standard link types.

2 min read

The Resolver is the platform's front door. A consumer scans a Digital Link QR on a product; the resolver returns the right URL for the right purpose — the product page for a shopper, the EPCIS event history for a recycler or auditor, the recall status for a market-surveillance officer, the certification dossier for a regulator. Same URL, different audiences, different answers. That's the contract.

OpenEPCIS implements the GS1 Conformant Resolver standard end-to-end. That means the deployment is self-describing: it publishes a discovery document at the spec-mandated path so the GS1 Global Office resolver and partner registries can find it and read what it offers without being hand-configured — the URL is /.well-known/gs1resolver.

Save a product to the resolver and a dozen standard GS1 link types are derived from its masterdata fields with no extra POST: gs1:pip, gs1:productImage, gs1:audioFile, gs1:relatedVideo, gs1:safetyInfo, gs1:certificationInfo, gs1:nutritionalInfo, gs1:instructions, gs1:recallStatus, gs1:serviceInfo, gs1:productSustainabilityInfo. The bulk endpoint handles tens of thousands of products in a single multipart CSV or JSON-LD call for first-time onboarding.

The resolver is the discovery surface for everything else on the platform. A scanned identifier resolves here, and from here it points at the masterdata record and the EPCIS endpoint that own the rest of the story. Without it, the Web Vocabulary masterdata isn't reachable by URI and EPCIS events can't be tied back to a product or place.

What's open source under the Resolver group are libraries: URN ↔ Digital Link translation, barcode rendering, identifier validation. The full multi-tenant, Keycloak-secured, conformance-discoverable, auto-populating resolver service ships in the Business edition.

Capabilities by edition

CapabilityOSSBusiness
GS1 Conformant Resolver service
Self-describing deployment (GS1 Conformant Resolver standard)
Auto-derived linksets (a dozen GS1 link types)
Bulk CSV / JSON-LD import
Tenant-scoped masterdata cache
Linkset change audit
EPC URN ↔ Digital Link translation (library)
QR / Data Matrix / GS1-128 barcode generation (library)

REST surface

MethodPathAuthWhat it does
GET/.well-known/gs1resolvernoneResolver discovery document
GET/{primary-key}/{value} (e.g. /01/04012345999990)none / cap-tokenResolve a GS1 identifier → linkset
GET/{pk}/{value}/{qual}/{qv}none / cap-tokenResolve a qualified identifier (e.g. /01/<gtin>/21/<serial>)
POST/organizations/{gln}OIDC / API-keyCreate / update organisation masterdata
POST/products/{gtin}OIDC / API-keyCreate / update product masterdata (auto-derives linksets)
POST/places/{location-id}OIDC / API-keyCreate / update place masterdata
POST/bulk/productsOIDC / API-keyBulk CSV / JSON-LD import

See also

Last updated: