Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

5 Commits

Repository files navigation

@retailerapi/identifier

Zero-dependency detector for product identifiers. Recognizes UPC-12, EAN-13, ISBN-10, ISBN-13, GTIN-14, Amazon ASIN, and Walmart item_id from a raw string. Returns the type plus a normalized form, so your code can dispatch to the right lookup API.

npm i @retailerapi/identifier
import{detectIdentifier}from'@retailerapi/identifier';detectIdentifier('194629116676');// { type: 'upc', normalized: '194629116676' }detectIdentifier('978-0-553-21311-9');// { type: 'isbn', normalized: '9780553213119' }detectIdentifier('B07ABCDEFG');// { type: 'asin', normalized: 'B07ABCDEFG' }detectIdentifier('19667262713');// { type: 'item_id', normalized: '19667262713' }

API

typeIdentifierType='upc'|'ean'|'isbn'|'gtin'|'item_id'|'asin';interfaceDetectedIdentifier{type: IdentifierType;normalized: string;}detectIdentifier(raw: string): DetectedIdentifier|null;identifierType(raw: string): IdentifierType|null;// shortcutisIdentifier(raw: string): boolean;// shortcut

Detection rules

LengthPrefixDetected as
10 chars, last is digit or Xisbn (ISBN-10)
13 digits978 or 979isbn (ISBN-13)
13 digitsanything elseean
14 digitsstarts with 0strips the zero, detects again
14 digitsnon-zerogtin
12 digitsupc
B0 + 8 alphanumericasin
6-11 or 12+ digitsitem_id (opaque retailer SKU)

Inputs are stripped of whitespace, hyphens, and underscores before matching.

What it does NOT do

  • Verify check digits. Real-world catalogs routinely surface off-by-one rows; an over-strict validator filters real data. If you need check-digit math, use a dedicated library.
  • Normalize across forms (e.g. UPC-12 → EAN-13 by prefixing 0). That's a downstream concern.

Related

  • @retailerapi/mcp — MCP server giving Claude/Cursor product-data tools backed by retailerapi.
  • retailerapi.com — Unified product API: Walmart, Amazon, eBay, Lowe's, Target, Best Buy, Home Depot. Free tier 1,000 lookups/mo.

License

MIT

About

Zero-dep detector for product identifiers — UPC-12, EAN-13, ISBN-10/13, GTIN-14, Amazon ASIN, retailer item_id. ~50 LoC, no runtime deps. Used by retailerapi.com.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages