REST + MCP · 5 barcode formats

Barcode API — One Endpoint, Five Formats, Six Retailers

REST API for UPC-A, EAN-13, GTIN-14, ISBN-10, and ISBN-13 lookups. Single endpoint, auto-detected format, response in under 2 seconds. 1,000 free calls per month.

Try:

880 monthly Google searches for "barcode api" with $12.14 average CPC — high commercial intent.

One endpoint, five barcode formats

Retail catalogs mix 5 barcode formats. UPC-A is dominant in US grocery. EAN-13 dominates Europe and increasingly US imports. GTIN-14 covers multi-pack and supply-chain SKUs. ISBN-10 lingers on legacy book stock. ISBN-13 ships on every new book post-2007. A useful barcode API has to handle all 5 without making the caller pre-classify them.

retailerapi auto-detects format by length and checksum. The same GET /v1/products/{id} accepts a 12-digit UPC, a 13-digit EAN, a 13-digit ISBN, or a 14-digit GTIN. Internally we normalize to GTIN-14 (zero-padded), then query the Walmart catalog, then fan out to 5 cross-retailer scrapers in parallel. The whole pipeline averages 2.1 seconds for a fresh enrichment and 1.6 seconds when cached.

Auth is a single Bearer token. Rate limit starts at 5 requests per minute on Free, climbs to 1,000 req/min on the Scale tier. The 6 retailer fan-out runs in parallel, so cross-retailer enrichment does not multiply your request count.

cURL

# Same endpoint accepts UPC, EAN, GTIN, ISBN
curl https://api.retailerapi.com/v1/products/9780747532743 \
  -H "Authorization: Bearer rk_live_..."

Bulk lookup

curl https://api.retailerapi.com/v1/products/bulk \
  -H "Authorization: Bearer rk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"identifiers": ["19667262713", "9780747532743", "21000615261"]}'

What people build with it

  • Inventory apps. Scan a barcode at the warehouse, see current retailer prices in 2 seconds.
  • Repricer feeds. Watch 6 retailers for every SKU on your shelf.
  • Comparison shopping sites. 6-retailer price grid populated from 1 API call.
  • AI shopping agents. MCP server drops into Claude or ChatGPT for in-conversation barcode lookups.

Frequently asked questions

What barcode formats does the API support?

UPC-A (12 digits), UPC-E (8 digits, auto-expanded), EAN-13 (13 digits), GTIN-14 (14 digits, used in supply-chain catalogs), ISBN-10, and ISBN-13. Walmart item_id (11 to 12 digits) is also supported as a fallback. Auto-detection routes the request based on length and checksum.

Why use a barcode API instead of scraping retailers?

A scrape costs roughly 0.5 to 5 cents per page depending on the retailer and bot defenses. A retailerapi call costs about 0.06 cents (1 token at the Starter tier of $49 / 864,000 tokens). At a 100,000-call month, scraping costs $500 to $5,000. Our Starter plan runs $49 and includes cross-retailer enrichment that scraping does not return.

Does the barcode API support bulk lookups?

Yes. POST /v1/products/bulk takes up to 1,000 identifiers per call. Each lookup still costs 1 token, but the round-trip cost is shared across the batch. Pro tier and above expose the async bulk endpoint at /v1/products/bulk/async which accepts up to 100,000 identifiers and returns a job_id for polling.

Can I use the barcode API from a mobile app?

Yes. The API is CORS-enabled for any origin (default policy) or restrictable to your domain via the dashboard. Scanner-equipped mobile apps typically wire the camera barcode reader to the /v1/products/{id} endpoint directly. iOS Vision and Android ML Kit barcode SDKs return the same 12 to 14 digit codes the API accepts.

Is there an MCP server for AI agents?

Yes. The @retailerapi/mcp package on npm wraps the same endpoints as MCP tools (lookup_product, get_price_history, get_seller). Drop it into Claude Desktop or Cursor and the AI agent can call the barcode API natively in conversation.