本文为您介绍文字识别(ocr)类目下的增值税发票识别RecognizeVATInvoice的语法及示例。
功能描述
增值税发票识别能力可以识别增值税发票(电子发票和纸质发票)关键字段内容,包括:校验码、复核人、开票人、发票代码、收款人等。
接入指引
1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。
2. 开通能力:请确保您已开通文字识别服务,若未开通服务请立即开通。
3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权。
4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。
5. 开发接入步骤:
- 在SDK总览中选择您要接入使用的SDK语言。
- 在对应语言的SDK文档中找到AI类目为文字识别(ocr)的SDK包进行安装。
- 参考文档中提供的示例代码进行适当修改后调用。
6. 示例代码:该能力常用语言的示例代码,请参见增值税发票识别示例代码。
7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。
输入限制
- 图像格式:PNG、JPG、JPEG、BMP、WebP、PDF。
- 图像大小:不超过3 MB。
- 图像分辨率:大于15×15像素,小于4096×4096像素。
- URL地址中不能包含中文字符。
计费说明
关于增值税发票识别的计费方式及报价,请参见计费介绍。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 |
类型 |
是否必选 |
示例值 |
描述 |
Action | String | 是 | RecognizeVATInvoice | 系统规定参数。取值:RecognizeVATInvoice。 |
FileURL | String | 是 | http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeVATInvoice/RecognizeVATInvoice3.jpg | 图像URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理。 |
FileType | String | 是 | jpg | 输入的图像格式参数固定为 |
返回数据
名称 |
类型 |
示例值 |
描述 |
RequestId | String | 56A10D65-ECE0-59DE-9775-F6494D2AF13B | 请求ID。 |
Data | Object | 返回的结果数据内容。 |
|
Box | Object | 发票关键字位置框,格式为[左上角点X轴坐标,左上角点Y轴坐标,右下角点X轴坐标,右下角点Y轴坐标]。 |
|
PayerRegisterNoes | Array of Float | 358,262,567,290 | 购买方纳税人识别号位置框信息。 |
PayeeAddresses | Array of Float | 355,909,734,939 | 购买方地址及电话位置框信息。 |
PayeeBankNames | Array of Float | 354,947,938,977 | 购买方开户行及账号位置框信息。 |
Checkers | Array of Float | 589,1003,662,1033 | 复核人位置框信息。 |
TaxAmounts | Array of Float | 1606,721,1658,748 | 合计税额位置框信息。 |
SumAmounts | Array of Float | 32,774,629,805 | 价税合计位置框信息。 |
Clerks | Array of Float | 986,1003,1060,1033 | 开票人位置框信息。 |
InvoiceNoes | Array of Float | 1377,78,1478,105 | 发票号码位置框信息。 |
InvoiceDates | Array of Float | 1376,115,1596,145 | 开票日期位置框信息。 |
InvoiceCodes | Array of Float | 1378,41,1520,68 | 发票代码位置框信息。 |
InvoiceFakeCodes | Array of Float | 1376,153,1640,181 | 校验码位置框信息。 |
PayerNames | Array of Float | 354,222,700,255 | 购买方名称位置框信息。 |
PayerBankNames | Array of Float | 0,0,0,0 | 销售方开户行及账号位置框信息。 |
Payees | Array of Float | 189,1003,264,1033 | 收款人位置框信息。 |
PayeeNames | Array of Float | 356,833,633,865 | 购买方名称位置框信息。 |
InvoiceAmounts | Array of Float | 1364, 776,1438,804 | 价税合计位置框信息。 |
WithoutTaxAmounts | Array of Float | 1265,721,1339,749 | 合计金额位置框信息。 |
PayerAddresses | Array of Float | 0,0,0,0 | 销售方地址及电话位置框信息。 |
PayeeRegisterNoes | Array of Float | 356,873,571,902 | 销售方纳税人识别号位置框信息。 |
ItemNames | Array of Integer | 0,0,0,0 | 货物或应税劳务、服务名称位置框信息。 |
Content | Object | 合计金额识别发票各项结果。 |
|
PayerAddress | String | 浙江省杭州市西湖区杭大路9号聚龙大厦西区15-18楼0571-87901580 | 购买方地址、电话。 |
PayeeRegisterNo | String | 91420200000123403 | 销售方纳税人识别号。 |
PayeeBankName | String | 中国银行浙江省分行35845832**** | 销售方开户行及账号。 |
InvoiceNo | String | 03753869 | 发票号码。 |
PayerRegisterNo | String | 91420200000123403 | 购买方纳税人识别号。 |
Checker | String | 张三 | 复核人。 |
TaxAmount | String | 9.52 | 合计税额。 |
InvoiceDate | String | 20190415 | 开票日期。 |
WithoutTaxAmount | String | 190.48 | 合计金额。 |
InvoiceAmount | String | 200.00 | 价税合计(小写)。 |
AntiFakeCode | String | 02702870934284730434 | 校验码。 |
PayerName | String | 三号技术有限责任公司 | 购买方名称。 |
Payee | String | 张三 | 收款人。 |
SumAmount | String | 87 | 价税合计(大写)。 |
PayerBankName | String | 6221************1234 | 购买方开户行及账号。 |
Clerk | String | 张三 | 开票人。 |
PayeeName | String | 上海机场(集团)有限公司 | 销售方名称。 |
PayeeAddress | String | 上海虹桥机场迎宾二路161号22342185 | 销售方地址、电话。 |
InvoiceCode | String | 031001600311 | 发票代码。 |
ItemName | Array of String | 餐饮服务 | 货物或应税劳务、服务名称。 |
SDK参考
阿里云视觉AI文字识别类目下的增值税发票识别能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为文字识别(ocr)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览。
示例代码
该能力常用语言的示例代码,请参见增值税发票识别示例代码。
示例
请求示例
http(s)://ocr.cn-shanghai.aliyuncs.com/?Action=RecognizeVATInvoice //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&FileType=jpg
&FileURL=https://vision.aliyun.com/experience/detail?&tagName=ocr&children=RecognizeVATInvoice
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<RecognizeVATInvoiceResponse>
<RequestId>56A10D65-ECE0-59DE-9775-F6494D2AF13B</RequestId>
<Data>
<Content>
<Checker/>
<PayeeAddress>浙江省杭州市西湖区杭大路9号聚龙大厦西区15-18楼0571-87901580</PayeeAddress>
<PayeeName>三号技术有限责任公司</PayeeName>
<PayerAddress/>
<AntiFakeCode>60966753003521159330</AntiFakeCode>
<PayerBankName/>
<InvoiceNo>3753869</InvoiceNo>
<PayerRegisterNo>91420200000123403</PayerRegisterNo>
<WithoutTaxAmount>82.08</WithoutTaxAmount>
<InvoiceAmount>87</InvoiceAmount>
<PayerName>三号技术有限责任公司</PayerName>
<TaxAmount>4.92</TaxAmount>
<PayeeBankName>中国银行浙江省分行35845832****</PayeeBankName>
<Clerk/>
<ItemName>餐饮服务</ItemName>
<PayeeRegisterNo>91420200000123403</PayeeRegisterNo>
<InvoiceCode>33002000411</InvoiceCode>
<InvoiceDate>2020年12月15日</InvoiceDate>
<SumAmount>87</SumAmount>
<Payee/>
</Content>
<Box>
<PayerRegisterNoes>118</PayerRegisterNoes>
<PayerRegisterNoes>128</PayerRegisterNoes>
<PayerRegisterNoes>278</PayerRegisterNoes>
<PayerRegisterNoes>138</PayerRegisterNoes>
<PayerAddresses>0</PayerAddresses>
<PayerAddresses>0</PayerAddresses>
<PayerAddresses>0</PayerAddresses>
<PayerAddresses>0</PayerAddresses>
<InvoiceAmounts>207</InvoiceAmounts>
<InvoiceAmounts>347</InvoiceAmounts>
<InvoiceAmounts>278</InvoiceAmounts>
<InvoiceAmounts>355</InvoiceAmounts>
<InvoiceDates>585</InvoiceDates>
<InvoiceDates>60</InvoiceDates>
<InvoiceDates>675</InvoiceDates>
<InvoiceDates>69</InvoiceDates>
<PayeeAddresses>118</PayeeAddresses>
<PayeeAddresses>407</PayeeAddresses>
<PayeeAddresses>407</PayeeAddresses>
<PayeeAddresses>415</PayeeAddresses>
<Clerks>0</Clerks>
<Clerks>0</Clerks>
<Clerks>0</Clerks>
<Clerks>0</Clerks>
<WithoutTaxAmounts>546</WithoutTaxAmounts>
<WithoutTaxAmounts>327</WithoutTaxAmounts>
<WithoutTaxAmounts>584</WithoutTaxAmounts>
<WithoutTaxAmounts>337</WithoutTaxAmounts>
<Checkers>0</Checkers>
<Checkers>0</Checkers>
<Checkers>0</Checkers>
<Checkers>0</Checkers>
<TaxAmounts>696</TaxAmounts>
<TaxAmounts>328</TaxAmounts>
<TaxAmounts>724</TaxAmounts>
<TaxAmounts>335</TaxAmounts>
<InvoiceCodes>583</InvoiceCodes>
<InvoiceCodes>16</InvoiceCodes>
<InvoiceCodes>643</InvoiceCodes>
<InvoiceCodes>25</InvoiceCodes>
<SumAmounts>207</SumAmounts>
<SumAmounts>347</SumAmounts>
<SumAmounts>278</SumAmounts>
<SumAmounts>355</SumAmounts>
<ItemNames>0</ItemNames>
<ItemNames>0</ItemNames>
<ItemNames>0</ItemNames>
<ItemNames>0</ItemNames>
<PayerNames>119</PayerNames>
<PayerNames>109</PayerNames>
<PayerNames>237</PayerNames>
<PayerNames>118</PayerNames>
<InvoiceFakeCodes>583</InvoiceFakeCodes>
<InvoiceFakeCodes>82</InvoiceFakeCodes>
<InvoiceFakeCodes>700</InvoiceFakeCodes>
<InvoiceFakeCodes>90</InvoiceFakeCodes>
<PayeeBankNames>119</PayeeBankNames>
<PayeeBankNames>423</PayeeBankNames>
<PayeeBankNames>282</PayeeBankNames>
<PayeeBankNames>431</PayeeBankNames>
<PayeeNames>117</PayeeNames>
<PayeeNames>371</PayeeNames>
<PayeeNames>226</PayeeNames>
<PayeeNames>381</PayeeNames>
<Payees>0</Payees>
<Payees>0</Payees>
<Payees>0</Payees>
<Payees>0</Payees>
<InvoiceNoes>582</InvoiceNoes>
<InvoiceNoes>38</InvoiceNoes>
<InvoiceNoes>623</InvoiceNoes>
<InvoiceNoes>46</InvoiceNoes>
<PayerBankNames>0</PayerBankNames>
<PayerBankNames>0</PayerBankNames>
<PayerBankNames>0</PayerBankNames>
<PayerBankNames>0</PayerBankNames>
<PayeeRegisterNoes>119</PayeeRegisterNoes>
<PayeeRegisterNoes>389</PayeeRegisterNoes>
<PayeeRegisterNoes>247</PayeeRegisterNoes>
<PayeeRegisterNoes>400</PayeeRegisterNoes>
</Box>
</Data>
</RecognizeVATInvoiceResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "56A10D65-ECE0-59DE-9775-F6494D2AF13B",
"Data" : {
"Content" : {
"Checker" : "",
"PayeeAddress" : "浙江省杭州市西湖区杭大路9号聚龙大厦西区15-18楼0571-87901580",
"PayeeName" : "三号技术有限责任公司",
"PayerAddress" : "",
"AntiFakeCode" : "60966753003521159330",
"PayerBankName" : "",
"InvoiceNo" : 3753869,
"PayerRegisterNo" : "91420200000123403",
"WithoutTaxAmount" : 82.08,
"InvoiceAmount" : 87,
"PayerName" : "三号技术有限责任公司",
"TaxAmount" : 4.92,
"PayeeBankName" : "中国银行浙江省分行35845832****",
"Clerk" : "",
"ItemName" : "餐饮服务",
"PayeeRegisterNo" : "91420200000123403",
"InvoiceCode" : 33002000411,
"InvoiceDate" : "2020年12月15日",
"SumAmount" : 87,
"Payee" : ""
},
"Box" : {
"PayerRegisterNoes" : [ 118, 128, 278, 138 ],
"PayerAddresses" : [ 0, 0, 0, 0 ],
"InvoiceAmounts" : [ 207, 347, 278, 355 ],
"InvoiceDates" : [ 585, 60, 675, 69 ],
"PayeeAddresses" : [ 118, 407, 407, 415 ],
"Clerks" : [ 0, 0, 0, 0 ],
"WithoutTaxAmounts" : [ 546, 327, 584, 337 ],
"Checkers" : [ 0, 0, 0, 0 ],
"TaxAmounts" : [ 696, 328, 724, 335 ],
"InvoiceCodes" : [ 583, 16, 643, 25 ],
"SumAmounts" : [ 207, 347, 278, 355 ],
"ItemNames" : [ 0, 0, 0, 0 ],
"PayerNames" : [ 119, 109, 237, 118 ],
"InvoiceFakeCodes" : [ 583, 82, 700, 90 ],
"PayeeBankNames" : [ 119, 423, 282, 431 ],
"PayeeNames" : [ 117, 371, 226, 381 ],
"Payees" : [ 0, 0, 0, 0 ],
"InvoiceNoes" : [ 582, 38, 623, 46 ],
"PayerBankNames" : [ 0, 0, 0, 0 ],
"PayeeRegisterNoes" : [ 119, 389, 247, 400 ]
}
}
}
错误码
关于增值税发票识别的错误码,详情请参见常见错误码。
安全声明
- 请确保上传的图片或文件来源符合相应的法律法规。
- 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。