RecognizeCarInvoice - 机动车销售统一发票识别

更新时间:
复制 MD 格式

支持包括发票代码、开票号码、开票日期、发票金额、增值税税额、合格证号、购买方名称、购买方身份证号/代码等关键字段结构化识别输出。

接口说明

本接口适用场景

  • 阿里云机动车销售发票识别,是阿里云官方自研 OCR 文字识别产品,适用于识别购车发票上的发票金额、购买方名称、车辆类型、厂牌型号、销售方名称等关键信息的场景。

  • 阿里云 OCR 产品基于阿里巴巴达摩院强大的 AI 技术及海量数据,历经多年沉淀打磨,具有服务稳定、操作简易、实时性高、能力全面等几大优势。

  • 本接口图片示例

本接口核心能力

分类概述
图片格式支持 PNG、JPG、JPEG、BMP、GIF、TIFF、WebP。
图像增强默认支持图像增强,包括图像自动旋转、畸变自动矫正、模糊图片自动增强等能力。
多类型覆盖支持模糊、光照不均、透视畸变、任意背景等低质量图像识别。
高精度识别总体识别准确率可达 98%。

如何使用本接口

步骤概述
1开通 票据凭证识别 服务。开通服务前后,您可以通过体验馆免费体验本功能识别效果。
2购买机动车销售发票识别资源包。本 API 会赠送免费额度,可使用免费额度测试。您也可以不购买资源包,系统会通过“按量付费”方式按实际调用量自动扣款。
3可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。

重要提示

类型概述
图片格式
  • 本接口支持:PNG、JPG、JPEG、BMP、GIF、TIFF、WebP。暂不支持 PDF 格式。

图片尺寸
  • 图片长宽需要大于 15 像素,小于 8192 像素。

  • 长宽比需要小于 50。

  • 如需达到较好识别效果,建议长宽均大于 500px。

图片大小
  • 图片二进制文件不能超过 10MB。

  • 图片过大会影响接口响应速度,建议使用小于 1.5M 图片进行识别,且通过传图片 URL 的方式调用接口。

相关能力

调试

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

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

ocr:RecognizeCarInvoice

*全部资源

*

请求参数

名称

类型

必填

描述

示例值

Url

string

  • 本字段和 body 字段二选一,不可同时透传或同时为空。

  • 图片链接(长度不超 2048 字节,不支持 base64)。

https://img.alicdn.com/tfs/TB1hC7bXCzqK1RjSZPcXXbTepXa-832-616.jpg

body

string

  • 本字段和 URL 字段二选一,不可同时透传或同时为空。

  • 图片二进制文件,最大 10MB。

  • 使用 HTTP 方式调用,把图片二进制文件放到 HTTP body 中上传即可。

  • 使用 SDK 的方式调用,把图片放到 SDK 的 body 中即可。

图片二进制文件

返回参数

名称

类型

描述

示例值

object

Schema of Response

RequestId

string

请求唯一 ID

43A29C77-405E-4CC0-BC55-EE694AD00655

Data

string

返回数据

{ "data": { "taxCode": "0492725/*+0/法55337*<56-24/*184-/*<94 16-6+9*-897+98546/<>74*++16<43800*>+-< 116*丰1<4201/*18+-/74*++16<43800*>+-< 116*丰1<4201/*18+-/

Code

string

错误码(如果识别成功,不会返回此字段)

noPermission

Message

string

错误提示(如果识别成功,不会返回此字段)

You are not authorized to perform this operation.

返回参数说明


字段类型说明
dataobject结构化信息。
sliceRectlist检测出的子图坐标信息。
prism_keyValueInfolist结构化信息的坐标信息。
ftypeint是否为复印件(1:是,0:否)。
heightint算法矫正图片后的高度。
widthint算法矫正图片后的宽度。
orgHeightint原图的高度。
orgWidthint原图的宽度。

识别结果(data 字段)

字段类型说明
taxCodestring税控码。
invoiceDatestring开票日期。
invoiceCodestring发票代码。
invoiceNumberstring发票号码。
machineCodestring机器编号。
purchaserNamestring购买方名称。
purchaseCodestring购买方身份证号码/组织机构代码。
vehicleTypestring车辆类型。
brandModestring厂牌型号。
originstring产地。
certificateNumberstring合格证号。
importCertificateNumberstring进口证明书号。
commodityInspectionNumberstring商检单号。
engineNumberstring发动机号码。
vinCodestring车辆识别代号/车架号码。
invoiceAmountCnstring价税合计(大写)。
invoiceAmountstring价税合计(小写)。
sellerNamestring销货单位名称。
sellerContactstring销货单位电话。
sellerTaxNumberstring销货单位纳税人识别号。
sellerBankAccountstring销货单位账号。
sellerAddressstring销货单位地址。
sellerDepositaryBankstring销货单位开户银行。
taxRatestring增值税税率或征收率。
taxstring增值税税额。
taxAuthoritiesInfostring主管税务机关及代码。
taxAuthoritiesNamestring主管税务机关。
taxAuthoritiesCodestring主管税务代码。
preTaxAmountstring不含税价。
passengerLimitNumberstring限乘人数。
issuerstring开票人。
tonnagestring吨位。
purchaserTaxNumberstring购买方纳税人识别号。
taxPaymentNumberstring完税凭证号码。

结构化坐标信息(prism_keyValueInfo 字段)

字段类型说明
keystring识别出的字段名称。
keyProbint字段名称置信度。
valuestring识别出的字段名称对应的值。
valueProbint字段名称对应值的置信度。
valuePoslist字段在原图中的四个点坐标(左上、右上、右下、左下)。


示例

正常返回示例

JSON格式

{
  "RequestId": "43A29C77-405E-4CC0-BC55-EE694AD00655",
  "Data": "{\n      \"data\": {\n            \"taxCode\": \"0492725/*+0/法55337*<56-24/*184-/*<94 16-6+9*-897+98546/<>74*++16<43800*>+-< 116*丰1<4201/*18+-/74*++16<43800*>+-< 116*丰1<4201/*18+-/                       },\n                        {\n                              \"x\": 323,\n                              \"y\": 524\n                        },\n                        {\n                              \"x\": 323,\n                              \"y\": 509\n                        }\n                  ],\n                  \"valueProb\": 100\n            },\n            {\n                  \"key\": \"taxAuthoritiesInfo\",\n                  \"keyProb\": 100,\n                  \"value\": \"安阳县国家税务局341052200\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 633,\n                              \"y\": 498\n                        },\n                        {\n                              \"x\": 633,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 498\n                        }\n                  ],\n                  \"valueProb\": 99\n            },\n            {\n                  \"key\": \"taxAuthoritiesName\",\n                  \"keyProb\": 100,\n                  \"value\": \"安阳县国家税务局\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 633,\n                              \"y\": 498\n                        },\n                        {\n                              \"x\": 633,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 498\n                        }\n                  ],\n                  \"valueProb\": 99\n            },\n            {\n                  \"key\": \"taxAuthoritiesCode\",\n                  \"keyProb\": 100,\n                  \"value\": \"341052200\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 633,\n                              \"y\": 498\n                        },\n                        {\n                              \"x\": 633,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 525\n                        },\n                        {\n                              \"x\": 537,\n                              \"y\": 498\n                        }\n                  ],\n                  \"valueProb\": 99\n            },\n            {\n                  \"key\": \"preTaxAmount\",\n                  \"keyProb\": 97,\n                  \"value\": \"84615.38\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 216,\n                              \"y\": 557\n                        },\n                        {\n                              \"x\": 216,\n                              \"y\": 543\n                        },\n                        {\n                              \"x\": 305,\n                              \"y\": 544\n                        },\n                        {\n                              \"x\": 305,\n                              \"y\": 559\n                        }\n                  ],\n                  \"valueProb\": 97\n            },\n            {\n                  \"key\": \"passengerLimitNumber\",\n                  \"keyProb\": 100,\n                  \"value\": \"5\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 723,\n                              \"y\": 545\n                        },\n                        {\n                              \"x\": 723,\n                              \"y\": 557\n                        },\n                        {\n                              \"x\": 714,\n                              \"y\": 557\n                        },\n                        {\n                              \"x\": 714,\n                              \"y\": 545\n                        }\n                  ],\n                  \"valueProb\": 100\n            },\n            {\n                  \"key\": \"issuer\",\n                  \"keyProb\": 100,\n                  \"value\": \"赵迪\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 437,\n                              \"y\": 573\n                        },\n                        {\n                              \"x\": 437,\n                              \"y\": 588\n                        },\n                        {\n                              \"x\": 410,\n                              \"y\": 588\n                        },\n                        {\n                              \"x\": 410,\n                              \"y\": 573\n                        }\n                  ],\n                  \"valueProb\": 100\n            },\n            {\n                  \"key\": \"tonnage\",\n                  \"keyProb\": 100,\n                  \"value\": \"\",\n                  \"valueProb\": 100\n            },\n            {\n                  \"key\": \"purchaserTaxNumber\",\n                  \"keyProb\": 100,\n                  \"value\": \"410523197206046072\",\n                  \"valuePos\": [\n                        {\n                              \"x\": 730,\n                              \"y\": 240\n                        },\n                        {\n                              \"x\": 730,\n                              \"y\": 253\n                        },\n                        {\n                              \"x\": 569,\n                              \"y\": 253\n                        },\n                        {\n                              \"x\": 569,\n                              \"y\": 240\n                        }\n                  ],\n                  \"valueProb\": 100\n            },\n            {\n                  \"key\": \"taxPaymentNumber\",\n                  \"keyProb\": 100,\n                  \"value\": \"\",\n                  \"valueProb\": 100\n            }\n      ],\n      \"width\": 832\n}",
  "Code": "noPermission",
  "Message": "You are not authorized to perform this operation."
}

错误码

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情