本文介绍增值税发票卷票识别RecognizeTicketInvoice的语法及示例。

功能描述

增值税发票卷票识别能力支持对卷票上包括价税合计、发票代码、发票号码、合计税额、合计金额、密码区、开票日期、税率、购买方识别号、销售方识别号等结构化识别。

应用场景

  • 发票验真:智能识别发票代码、号码、开具金额、开票日期四个关键字段,以便快速接入税务机关发票查验平台进行真伪查验,有效降低人力成本,控制业务风险。
  • 账单记录:对发票金额、开票日期等信息进行自动识别和录入,应用于理财记账场景,帮助用户快速录入账单信息,降低用户输入成本,提升使用体验。

特色优势

  • 全字段识别:支持对值税发票卷票关键字段的结构化识别,能够满足财税报销等场景中对票据字段的识别需求。
  • 节约成本:识别发票信息后,根据需求录入发票信息,有效降低用户输入成本,提升用户使用体验。

前提条件

请确保您已开通文字识别服务,若未开通服务请立即开通

输入限制

  • 图像格式:JPEG、JPG、PNG、BMP。
  • 图像大小:不超过4M。
  • 图像分辨率:大于15×15像素,小于4096×4096像素。
  • URL地址中不能包含中文字符。

计费说明

关于增值税发票卷票识别的计费方式及报价,请参见计费介绍

说明 下方调试接口为付费接口。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String RecognizeTicketInvoice

系统规定参数。取值:RecognizeTicketInvoice

ImageURL String https://viapi-test.oss-cn-shanghai.aliyuncs.com/ocr/%E5%8F%91%E7%A5%A8%E5%8D%B7%E7%A5%A8.jpg

图像URL地址。当前仅支持上海地域的OSS链接,如何生成URL请参见生成URL

返回数据

名称 类型 示例值 描述
RequestId String 063C0178-7EA3-4754-96FB-C0C9AE6B9AAE

请求ID。

Data Object

返回的结果数据内容。

Count Long 1

票据数量。

Height Long 594

票据旋转后的高度。

Width Long 594

票据旋转后的宽度。

OrgHeight Long 1417

原图高度。

OrgWidth Long 1417

原图宽度。

Results Array of results

识别结果。

Index Long 1

票据在图像中的索引。

Content Object

识别内容。

InvoiceCode String 044031860107

发票代码。

InvoiceNumber String 09267581

发票号码。

InvoiceDate String 2018-09-20

开票日期。

AntiFakeCode String 81931914902643039780

校验码。

PayeeName String 深圳市xxxx有限公司

销售方名称。

PayeeRegisterNo String 914403002794492693

销售方税号。

PayerName String 深圳市xxxx有限公司

购买方名称。

PayerRegisterNo String 91440300MA5EXWHW6F

购买方税号。

SumAmount String ¥220.00

总价。

Type String 卷票

票据类型。支持识别以下几种:

  • 增值税发票
  • 出租车票
  • 定额发票
  • 机动车销售发票
  • 卷票
KeyValueInfos Array of keyValueInfos

位置信息。

Key String 发票代码

被识别字段名称。

Value String 044031860107

被识别字段的值。

ValuePositions Array of valuePositions

被识别字段位置信息。四个角的坐标顺时针排列,分别为左上XY坐标、右上XY坐标、右下XY坐标、左下XY坐标。

X Long 586

矩形框X坐标。

Y Long 16

矩形框Y坐标。

ValueScore Float 100

被识别字段Value值置信度,范围0~100。

SliceRectangle Array of sliceRectangle

票据识别矩形框四个角的坐标顺时针排列,分别为左上XY坐标、右上XY坐标、右下XY坐标、左下XY坐标。

X Long 586

矩形框X坐标。

Y Long 16

矩形框Y坐标。

示例

请求示例

http(s)://ocr.cn-shanghai.aliyuncs.com/?Action=RecognizeTicketInvoice
&ImageURL=https://viapi-test.oss-cn-shanghai.aliyuncs.com/ocr/%E5%8F%91%E7%A5%A8%E5%8D%B7%E7%A5%A8.jpg
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<RecognizeTicketInvoiceResponse>
    <RequestId>063C0178-7EA3-4754-96FB-C0C9AE6B9AAE</RequestId>
    <Data>
        <OrgWidth>594</OrgWidth>
        <Results>
            <Type>卷票</Type>
            <SliceRectangle>
                <X>2</X>
                <Y>19</Y>
            </SliceRectangle>
            <SliceRectangle>
                <X>586</X>
                <Y>16</Y>
            </SliceRectangle>
            <SliceRectangle>
                <X>580</X>
                <Y>1408</Y>
            </SliceRectangle>
            <SliceRectangle>
                <X>0</X>
                <Y>1410</Y>
            </SliceRectangle>
            <KeyValueInfos>
                <Value>44031860107</Value>
                <ValueScore>100</ValueScore>
                <Key>发票代码</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>9267581</Value>
                <ValueScore>100</ValueScore>
                <Key>发票号码</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>2018-09-20</Value>
                <ValueScore>100</ValueScore>
                <Key>开票日期</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>81931914902643030000</Value>
                <ValueScore>100</ValueScore>
                <Key>校验码</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>深圳市xxxx有限公司</Value>
                <ValueScore>100</ValueScore>
                <Key>销售方名称</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>914403002794492700</Value>
                <ValueScore>100</ValueScore>
                <Key>销售方税号</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>深圳市xxxx有限公司</Value>
                <ValueScore>100</ValueScore>
                <Key>购买方名称</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>91440300MA5EXWHW6F</Value>
                <ValueScore>99</ValueScore>
                <Key>购买方税号</Key>
            </KeyValueInfos>
            <KeyValueInfos>
                <Value>¥220.00</Value>
                <ValueScore>99</ValueScore>
                <Key>总价</Key>
            </KeyValueInfos>
            <Content>
                <PayeeName>深圳市xxxx有限公司</PayeeName>
                <AntiFakeCode>81931914902643030000</AntiFakeCode>
                <InvoiceCode>44031860107</InvoiceCode>
                <PayeeRegisterNo>914403002794492700</PayeeRegisterNo>
                <PayerRegisterNo>91440300MA5EXWHW6F</PayerRegisterNo>
                <InvoiceNumber>9267581</InvoiceNumber>
                <InvoiceDate>2018-09-20</InvoiceDate>
                <PayerName>深圳市xxxx有限公司</PayerName>
                <SumAmount>¥220.00</SumAmount>
            </Content>
            <Index>1</Index>
        </Results>
        <OrgHeight>1417</OrgHeight>
        <Height>1417</Height>
        <Count>1</Count>
        <Width>594</Width>
    </Data>
</RecognizeTicketInvoiceResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "063C0178-7EA3-4754-96FB-C0C9AE6B9AAE",
  "Data" : {
    "OrgWidth" : 594,
    "Results" : {
      "Type" : "卷票",
      "SliceRectangle" : [ {
        "X" : 2,
        "Y" : 19
      }, {
        "X" : 586,
        "Y" : 16
      }, {
        "X" : 580,
        "Y" : 1408
      }, {
        "X" : 0,
        "Y" : 1410
      } ],
      "KeyValueInfos" : [ {
        "Value" : 44031860107,
        "ValueScore" : 100,
        "Key" : "发票代码"
      }, {
        "Value" : 9267581,
        "ValueScore" : 100,
        "Key" : "发票号码"
      }, {
        "Value" : "2018-09-20",
        "ValueScore" : 100,
        "Key" : "开票日期"
      }, {
        "Value" : 81931914902643030000,
        "ValueScore" : 100,
        "Key" : "校验码"
      }, {
        "Value" : "深圳市xxxx有限公司",
        "ValueScore" : 100,
        "Key" : "销售方名称"
      }, {
        "Value" : 914403002794492700,
        "ValueScore" : 100,
        "Key" : "销售方税号"
      }, {
        "Value" : "深圳市xxxx有限公司",
        "ValueScore" : 100,
        "Key" : "购买方名称"
      }, {
        "Value" : "91440300MA5EXWHW6F",
        "ValueScore" : 99,
        "Key" : "购买方税号"
      }, {
        "Value" : "¥220.00",
        "ValueScore" : 99,
        "Key" : "总价"
      } ],
      "Content" : {
        "PayeeName" : "深圳市xxxx有限公司",
        "AntiFakeCode" : 81931914902643030000,
        "InvoiceCode" : 44031860107,
        "PayeeRegisterNo" : 914403002794492700,
        "PayerRegisterNo" : "91440300MA5EXWHW6F",
        "InvoiceNumber" : 9267581,
        "InvoiceDate" : "2018-09-20",
        "PayerName" : "深圳市xxxx有限公司",
        "SumAmount" : "¥220.00"
      },
      "Index" : 1
    },
    "OrgHeight" : 1417,
    "Height" : 1417,
    "Count" : 1,
    "Width" : 594
  }
}

错误码

关于增值税发票卷票识别的错误码,详情请参见常见错误码

SDK参考

阿里云视觉AI能力支持使用SDK调用,具体可参见SDK总览下载安装。

安全声明

  • 请确保上传的图片或文件来源符合相应的法律法规。
  • 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。