Shopping Offers by Barcode
Google Shopping no longer matches raw barcodes — pasting a GTIN/UPC/EAN into Shopping returns nothing. The/v1/google/shopping/offers endpoint bridges that gap: it resolves the barcode to a product via a Google web search, then returns that product’s Google Shopping seller offers — one entry per merchant source, each with its own price.
How It Works
- The barcode is validated (length + check digit). GTIN-8, UPC-A, EAN-13, and GTIN-14 are accepted.
- A Google web search resolves the barcode to a product (the matched product name is returned as
resolved_query/product_title). - A Google Shopping fetch for that product returns the per-merchant offers.
Query Parameters
Product barcode to look up. Accepts GTIN-8, UPC-A (12 digits), EAN-13, or GTIN-14. The check digit is validated — a malformed or checksum-failing barcode returns
422.Example: 0711719541028Country to run the search and Shopping fetch in, as an ISO-3166 alpha-2 code. Controls which merchants and currency you see.Examples:
us, au, gb, deLanguage code for the search and results.Examples:
en, de, frExample
gl to scope to a regional marketplace — for example, an Australian Woolworths grocery barcode:
Response Shape
| Field | Description |
|---|---|
barcode | The barcode you passed in, echoed back. |
resolved_query | The product query the barcode resolved to via Google web search. |
product_title | The matched product’s title. |
offers | List of per-merchant Shopping offers. |
offers[].title | The product title as listed by that merchant. |
offers[].source | The merchant / seller name (e.g. Walmart, Best Buy). |
offers[].price.value | Numeric price. |
offers[].price.currency | ISO currency code. |
offers[].price.extracted | The price as displayed, including symbol. |
offers[].link | Link to the merchant’s listing. |
offers[].rating | Product rating on that merchant, if shown. |
Pricing
Each call costs 14 credits — it runs two Google fetches (one web search to resolve the barcode, one Shopping fetch for the offers).Errors
| Status | Meaning |
|---|---|
422 | The barcode is malformed or fails its check-digit validation. |
404 | The barcode is valid but could not be resolved to a product (no Google web-search match). |

