尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
条形码查询接口整理与使用教程
条形码查询接口整理与使用教程说明本文基于公开文档/文章整理未对每个接口做真实请求实测接口可用性以公开文档为准集成前请自行验证。写在前面在电商建档、零售收银、仓储分拣、药品溯源等场景中扫一下条码就能自动带出商品名称、品牌、规格、厂家是一个非常基础但高频的需求。市面上提供条码查询能力的接口服务不少有的完全免费、有的按次计费、有的返回字段丰富到带图片和 GPC 分类、有的只给基础信息。本文整理了市面上能找到的几类条码查询接口把请求地址、参数、返回示例和注意事项列在一起方便你按自己的成本、精度和合规需求选型。需要提前说明的是部分免费接口可能已停止服务或返回占位数据免费额度和限流规则也可能随时调整集成前请自行发请求验证。1. 接口总览接口请求地址说明HTTPS编码需要Key来源类型条码查询通用https://route.showapi.com/66-22商品条码查询返回名称、厂家、规格、价格、图片等是UTF-8是appKey商业聚合平台药品条码查询https://route.showapi.com/66-24药品/保健条码查询返回批准文号、成分、用法用量等是UTF-8是appKey商业聚合平台山海云端条码查询https://api.yyy001.com/api/barcode免费条码查询返回名称、价格、品牌、供应商是UTF-8是apikey免费API服务RollTools 条码详情https://www.mxnzp.com/api/barcode/goods/details免费条码查询返回商品基础信息是UTF-8是app_idapp_secret免费API服务极数本源条码查询https://v1.apizero.cn/api/barcode-lookup免费版条码查询返回名称、品牌、厂商、规格、参考价是UTF-8可选Bearer Token免费API服务2. 商业聚合平台条码查询接口2.1 通用商品条码查询传入国内或进口商品条形码返回商品名称、厂商、规格、参考价格、商标、图片、GPC 分类、原产地等结构化信息。请求地址https://route.showapi.com/66-22请求方式POSTapplication/x-www-form-urlencoded请求参数参数名类型必填说明codeString是条形码国内及进口商品、8位商品短码、UPC-A、UPC-EappKeyString是控制台获取的调用凭证请求示例Pythonimport requests url https://route.showapi.com/66-22 data { code: 6902538005141, appKey: 你的appKey } resp requests.post(url, datadata, timeout10) print(resp.json())返回字段说明字段说明goodsName商品名称manuName厂商spec规格price参考价格单位元trademark商标/品牌名称img图片地址goodsType商品分类ycg原产地manuAddress厂商地址gpc / gpcTypeGPC 分类代码 / 名称qs生产许可证号imgList图片列表sptmImg条码图片ret_code返回代码0 为成功注意事项图片 URL 有效期有限通常 1~24 小时建议及时下载到本地存储。需自备 appKey本文按官方文档整理接入写法未返回真实业务数据。返回统一包裹在showapi_res_body中外层还有showapi_res_code、showapi_res_error等状态字段。2.2 药品条码查询针对药品/保健品类的专用接入点额外返回医药监管相关字段。请求地址https://route.showapi.com/66-24请求方式POSTapplication/x-www-form-urlencoded请求参数参数名类型必填说明codeString是国内药品条形码69开头appKeyString是控制台获取的调用凭证药品接入点额外返回字段字段说明approval批准文号basis主要成分purpose功能主治/适用范围dosage用法用量taboo禁忌consideration注意事项character性状storage贮藏补充说明validity有效期type1OTC2非药品注意事项不同药品的分类或属性可能不一致参数表所列并非全部字段。自 2023 年 9 月起图片 URL 仅保留 24 小时建议及时下载。3. 免费条码查询接口一山海云端API请求地址https://api.yyy001.com/api/barcode请求方式GET请求参数参数名类型必填说明apikeyString是开通的 API 密钥barcodeString是商品条形码8-13 位有效数字请求示例https://api.yyy001.com/api/barcode?apikey你的apikeybarcode6902538005141返回示例{ code: 1, msg: 数据返回成功, data: { goodsName: 脉动维生素饮料水蜜桃口味600ml, barcode: 6902538005141, price: 3.80, brand: 达能, supplier: 达能(中国)食品饮料有限公司, standard: 600ml }, tips: 山海云端API:yyy001.com }注意事项公开文档声称完全免费、无限次调用但实际可用性和稳定性需自行验证。返回字段较少不含图片、厂家地址、分类等扩展信息。需注册获取 apikey。4. 免费条码查询接口二RollToolsApiRollToolsApi 是一个通用免费 API 系列条码模块包含生成条形码和根据条码查商品信息两个接口。4.1 根据条码查询商品信息请求地址https://www.mxnzp.com/api/barcode/goods/details请求方式GET请求参数参数名类型必填说明barcodeString是商品条形码app_idString是申请的应用 IDapp_secretString是申请的应用密钥请求示例https://www.mxnzp.com/api/barcode/goods/details?barcode6902538005141app_id你的app_idapp_secret你的app_secret返回示例{ code: 1, msg: 数据返回成功, data: { goodsName: 脉动维生素饮料水蜜桃口味600ml, barcode: 6902538005141, price: 3.80, brand: 达能, supplier: 达能(中国)食品饮料有限公司, standard: 600ml } }4.2 生成条形码扩展能力除了查询该服务还提供条形码生成接口请求地址https://www.mxnzp.com/api/barcode/create请求参数content内容、width、height、type、app_id、app_secret注意事项普通会员每日有调用次数限制需去官网申请专属秘钥。返回字段与山海云端 API 结构相似均为 goodsName / price / brand / supplier / standard 这一套。社区反馈部分冷门商品查不到覆盖率需自行评估。5. 免费条码查询接口三极数本源请求地址https://v1.apizero.cn/api/barcode-lookup请求方式GET鉴权方式Authorization: Bearer API Key也兼容 X-API-Key 头或 api_key 查询参数请求参数参数名类型必填说明barcodeString是8~13 位纯数字条形码支持 EAN-13、UPC-A、EAN-8、UPC-E请求示例cURLcurl -sS -H Authorization: Bearer YOUR_API_KEY \ https://v1.apizero.cn/api/barcode-lookup?barcode6921168509256返回示例{ code: 0, msg: 成功, data: { barcode: 6921168509256, found: true, name: 农夫山泉 饮用天然水550ml, brand: 农夫山泉, manufacturer: 农夫山泉股份有限公司, spec: 550ml, price: 1.5, category: null, description: null }, request_id: mqx8x12345abc, tips: 极数本源 · https://apizero.cn }调用限制按公开文档模式每日额度QPS匿名无 Key20 次2登录认证用户200 次2付费会员数万~百万次10~120注意事项code0仅代表接口请求成功不代表查到了商品真正要判断data.foundfoundfalse时其余商品字段均为 null。price为静态归档参考价不能用于收银结算或实时比价。免费版不返回商品图片需要图片请用会员版/api/barcode-gs1。匿名调用每日仅 20 次仅适合本地调试不要直接暴露给前端生产环境。横向对比维度商业聚合平台山海云端APIRollToolsApi极数本源是否需要 Key是appKey是apikey是app_idsecret可选匿名有额度请求方式POST 表单GETGETGET返回格式JSONshowapi_res_body 包裹JSONdata 包裹JSONdata 包裹JSONdata 包裹HTTPS是是是是返回字段丰富度高含图片、GPC、尺寸、药品专属字段低仅6个字段低仅6个字段中含 found 判断、分类图片返回是否否否免费版药品专属查询有独立接入点无无无免费额度无按量计费声称完全免费有每日限额匿名20次/天适合场景生产环境、企业 ERP、药品追溯个人练手、轻量项目个人练手、小程序原型个人项目、低并发工具各有取舍没有全能最优按你自己的成本与精度需求选。生产环境参考实现多源降级下面是一个多源降级的 Python 参考实现。所有源作为对等节点按顺序尝试某一源失败则切换下一源。各源的优先级排序交由调用方根据自己的业务场景决定。import requests from typing import Optional, Dict class BarcodeQueryClient: 条码查询多源降级客户端 def __init__(self): # 各源配置生产环境建议从环境变量或配置中心读取 self.sources [ { name: showapi_goods, url: https://route.showapi.com/66-22, type: post, key_param: appKey, key_value: , # 填入你的 appKey }, { name: apizero, url: https://v1.apizero.cn/api/barcode-lookup, type: get, key_header: Authorization, key_value: , # 填入你的 Bearer Token或留空用匿名额度 }, { name: yyy001, url: https://api.yyy001.com/api/barcode, type: get, key_param: apikey, key_value: , # 填入你的 apikey }, ] def _query_showapi(self, source: dict, code: str) - Optional[Dict]: resp requests.post( source[url], data{code: code, source[key_param]: source[key_value]}, timeout10 ) data resp.json() body data.get(showapi_res_body, {}) if body.get(ret_code) 0 or body.get(ret_code) 0: return { source: source[name], goods_name: body.get(goodsName), brand: body.get(trademark), spec: body.get(spec), price: body.get(price), manufacturer: body.get(manuName), raw: body, } return None def _query_apizero(self, source: dict, code: str) - Optional[Dict]: headers {} if source[key_value]: headers[Authorization] fBearer {source[key_value]} resp requests.get( source[url], params{barcode: code}, headersheaders, timeout10 ) data resp.json() if data.get(code) 0 and data.get(data, {}).get(found): d data[data] return { source: source[name], goods_name: d.get(name), brand: d.get(brand), spec: d.get(spec), price: d.get(price), manufacturer: d.get(manufacturer), raw: d, } return None def _query_yyy001(self, source: dict, code: str) - Optional[Dict]: resp requests.get( source[url], params{barcode: code, source[key_param]: source[key_value]}, timeout10 ) data resp.json() if data.get(code) 1 and data.get(data): d data[data] return { source: source[name], goods_name: d.get(goodsName), brand: d.get(brand), spec: d.get(standard), price: d.get(price), manufacturer: d.get(supplier), raw: d, } return None def query(self, code: str) - Optional[Dict]: 按顺序尝试所有源返回第一个成功的结果 handlers { showapi_goods: self._query_showapi, apizero: self._query_apizero, yyy001: self._query_yyy001, } for source in self.sources: try: handler handlers.get(source[name]) if not handler: continue result handler(source, code) if result and result.get(goods_name): return result except Exception as e: print(f[WARN] Source {source[name]} failed: {e}) continue return None # 使用示例 if __name__ __main__: client BarcodeQueryClient() result client.query(6902538005141) if result: print(f来源: {result[source]}) print(f商品名称: {result[goods_name]}) print(f品牌: {result[brand]}) print(f规格: {result[spec]}) print(f参考价: {result[price]}) else: print(所有源均未查到该条码)踩坑清单免费接口别直接上生产匿名免费额度通常只有每日 20 次且 QPS 限制严格一般 2 QPS直接暴露给前端很容易被刷爆。免费接口仅适合调试和个人项目。图片 URL 有时效多数接口返回的商品图片链接是临时 CDN 地址有效期从 1 小时到 24 小时不等。生产环境一定要下载到自己的 OSS / 图床不能直接热链。code0≠ 查到商品部分接口如极数本源用code表示请求是否成功是否真正查到商品要看data.found字段。不注意这一点会把查无此码误判成商品名为空。参考价不是实时价接口返回的price是历史归档参考价不是电商实时售价。用来做商品展示没问题用来做收银计价或比价就会出问题。冷门商品覆盖率不一主流快消品饮料、零食、日化覆盖率高但母婴、进口、新品、地方特产类 SKU 经常查不到。接入前先用你的目标品类条码做一轮覆盖率测试。条码格式校验要前置传入带横线、空格、字母的非法条码会直接报错。前端和后端都要加正则校验^\d{8,13}$减少无效请求浪费额度。药品和普通商品要分开查药品有独立接入点普通商品条码接口查药品可能返回不全或错误。有药品业务的要走专用接入点。限流触发后别死循环重试批量导入条码时一定要加延时至少 500ms 以上触发 429 限流后要退避重试不要狂打。附录补充说明网上还流传着不少同类条码查询服务如聚合数据、六派数据、中国银联开放平台等但大多需要自备 Key、或公开文档不完整本文未展开收录。中国物品编码中心ancc.org.cn是官方条码管理机构但其查询页面主要面向企业用户自助查询不提供开放 API。自建条码数据库成本极高千万级 SKU 持续更新个人开发者和小团队不建议自建。本文所有接口信息均来自公开文档和技术博客整理集成前请自测验证可用性。常见问题 FAQ问条形码查询接口一般支持哪些条码格式答主流接口都支持 EAN-1313位国内 69 开头商品最常见、EAN-88位短码、UPC-A 和 UPC-E北美商品。部分接口还支持 069 开头的 14 位国内商品码。问有没有完全免费、不用注册的条码查询 API答极数本源提供匿名每日 20 次的免费额度不用注册也能调试但额度很低只适合本地测试。生产环境建议注册拿 API Key 提升到每日 200 次。问条码查询接口返回的价格是实时的吗答不是。所有接口返回的价格都是历史归档参考价用于商品展示和建档参考不能用于收银结算或实时比价。实时价格需要对接电商平台或扫码比价类服务。问药品条码和普通商品条码是同一个接口吗答不是。药品有独立的专用接入点除了基础商品信息外还会返回批准文号、主要成分、用法用量、禁忌、注意事项等医药专属字段。普通商品接口查药品字段不全。问接口返回的商品图片可以直接在前端用吗答不建议直接热链。图片 URL 是临时 CDN 地址有效期通常 1~24 小时过期就打不开了。生产环境要下载到自己的图床或 OSS。问免费接口的每日调用额度一般是多少答匿名免费额度通常在每日 20 次左右注册认证后提升到每日 200 次QPS 限制一般在 2 左右。付费会员可以提升到数万到百万次每天。问为什么有些商品条码查不到信息答可能的原因有几个该 SKU 太新还没收录、属于冷门品类如母婴、进口、地方特产、条码格式不对、或者该接口的数据库覆盖范围有限。主流快消品覆盖率通常在 90% 以上。问条码查询接口是 GET 请求还是 POST 请求答不同接口不一样。免费类接口如极数本源、RollTools、山海云端大多是 GET 请求调用简单商业聚合平台如 ShowAPI常用 POST 表单提交参数更规范。问个人开发者可以申请企业级条码查询接口吗答部分大厂接口需要企业资质个人开发者较难申请。但市面上的聚合类 API 服务包括本文整理的几个个人注册即可使用门槛较低。问批量导入商品条码用什么方案比较好答批量导入要注意两点一是 QPS 限制请求之间加延时二是多源降级一个源查不到就换下一个。生产环境建议用商业付费接口做主力免费接口做降级兜底。问本文里的接口都实测过吗答没有。本文基于公开文档和技术文章整理未对每个接口做真实请求实测。接口的可用性、返回数据准确性、额度规则等都可能随时间变化集成前请自行发请求验证。问条码查询接口和扫码识别OCR接口是一回事吗答不是。条码查询接口是你已经知道条码数字传进去查商品信息扫码识别OCR接口是把条码的图片/照片识别成数字。实际业务中往往是先扫码识别出条码再调用条码查询接口拿商品信息。
RELATED

相关推荐

MySQL 8.0 DBA教材精读:架构、备份、复制与调优实战要点

MySQL 8.0 DBA教材精读:架构、备份、复制与调优实战要点

简介:一份面向数据库管理员(DBA)的MySQL 8.0官方培训指南,源自Oracle University的Student Guide第一卷。资源系统讲解安装与升级、日常维护、备份恢复、用户权限及性能监控调优等核心技能,并以原生PDF形式呈现&#x…

📅 2026/10/14 10:46:29
python的机器人基础原理工业场景模拟第十七篇:产线仿真,修改连杆质心位置,基于动力学术解,统计质心偏移对关节力矩的影响。

python的机器人基础原理工业场景模拟第十七篇:产线仿真,修改连杆质心位置,基于动力学术解,统计质心偏移对关节力矩的影响。

《Python机器人基础原理》第十七篇:产线仿真——修改连杆质心位置,基于动力学术解,统计质心偏移对关节力矩的影响1. 实际工业应用场景周三夜班,某3C电子装配产线的例行保养窗口。一台4-DOF垂直关节装配机械臂(3旋转1垂…

📅 2026/10/14 10:46:29
Vant表单校验报错 ‘reduce of undefined‘ 的根因与修复

Vant表单校验报错 ‘reduce of undefined‘ 的根因与修复

如果你在用 Vant UI 做移动端表单,点击提交按钮的一瞬间,控制台突然冒出一句TypeError: Cannot read property reduce of undefined,先别急着去改代码。这个报错看起来像是 Vant 内部某个库函数的 bug,但绝大多数情况下&#xff0…

📅 2026/10/14 10:46:29
MORE NEWS

更多资讯

📰

工业智能体:任务驱动的具身智能新范式

1. 这份报告不是“又一份行业白皮书”,而是工业现场正在发生的认知革命 “工联院联合多机构发布《工业智能体研究报告》(附全文)”——这个标题在信息流里一闪而过,很容易被划走。多数人会下意识归类为“政策风向标”“行业趋势稿…

📰

Spring Boot四大HTTP参数注解详解与实战指南

1. 项目概述在Spring Boot开发中,处理HTTP请求参数是每个开发者必须掌握的基本功。RequestBody、PathVariable、RequestParam和RequestHeader这四个注解看似简单,但在实际项目中,很多开发者(包括我自己早期)都曾因为对…

📰

WPF DataGrid自定义样式实战:从默认失效到企业级落地

简介:本资源是一份面向WPF中高级开发者的DataGrid深度样式定制实践包,聚焦解决企业级数据表格界面统一性、交互美观性与可维护性难题。通过完整实现基于ControlTemplate的DataGrid整体模板重写、行级动态样式(如悬停/选中/奇偶行)…

📰

成语小秀才微信小程序源码拆解:答题闯关与题库设计实践

简介:这是以成语接龙为主题的微信小程序完整源码,面向对小程序开发感兴趣、希望学习游戏化设计与广告变现的开发者。项目实现了无限关卡玩法、横幅/激励视频/插屏广告集成、分享好友获能力等机制,可直观看到前端交互与后端接口配合方式。压缩…

📰

高数自学复盘:从极限到导数,吃透增量比取极限

说个实话,8月21日这个日期,是我自己定的死线。暑假一开始就想着要啃下高数第二章,结果从7月中旬拖到8月下旬,再不开始,整个假期就真的交代了。我当时翻开这套经典高数教材,第二章第一节“导数的概念”&…

📰

用数据挖掘重构工资分配逻辑:从成本科目到业务仪表盘

1. 这不是薪酬体系设计,而是用数据挖掘解构“工资为什么这样发”“数据挖掘与工资分配”——看到这个标题,很多人第一反应是:这不就是HR在做薪酬分析?或者企业用算法自动调薪?但实际操作中,我带过的几个模拟…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