FeedMender/Errors/Restricted GTIN
Common rejections
Unsupported value: reserved or restricted [gtin]
This is the identifier rejection that looks most like a Google mistake, because the barcode is genuinely valid. It is just not valid for worldwide commerce: certain prefix ranges are reserved for use inside a single shop.
What Google requires
A barcode from the globally issued ranges
GS1 reserves parts of the numbering space. Barcodes beginning with 2, 02 or 04 (read off the zero-padded 13-digit form) are for in-store and variable-measure use, the scale label on cheese, a shop's internal SKU barcodes, and coupon ranges are for coupons. None of them identify a product globally, so Google refuses them even though the check digit is correct.
What happens if you do not
A refusal that survives every re-check you do
The merchant verifies the barcode, finds it scans fine at the till, resubmits it, and it is refused again, because the till and Google are answering different questions. The till asks whether the barcode is well formed; Google asks whether it identifies this product to the rest of the world. In-store codes usually enter a feed through a POS system that generated them, which means the same fault repeats across a whole section of the catalogue.
How to fix it by hand
Find the real GTIN, or declare there is none
- Check the prefix on the zero-padded form before concluding anything: a 12-digit UPC-A starting
98normalises to098, which is legitimate. Not everything that starts with a suspicious digit is restricted. - For branded goods, the manufacturer issued a real GTIN; it is on the packaging or in the supplier data. The in-store code in your feed is a stand-in that has to be replaced.
- For own products that only ever had an internal code, treat them as barcode-less: brand plus MPN, or
identifier_exists: no.
Which of our checks apply
Two checks apply, read from the scanner's registry
The prefix logic reads the zero-padded 13-digit form, so legitimate barcodes that merely look suspicious are not flagged. This distinction is the part almost no other tool makes.
gtin_invalidblocksgtin_suspectat risk
The quicker way
Let the scan find them
The free scan reads every barcode's prefix the way GS1 defines it and names the products carrying in-store or coupon ranges, before Google refuses them. The scan to identify errors is free and shows every finding before you pay anything. You only pay for the fix.