免费商品条码 API 横评:7个数据库实测对比

本文最后更新于 2026年8月23日 晚上

超市货架前,你拿出手机扫了一下商品包装上的条形码——屏幕跳出了商品名称、品牌、价格甚至配料表。这个体验很自然,但背后的问题不简单:这些数据从哪来?如果你是个开发者,想给自己的 App 加上扫码查询功能,有哪些免费 API 可以用?

我花了一个下午实测了互联网上能找到的 7 个免费商品条码查询 API,用真实的条码逐个请求,记录返回的字段、额度限制和响应质量。结果有些出乎意料。

先搞清楚:商品条码不是一种东西

我们日常说的”条形码”其实是好几种东西的统称:

  • EAN-13:13位数字,中国和欧洲通用,比如 6901234567892。前3位是国家/地区代码,690-699 开头的是中国。
  • UPC-A:12位数字,北美地区使用,比如 049000028904
  • ISBN:书的条码,13位(ISBN-13)或10位(ISBN-10),本质上是 EAN 的子集,978/979 开头。

大多数 API 接受 EAN 和 UPC,部分还支持 ISBN.了解这一点很重要——如果你查的是中国商品(690 开头),数据库里有没有收录中国前缀的条码,直接决定了它对你有没有用。

7 个 API 实测

1. Open Food Facts — 食品类最强免费方案

1
GET https://world.openfoodfacts.org/api/v2/product/3017620422003.json

用 Nutella(费列罗巧克力酱)的条码测试,返回了 365 个字段

除了商品名称和品牌,还有完整的营养成分、配料表、过敏原、添加剂、营养评分、碳足迹、包装材料信息。数据量令人震惊。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"status": 1,
"product": {
"product_name": "Nutella",
"brands": "Nutella, Ferrero, Yum yum",
"categories": "en:Confectionary based spreads, en:Petit-déjeuners",
"quantity": "400 g",
"image_url": "https://images.openfoodfacts.org/images/products/...",
"countries": "France,Belgium,...",
"allergens": "milk,soy,hazelnut",
"additives_n": 3,
"nutrition_grades": "c"
}
}

优点:完全免费,无需 API Key,没有速率限制,数据量极大,开源项目。

缺点:只覆盖食品饮料。我测试了3个中国前缀条码(690/692 开头),全部返回 404。数据众包模式意味着欧美商品覆盖率高,亚洲商品稀缺。

2. UPCitemdb — 通用商品的免费 trial

1
GET https://api.upcitemdb.com/prod/trial/lookup?upc=049000028904

用可口可乐的条码测试,返回了 18 个字段:商品名称、品牌、类目、颜色、尺寸、重量、描述、图片。

还有一个最实用的——商家报价链接(offers)和历史最低/最高价格。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"code": "OK",
"total": 1,
"items": [{
"title": "Coca-Cola Classic Soda Pop Fridge Pack 12 fl oz Cans 12 Pack",
"brand": "Coca-Cola",
"category": "Food, Beverages & Tobacco > Beverages > Soda",
"color": "Burgundy",
"lowest_recorded_price": 5.99,
"highest_recorded_price": 12.99,
"images": ["https://pics.walgreens.com/prodimg/416805/450.jpg"],
"offers": [/* 10个商家报价 */],
"asin": "B00812..."
}]
}

从响应头可以明确看到免费额度:

1
2
3
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 72
X-RateLimit-Reset: 1784768403

100 次/天,无需 API Key(trial 端点),覆盖通用商品不限品类。

缺点:100次/天对于生产环境不够用。付费版 $0.001/次起。

3. Google Books API — ISBN 查询图书

1
GET https://www.googleapis.com/books/v1/volumes?q=isbn:9787111421900

免费额度 1000 次/天,无需 Key.返回书名、作者、出版社、出版日期、分类、页数、语言、封面图等。

但有两个问题:一是只覆盖图书,不是通用商品条码;二是实测过程中频繁请求会触发 429 Too Many Requests,需要注意请求间隔。

4. Open Library — 另一个免费图书数据库

1
GET https://openlibrary.org/api/books?bibkeys=ISBN:9780132350884&format=json&jscmd=data

用《Clean Code》的 ISBN 测试,返回了书名、作者、出版社、出版日期、页数、主题分类、封面。完全免费,无需 Key,无速率限制。

字段比 Google Books 少一些(没有描述和语言字段),但作为备选数据库是合格的。

5. UPC Database — 需要注册的通用查询

1
GET https://api.upcdatabase.org/prod/v1/lookup?upc=3017620422003

需要免费注册获取 API Key.不带 Key 测试返回 "Your API Key is invalid"

注册后免费额度 100 次/天,覆盖通用商品。功能和 UPCitemdb 类似,但多了一个注册步骤。

6. GS1 GEPIR — 标准源头但不好用

GS1 是全球条码标准的制定组织,理论上应该拥有最权威的数据。但实测:

1
2
GET https://www.gs1.org/services/validated-registry/3017620422003
→ HTTP 403

不提供公开 API.中国 GS1(ancc.org.cn)返回 HTTP 530,也不可用。

GS1 只能查到条码注册公司信息,查不到商品详情(名称、图片、价格这些)。作为数据源头它很权威,但作为产品 API 它不合格。

7. DataKick — 已停止服务

1
2
GET https://www.datakick.org/api/items/3017620422003
→ HTTP 404

DataKick 曾经是一个社区驱动的产品数据库,现在已经停止服务。在网上搜索时还能找到一些文章推荐它,但实际已不可用。如果你看到有教程推荐 DataKick,请跳过。

横向对比

免费商品条码 API 实测对比

怎么选

查食品饮料Open Food Facts。无限免费,数据最丰富,欧美商品覆盖率极高。唯一的问题是中文食品收录太少。

查通用商品UPCitemdb。100次/天免费不需要 Key,返回字段实用(尤其价格区间和报价链接),通用品类全覆盖。

查图书Google Books(1000次/天)或 Open Library(无限)。两个互补使用效果更好。

中国商品 → 这是最尴尬的场景。GS1 中国不开放,Open Food Facts 对 690/692 前缀条码几乎没有收录,UPCitemdb 有一些但不完整。目前没有好的免费方案,可能需要考虑国内的商业条码服务或者自己建库。

关于中国商品条码的困境

这次测试最深的感受是:中国的商品条码数据生态几乎是空白的。

全球条码标准由 GS1 管理,中国 GS1(中国物品编码中心,ancc.org.cn)负责国内条码分配。但中国 GS1 的数据不对外开放查询——它的网站甚至返回 530 错误。

这意味着超过 1000 万个中国注册的商品条码(690-699 前缀)的详细信息,对于开发者来说几乎是黑箱。社区数据库(如 Open Food Facts)靠志愿者众包录入,中国商品覆盖率极低。

这不是技术问题,是数据开放问题。在欧美,开放数据运动推动了 Open Food Facts 等项目的繁荣;在中国,商品条码数据被视为商业资源,不轻易免费开放。

如果你确实需要查中国商品条码,目前可行的路径是:京东/淘宝的开放平台(需企业资质),或者第三方商业条码服务(按量计费)。免费的午餐,暂时还没有。

参考链接


免费商品条码 API 横评:7个数据库实测对比
https://normdist.com/2026/07/23/ND-20260723-002-free-barcode-api-comparison/
作者
小瑞
发布于
2026年7月23日
许可协议