增值税发票识别

最近更新时间:2024-10-17 01:26:31

我的收藏

1. 接口描述

接口请求域名: ocr.tencentcloudapi.com 。

本接口支持增值税专用发票、增值税普通发票、增值税电子专票、增值税电子普票、电子发票(普通发票)、电子发票(增值税专用发票)全字段的内容检测和识别,包括发票代码、发票号码、打印发票代码、打印发票号码、开票日期、合计金额、校验码、税率、合计税额、价税合计、购买方识别号、复核、销售方识别号、开票人、密码区1、密码区2、密码区3、密码区4、发票名称、购买方名称、销售方名称、服务名称、备注、规格型号、数量、单价、金额、税额、收款人等字段,点击立即试用

默认接口请求频率限制:10次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:VatInvoiceOCR。
Version String 公共参数,本接口取值:2018-11-19。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai 。
ImageBase64 String 图片/PDF的 Base64 值。
支持的文件格式:PNG、JPG、JPEG、PDF,暂不支持 GIF 格式。
支持的图片/PDF大小:所下载文件经Base64编码后不超过 7M。文件下载时间不超过 3 秒。
支持的图片像素:需介于20-10000px之间。
输入参数 ImageUrl、ImageBase64 必须提供一个,如果都提供,只使用 ImageUrl。
ImageUrl String 图片/PDF的 Url 地址。
支持的文件格式:PNG、JPG、JPEG、PDF,暂不支持 GIF 格式。
支持的图片/PDF大小:所下载文件经 Base64 编码后不超过 7M。文件下载时间不超过 3 秒。
支持的图片像素:需介于20-10000px之间。
图片存储于腾讯云的 Url 可保障更高的下载速度和稳定性,建议图片存储于腾讯云。
非腾讯云存储的 Url 速度和稳定性可能受一定影响。
示例值:https://xx/a.jpg
IsPdf Boolean 是否开启PDF识别,默认值为false,开启后可同时支持图片和PDF的识别。
PdfPageNumber Integer 需要识别的PDF页面的对应页码,仅支持PDF单页识别,当上传文件为PDF且IsPdf参数值为true时有效,默认值为1。

3. 输出参数

参数名称 类型 描述
VatInvoiceInfos Array of TextVatInvoice 检测到的文本信息,具体内容请点击左侧链接。
Items Array of VatInvoiceItem 明细条目。VatInvoiceInfos中关于明细项的具体条目。
PdfPageSize Integer 默认值为0。如果图片为PDF时,返回PDF的总页数。
示例值:0
Angle Float 图片旋转角度(角度制),文本的水平方向为0°;顺时针为正,逆时针为负。点击查看如何纠正倾斜文本
示例值:0
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 增值税发票识别示例代码

增值税发票识别

输入示例

POST / HTTP/1.1
Host: ocr.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: VatInvoiceOCR
<公共请求参数>

{
    "ImageUrl": "https://xx/a.jpg"
}

输出示例

