Register for access to the Verified by GS1 API at gs1.org/services/verified-by-gs1; individual lookups are available publicly at the web interface, while batch API access requires an account with GS1.
Make a GET request to the Verified by GS1 API endpoint with the GTIN as a query parameter — the endpoint resolves the GS1 Company Prefix to verify that the brand owner has a valid GS1 license.
Inspect the response fields: 'verified' (boolean), 'licenseeName' (brand owner), 'licenseeGLN', and 'gs1CompanyPrefix' — a 'verified: false' with 'error: GTIN_NOT_FOUND' means the GS1 Company Prefix is not registered.
Separately validate the GTIN check digit locally using the standard GS1 check digit algorithm (alternating multiply-by-3 and multiply-by-1 on digits, then mod-10 complement) — this can be done without an API call.
For bulk validation, use the GS1 US Data Hub API (requires a GS1 US membership) or GS1 UK's GTIN Check API to submit lists of GTINs and retrieve structured validation reports.
Store the verification result alongside the GTIN in your PIM — also record the verification timestamp because GS1 licenses can lapse, and re-verify periodically (e.g., at catalog ingestion time).
Known gotchas
A GTIN that passes check digit validation is not necessarily GS1-verified — a structurally valid GTIN can still reference an unregistered or lapsed GS1 company prefix; always verify with the GS1 registry before listing on marketplaces that require brand verification.
GTINs from different countries use different formats (GTIN-8, GTIN-12/UPC-A, GTIN-13/EAN-13, GTIN-14) — always zero-pad to 14 digits before calling the API; Verified by GS1 accepts 14-digit GTINs.
Retailers and marketplaces (Amazon, Google, eBay) cross-check GTINs against the GS1 registry independently — having your own verification step before submission reduces suppressed listings caused by GTIN mismatches.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp