尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
增值税发票OCR识别API参数详解与最佳实践
适用场景增值税发票识别的核心价值在于将纸质或电子发票图像转化为结构化数据。典型应用场景包括企业财务报销系统员工拍照上传发票自动提取金额、税号、日期等信息减少人工录入。发票核查与验真OCR提取的发票代码、号码可作为查验平台的输入参数。供应链对账自动归档进项发票比对购销双方信息匹配订单金额。电子档案管理批量扫描历史发票建立可搜索的电子档案库。这些场景的共同需求是高识别精度与标准化输出本文介绍的 API 可输出 22 结构化字段并针对增值税专用/普通/电子发票做了专项优化。接口能力与限制端点POST https://v1.apizero.cn/api/invoiceQPS2 请求/秒超限将返回 429 状态码图片处理支持 URL 或 Base64 输入单张图片 Base64 最大 6MB建议 1MB 以内以获得最佳性能输出字段22 个包括发票基本信息、购销方详情、商品明细items 数组、金额大小写等结果缓存同一张图片按文件哈希1 小时内重复请求返回相同结果避免浪费调用次数注意接口不直接验真仅作 OCR 识别。发票真伪核验需配合税务官方系统。鉴权方式该 API 支持两种鉴权策略匿名调用每日 5 次无需任何 HTTP 头直接 POST。API Key 鉴权在请求头中添加Authorization: Bearer sk_live_xxxxxxxx或X-API-Key: sk_live_xxxxxxxx两种方式等效推荐使用更标准的Authorization头部。实际生产中请使用生产 Key避免匿名调用额度不足导致报错。请求参数详解请求体为 JSON 格式必须包含以下两个字段字段名类型必填说明input_typestring是url或base64指定输入形式input_datastring是当input_typeurl时公网可访问的图片 HTTP/HTTPS 链接当input_typebase64时图片的 Base64 编码字符串最大 6MB可包含data:image/jpeg;base64,前缀SDK 会自动剥离请求头要求Content-Type必须为application/json注意部分旧版文档可能写application/x-www-form-urlencoded但实际 JSON 标准请求体使用application/json兼容性更好参数选择建议如果图片已存储在对象存储OSS或 CDN优先使用url模式减少客户端编码开销。如果图片来自本地文件、相机拍照建议用base64模式直接在前端或后端转为 Base64 传入避免上传依赖。curl 请求示例以下示例使用 API Key 鉴权并采用 URL 模式发送图片curl -sS -X POST \ -H Authorization: Bearer sk_live_您的密钥 \ -H Content-Type: application/json \ -d {input_type: url, input_data: https://example.com/invoice.jpg} \ https://v1.apizero.cn/api/invoice若使用 Base64 模式先获取图片的 Base64 字符串可通过base64 invoice.jpg | tr -d \n生成然后构造请求体#!/bin/bash # 注意实际使用时替换 API Key 和图片路径 API_KEYsk_live_您的密钥 IMAGE_B64$(base64 -w0 invoice.jpg) curl -sS -X POST \ -H Authorization: Bearer $API_KEY \ -H Content-Type: application/json \ -d {\input_type\: \base64\, \input_data\: \$IMAGE_B64\} \ https://v1.apizero.cn/api/invoice返回字段详解成功响应的状态码为200返回 JSON 结构如下{ code: 0, msg: 成功, request_id: abc123def456, data: { invoice_name: 增值税电子普通发票, invoice_code: 011002000311, invoice_no: 12345678, invoice_date: 2024-08-15, check_code: 12345 67890 12345 67890, machine_num: 499099111111, total_price: 94.34, total_tax: 5.66, total_price_and_tax: 100.00, big_total_price_and_tax: 壹佰圆整, drawer: 王五, payee: 张三, reviewer: 李四, remarks: , buyer: { name: 某某科技有限公司, taxpayer_no: 91110000XXXXXXXXXX, address_phone: 北京市XX区XX路XX号 010-12345678, account: 中国银行 6217001234567890 }, seller: { name: 某某商贸有限公司, taxpayer_no: 91310000YYYYYYYYYY, address_phone: 上海市XX区XX路XX号 021-87654321, account: 工商银行 6222001234567890 }, items: [ { name: *技术服务*软件开发服务, specification: , unit: , quantity: , unit_price: , amount: 94.34, tax_rate: 6%, tax: 5.66 } ] } }关键字段说明基础信息invoice_name为《增值税专用发票》《增值税普通发票》《电子普通发票》等check_code仅在专票/普票中常见电子普票可能为空。金额字段total_price不含税金额、total_tax税额、total_price_and_tax价税合计。三个字段均为字符串返回时保留两位小数。购销方对象buyer和seller均包含name、taxpayer_no、address_phone、account四个字段若无则返回空字符串。items数组每一条商品明细包含 8 个字段其中name为票据上的名称可能包含*分隔符。amount为该条金额不含税tax为该条税额tax_rate含百分号。big_total_price_and_tax大写金额仅部分发票支持。注意code为0表示识别成功非0时请查看msg字段获取错误原因。常见错误与排查错误表现可能原因解决方案400 Bad Requestmsg: input_data is empty图片参数为空或失真检查input_data值是否是有效 URL 或 Base64 字符串401 UnauthorizedAPI Key 无效或未带鉴权头确认 Key 前缀为sk_live_并放入正确请求头413 Payload Too LargeBase64 图片体积超过 6MB压缩图片至 1MB 内JPEG 质量 80%或改用 URL 模式429 Too Many RequestsQPS 超限2/s加入重试退避逻辑或降低请求频率502 Bad Gateway/ 超时图片不可达URL 模式或服务器内部处理异常确认 URL 公网可访问且图片格式为 jpg/png/bmp若持续出现请联系技术支持200 OK但data中关键字段为空图片质量差、文字模糊、发票种类不在支持范围内提升图片分辨率建议800px宽确保发票区域完整且无遮挡工程化最佳实践图片预处理建议上传前统一转为 JPEG质量 90%宽度至少 1024px可有效提升识别率。PDF 发票需先转换为单张图片。输入模式选择若前端直连 APIBase64 模式简单若通过后端中转URL 模式可避免多次转码。对于生产环境建议将图片上传到 OSS 再传 URL后端只需管理一次鉴权。结果缓存利用同一个请求参数同一张图片在一小时内返回相同结果因此业务端无需额外去重但注意图片修改即使微小变化会导致新哈希。错误重试策略遇到 429 或 5xx 错误时采用指数退避如 1s、2s、4s最多重试 3 次。对 4xx 错误如 401、413不应重试应直接记录并通知开发。字段校验返回的金额字段为字符串建议解析为Decimal避免浮点精度损失。商品明细数组items长度可能为 0部分简易发票不展示明细业务代码需兼容空数组。幂等性每次调用均生成新的request_id可用于日志追踪和计费核对建议在日志中保留该 ID。参考文档增值税发票识别 API 文档原始接口 Markdown
RELATED

相关推荐

Mycelium操作系统:革命性WebAssembly微内核系统的完整指南

Mycelium操作系统:革命性WebAssembly微内核系统的完整指南

Mycelium操作系统:革命性WebAssembly微内核系统的完整指南 【免费下载链接】mycelium 🍄 an alleged operating system 项目地址: https://gitcode.com/gh_mirrors/my/mycelium Mycelium操作系统是一款基于WebAssembly微内核架构的现代操作系统&a…

📅 2026/10/12 3:41:17
5分钟快速掌握网页资源嗅探:免费开源工具完整使用指南

5分钟快速掌握网页资源嗅探:免费开源工具完整使用指南

5分钟快速掌握网页资源嗅探:免费开源工具完整使用指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否经常遇到想要下载网页视频…

📅 2026/10/11 15:50:05
CMake-IDE 核心功能解析:自动补全、语法检查和代码导航的完整教程

CMake-IDE 核心功能解析:自动补全、语法检查和代码导航的完整教程

CMake-IDE 核心功能解析:自动补全、语法检查和代码导航的完整教程 【免费下载链接】cmake-ide 项目地址: https://gitcode.com/gh_mirrors/cm/cmake-ide CMake-IDE 是一款专为 Emacs 用户设计的插件,能够将 Emacs 转变为功能强大的 CMake 项目开…

📅 2026/10/13 3:45:26
MORE NEWS

更多资讯

📰

房建电工证是什么?外省证怎么转?考前押题帮你拿证快人一步

房建电工证是什么?外省证怎么转?考前押题帮你拿证快人一步 之前考的证在外省能不能转过来?这几乎是所有打算考房建电工证的小伙伴都问过的问题,特别是那些在外地工作或之前已经考过其他省份证书的考生。别急,本文就来告诉你 房建电工证是什么…

📰

电工证入国家安监局考试真题与备考技巧,全国通用怎么操作?

电工证入国家安监局考试真题与备考技巧,全国通用怎么操作? 证书过期了不知道怎么复审延期?这是很多从事电工工作的朋友最头疼的问题。尤其是在河南地区,像信阳这样的水利工程从业者,很多都在工地一线,一忙就容易忘记证书的复审时间,等发现证书过期了,…

📰

在宾阳县有电工证培训多少钱 转外地证能通用吗

在宾阳县有电工证培训多少钱 转外地证能通用吗 之前考的证在外省能不能转过来?这几乎是每个在宾阳县准备考电工证的朋友都会问的问题。尤其是那些已经在外地工作、想回老家发展,或者从其他岗位转岗到电工行业的朋友,最关心的就是证件的通用性。别担心,…

📰

电工作业许可证考证怎么考 通过率揭秘学历不高也能过

电工作业许可证考证怎么考 通过率揭秘学历不高也能过 你是不是也担心自己学历不高,考不了电工作业许可证?别急,今天就来给你讲讲, 电工作业许可证考证 到底怎么考,怎么准备, 通过率揭秘…

📰

电工证过期了不知道怎么复审?凤阳考电工证在哪有真实经历可参考

电工证过期了不知道怎么复审?凤阳考电工证在哪有真实经历可参考 证书过期了不知道怎么复审延期,这是很多电工朋友的真实经历。我认识的一个老电工,就是因为没及时复审,结果在一次施工中被叫停,项目也丢了。现在回头看看,其实只要知道去哪里复审、怎么办…

📰

类乌齐电工证培训机构怎么网上查询报名流程与避坑指南

类乌齐电工证培训机构怎么网上查询报名流程与避坑指南 之前考的证在外省能不能转过来?这是很多人在报考电工证时最担心的问题,尤其是已经持有其他省份电工证的朋友。其实, 类乌齐电工证培训机构 在处理外省证书转接方面有明确的操作流程,只要通过…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

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

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

📞 💬