{
    "Response": {
        "Angle": 0.06036967411637306,
        "Items": [
            {
                "AmountWithoutTax": "87.28",
                "LineNo": "1",
                "Name": "客运服务费",
                "Quantity": "1",
                "Spec": "无",
                "TaxAmount": "2.62",
                "TaxClassifyCode": "",
                "TaxRate": "3%",
                "Unit": "次",
                "UnitPrice": "87.28",
                "VehicleType": "",
                "VehicleBrand": "",
                "DeparturePlace": "",
                "ArrivalPlace": "",
                "TransportItemsName": "",
                "ConstructionPlace": "",
                "ConstructionName": ""
            }
        ],
        "PdfPageSize": 0,
        "RequestId": "3132733e-deea-4883-ac4e-c7d11ce01445",
        "VatInvoiceInfos": [
            {
                "Name": "销售方识别号",
                "Polygon": {
                    "LeftBottom": {
                        "X": 374,
                        "Y": 847
                    },
                    "LeftTop": {
                        "X": 374,
                        "Y": 824
                    },
                    "RightBottom": {
                        "X": 614,
                        "Y": 847
                    },
                    "RightTop": {
                        "X": 614,
                        "Y": 824
                    }
                },
                "Value": "911201103409033300"
            },
            {
                "Name": "销售方名称",
                "Polygon": {
                    "LeftBottom": {
                        "X": 374,
                        "Y": 813
                    },
                    "LeftTop": {
                        "X": 374,
                        "Y": 788
                    },
                    "RightBottom": {
                        "X": 618,
                        "Y": 813
                    },
                    "RightTop": {
                        "X": 618,
                        "Y": 788
                    }
                },
                "Value": "深圳腾讯游戏有限公司"
            },
            {
                "Name": "购买方识别号",
                "Polygon": {
                    "LeftBottom": {
                        "X": 378,
                        "Y": 294
                    },
                    "LeftTop": {
                        "X": 378,
                        "Y": 268
                    },
                    "RightBottom": {
                        "X": 653,
                        "Y": 294
                    },
                    "RightTop": {
                        "X": 653,
                        "Y": 268
                    }
                },
                "Value": "91440300MA55UJ6L44"
            },
            {
                "Name": "购买方名称",
                "Polygon": {
                    "LeftBottom": {
                        "X": 375,
                        "Y": 256
                    },
                    "LeftTop": {
                        "X": 375,
                        "Y": 230
                    },
                    "RightBottom": {
                        "X": 572,
                        "Y": 256
                    },
                    "RightTop": {
                        "X": 572,
                        "Y": 230
                    }
                },
                "Value": "腾讯优图有限公司"
            },
            {
                "Name": "发票名称",
                "Polygon": {
                    "LeftBottom": {
                        "X": 606,
                        "Y": 114
                    },
                    "LeftTop": {
                        "X": 606,
                        "Y": 59
                    },
                    "RightBottom": {
                        "X": 1186,
                        "Y": 114
                    },
                    "RightTop": {
                        "X": 1186,
                        "Y": 59
                    }
                },
                "Value": "天津增值税电子普通发票"
            },
            {
                "Name": "发票代码",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1342,
                        "Y": 85
                    },
                    "LeftTop": {
                        "X": 1342,
                        "Y": 62
                    },
                    "RightBottom": {
                        "X": 1502,
                        "Y": 85
                    },
                    "RightTop": {
                        "X": 1502,
                        "Y": 62
                    }
                },
                "Value": "012001100311"
            },
            {
                "Name": "发票号码",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1342,
                        "Y": 124
                    },
                    "LeftTop": {
                        "X": 1342,
                        "Y": 101
                    },
                    "RightBottom": {
                        "X": 1453,
                        "Y": 124
                    },
                    "RightTop": {
                        "X": 1453,
                        "Y": 101
                    }
                },
                "Value": "No63591128"
            },
            {
                "Name": "开票日期",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1341,
                        "Y": 162
                    },
                    "LeftTop": {
                        "X": 1341,
                        "Y": 135
                    },
                    "RightBottom": {
                        "X": 1510,
                        "Y": 162
                    },
                    "RightTop": {
                        "X": 1510,
                        "Y": 135
                    }
                },
                "Value": "2019年06月16日"
            },
            {
                "Name": "机器编号",
                "Polygon": {
                    "LeftBottom": {
                        "X": 269,
                        "Y": 210
                    },
                    "LeftTop": {
                        "X": 269,
                        "Y": 186
                    },
                    "RightBottom": {
                        "X": 432,
                        "Y": 210
                    },
                    "RightTop": {
                        "X": 432,
                        "Y": 186
                    }
                },
                "Value": "499099606262"
            },
            {
                "Name": "校验码",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1342,
                        "Y": 198
                    },
                    "LeftTop": {
                        "X": 1342,
                        "Y": 177
                    },
                    "RightBottom": {
                        "X": 1631,
                        "Y": 198
                    },
                    "RightTop": {
                        "X": 1631,
                        "Y": 177
                    }
                },
                "Value": "04656054380312409795"
            },
            {
                "Name": "密码区1",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1061,
                        "Y": 260
                    },
                    "LeftTop": {
                        "X": 1061,
                        "Y": 233
                    },
                    "RightBottom": {
                        "X": 1641,
                        "Y": 260
                    },
                    "RightTop": {
                        "X": 1641,
                        "Y": 233
                    }
                },
                "Value": "033-<<>7>616<-4+*-+4/5230604"
            },
            {
                "Name": "密码区2",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1062,
                        "Y": 297
                    },
                    "LeftTop": {
                        "X": 1062,
                        "Y": 270
                    },
                    "RightBottom": {
                        "X": 1641,
                        "Y": 297
                    },
                    "RightTop": {
                        "X": 1641,
                        "Y": 270
                    }
                },
                "Value": "*/78+740454724/0<34*9/>61856"
            },
            {
                "Name": "密码区3",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1058,
                        "Y": 334
                    },
                    "LeftTop": {
                        "X": 1058,
                        "Y": 307
                    },
                    "RightBottom": {
                        "X": 1640,
                        "Y": 334
                    },
                    "RightTop": {
                        "X": 1640,
                        "Y": 307
                    }
                },
                "Value": "29/-0651-2*91440-47386<535<5"
            },
            {
                "Name": "密码区4",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1062,
                        "Y": 372
                    },
                    "LeftTop": {
                        "X": 1062,
                        "Y": 345
                    },
                    "RightBottom": {
                        "X": 1642,
                        "Y": 372
                    },
                    "RightTop": {
                        "X": 1642,
                        "Y": 345
                    }
                },
                "Value": "92<<9-9+-601452319091>67>--7"
            },
            {
                "Name": "货物或应税劳务、服务名称",
                "Polygon": {
                    "LeftBottom": {
                        "X": 203,
                        "Y": 466
                    },
                    "LeftTop": {
                        "X": 203,
                        "Y": 439
                    },
                    "RightBottom": {
                        "X": 324,
                        "Y": 466
                    },
                    "RightTop": {
                        "X": 324,
                        "Y": 439
                    }
                },
                "Value": "客运服务费"
            },
            {
                "Name": "规格型号",
                "Polygon": {
                    "LeftBottom": {
                        "X": 619,
                        "Y": 454
                    },
                    "LeftTop": {
                        "X": 619,
                        "Y": 428
                    },
                    "RightBottom": {
                        "X": 647,
                        "Y": 454
                    },
                    "RightTop": {
                        "X": 647,
                        "Y": 428
                    }
                },
                "Value": "无"
            },
            {
                "Name": "单位",
                "Polygon": {
                    "LeftBottom": {
                        "X": 761,
                        "Y": 454
                    },
                    "LeftTop": {
                        "X": 761,
                        "Y": 426
                    },
                    "RightBottom": {
                        "X": 790,
                        "Y": 454
                    },
                    "RightTop": {
                        "X": 790,
                        "Y": 426
                    }
                },
                "Value": "次"
            },
            {
                "Name": "数量",
                "Polygon": {
                    "LeftBottom": {
                        "X": 886,
                        "Y": 452
                    },
                    "LeftTop": {
                        "X": 886,
                        "Y": 429
                    },
                    "RightBottom": {
                        "X": 905,
                        "Y": 452
                    },
                    "RightTop": {
                        "X": 905,
                        "Y": 429
                    }
                },
                "Value": "1"
            },
            {
                "Name": "单价",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1019,
                        "Y": 452
                    },
                    "LeftTop": {
                        "X": 1019,
                        "Y": 428
                    },
                    "RightBottom": {
                        "X": 1082,
                        "Y": 452
                    },
                    "RightTop": {
                        "X": 1082,
                        "Y": 428
                    }
                },
                "Value": "87.28"
            },
            {
                "Name": "金额",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1194,
                        "Y": 452
                    },
                    "LeftTop": {
                        "X": 1194,
                        "Y": 428
                    },
                    "RightBottom": {
                        "X": 1257,
                        "Y": 452
                    },
                    "RightTop": {
                        "X": 1257,
                        "Y": 428
                    }
                },
                "Value": "87.28"
            },
            {
                "Name": "税率",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1374,
                        "Y": 451
                    },
                    "LeftTop": {
                        "X": 1374,
                        "Y": 427
                    },
                    "RightBottom": {
                        "X": 1410,
                        "Y": 451
                    },
                    "RightTop": {
                        "X": 1410,
                        "Y": 427
                    }
                },
                "Value": "3%"
            },
            {
                "Name": "税额",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1509,
                        "Y": 451
                    },
                    "LeftTop": {
                        "X": 1509,
                        "Y": 428
                    },
                    "RightBottom": {
                        "X": 1560,
                        "Y": 451
                    },
                    "RightTop": {
                        "X": 1560,
                        "Y": 428
                    }
                },
                "Value": "2.62"
            },
            {
                "Name": "合计金额",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1252,
                        "Y": 709
                    },
                    "LeftTop": {
                        "X": 1252,
                        "Y": 686
                    },
                    "RightBottom": {
                        "X": 1335,
                        "Y": 709
                    },
                    "RightTop": {
                        "X": 1335,
                        "Y": 686
                    }
                },
                "Value": "¥87.28"
            },
            {
                "Name": "合计税额",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1581,
                        "Y": 709
                    },
                    "LeftTop": {
                        "X": 1581,
                        "Y": 685
                    },
                    "RightBottom": {
                        "X": 1650,
                        "Y": 709
                    },
                    "RightTop": {
                        "X": 1650,
                        "Y": 685
                    }
                },
                "Value": "2.62"
            },
            {
                "Name": "价税合计(大写)",
                "Polygon": {
                    "LeftBottom": {
                        "X": 573,
                        "Y": 758
                    },
                    "LeftTop": {
                        "X": 573,
                        "Y": 731
                    },
                    "RightBottom": {
                        "X": 744,
                        "Y": 758
                    },
                    "RightTop": {
                        "X": 744,
                        "Y": 731
                    }
                },
                "Value": "捌拾玖圆玖角整"
            },
            {
                "Name": "小写金额",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1414,
                        "Y": 756
                    },
                    "LeftTop": {
                        "X": 1414,
                        "Y": 734
                    },
                    "RightBottom": {
                        "X": 1497,
                        "Y": 756
                    },
                    "RightTop": {
                        "X": 1497,
                        "Y": 734
                    }
                },
                "Value": "¥89.90"
            },
            {
                "Name": "销售方地址、电话",
                "Polygon": {
                    "LeftBottom": {
                        "X": 372,
                        "Y": 881
                    },
                    "LeftTop": {
                        "X": 372,
                        "Y": 862
                    },
                    "RightBottom": {
                        "X": 722,
                        "Y": 881
                    },
                    "RightTop": {
                        "X": 722,
                        "Y": 862
                    }
                },
                "Value": "天津经济技术开发区南港工业区综合服务区办公楼"
            },
            {
                "Name": "销售方开户行及账号",
                "Polygon": {
                    "LeftBottom": {
                        "X": 372,
                        "Y": 917
                    },
                    "LeftTop": {
                        "X": 372,
                        "Y": 894
                    },
                    "RightBottom": {
                        "X": 977,
                        "Y": 917
                    },
                    "RightTop": {
                        "X": 977,
                        "Y": 894
                    }
                },
                "Value": "招商银行股份有限公司天津自由贸易试验区分行122905939910401"
            },
            {
                "Name": "收款人",
                "Polygon": {
                    "LeftBottom": {
                        "X": 299,
                        "Y": 963
                    },
                    "LeftTop": {
                        "X": 299,
                        "Y": 937
                    },
                    "RightBottom": {
                        "X": 350,
                        "Y": 963
                    },
                    "RightTop": {
                        "X": 350,
                        "Y": 937
                    }
                },
                "Value": "张强"
            },
            {
                "Name": "复核",
                "Polygon": {
                    "LeftBottom": {
                        "X": 699,
                        "Y": 962
                    },
                    "LeftTop": {
                        "X": 699,
                        "Y": 936
                    },
                    "RightBottom": {
                        "X": 751,
                        "Y": 962
                    },
                    "RightTop": {
                        "X": 751,
                        "Y": 936
                    }
                },
                "Value": "静静"
            },
            {
                "Name": "开票人",
                "Polygon": {
                    "LeftBottom": {
                        "X": 1082,
                        "Y": 962
                    },
                    "LeftTop": {
                        "X": 1082,
                        "Y": 937
                    },
                    "RightBottom": {
                        "X": 1132,
                        "Y": 962
                    },
                    "RightTop": {
                        "X": 1132,
                        "Y": 937
                    }
                },
                "Value": "丽丽"
            },
            {
                "Name": "省",
                "Polygon": null,
                "Value": "天津市"
            },
            {
                "Name": "是否有公司印章",
                "Polygon": null,
                "Value": "0"
            },
            {
                "Name": "发票消费类型",
                "Polygon": null,
                "Value": "服务"
            },
            {
                "Name": "发票类型",
                "Polygon": null,
                "Value": "增值税电子普通发票"
            },
            {
                "Name": "二维码",
                "Polygon": null,
                "Value": "0"
            },
            {
                "Name": "成品油标志",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "购买方地址、电话",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "购买方开户行及账号",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "打印发票代码",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "打印发票号码",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "备注",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "联次",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "是否代开",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "市",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "服务类型",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "通行费标志",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "车船税",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "车牌号",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "类型",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "通行日期起",
                "Polygon": null,
                "Value": ""
            },
            {
                "Name": "通行日期止",
                "Polygon": null,
                "Value": ""
            }
        ]
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.DownLoadError 文件下载失败。
FailedOperation.EmptyImageError 图片内容为空。
FailedOperation.ImageBlur 图片模糊。
FailedOperation.ImageDecodeFailed 图片解码失败。
FailedOperation.ImageNoText 图片中未检测到文本。
FailedOperation.ImageSizeTooLarge 图片尺寸过大,请参考输入参数中关于图片大小限制的说明。
FailedOperation.OcrFailed OCR识别失败。
FailedOperation.UnKnowError 未知错误。
FailedOperation.UnOpenError 服务未开通。
InvalidParameter.EngineImageDecodeFailed 图片解码失败。
InvalidParameterValue.InvalidParameterValueLimit 参数值错误。
LimitExceeded.TooLargeFileError 文件内容太大。
ResourceUnavailable.InArrears 账号已欠费。
ResourceUnavailable.ResourcePackageRunOut 账号资源包耗尽。
ResourcesSoldOut.ChargeStatusException 计费状态异常。