支持包括出票日期、票据号码、出票人信息、收票人信息、承兑人信息、票据金额等关键字段结构化识别输出。
接口说明
本接口适用场景
- 阿里云银行承兑汇票识别,是阿里云官方自研 OCR 文字识别产品,适用于识别银行承兑汇票上的出票日期、到期日期、票据状态、票据号码、出票人信息、售票人信息、承兑人信息等关键信息的场景。
- 阿里云 OCR 产品基于阿里巴巴达摩院强大的 AI 技术及海量数据,历经多年沉淀打磨,具有服务稳定、操作简易、实时性高、能力全面等几大优势。
- 本接口图片示例(仅支持正面识别,暂不支持背面识别)

本接口核心能力
| 分类 | 概述 |
|---|---|
| 图片格式 | 支持 PNG、JPG、JPEG、BMP、GIF、TIFF、WebP。 |
| 图像增强 | 默认支持图像增强,包括图像自动旋转、畸变自动矫正、模糊图片自动增强等能力。 |
| 多类型覆盖 | 支持模糊、光照不均、透视畸变、任意背景等低质量图像识别。 |
| 高精度识别 | 总体识别准确率可达 98%。 |
如何使用本接口
| 步骤 | 概述 |
|---|---|
| 1 | 开通 票据凭证识别 服务。开通服务前后,您可以通过体验馆免费体验本功能识别效果。 |
| 2 | 购买银行承兑汇票识别资源包。本 API 会赠送免费额度,可使用免费额度测试。您也可以不购买资源包,系统会通过“按量付费”方式按实际调用量自动扣款。 |
| 3 | 可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。 |
重要提示
| 类型 | 概述 |
|---|---|
| 图片格式 |
|
| 图片尺寸 |
|
| 图片大小 |
|
| 相关能力 |
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用
全部资源表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
| 操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
|---|---|---|---|---|
| ocr:RecognizeBankAcceptance | get | *全部资源 * |
| 无 |
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 |
|---|---|---|---|---|
| Url | string | 否 |
| https://img.alicdn.com/imgextra/i1/O1CN016eNk0d1ubhKP4y6gK_!!6000000006056-2-tps-631-570.png |
| body | byte | 否 |
| 图片二进制 |
返回参数
返回参数说明
| 字段 | 类型 | 说明 |
|---|---|---|
| data | object | 结构化信息。 |
| sliceRect | list | 检测出的子图坐标信息。 |
| prism_keyValueInfo | list | 结构化信息的坐标信息。 |
| ftype | int | 是否为复印件(1:是,0:否)。 |
| height | int | 算法矫正图片后的高度。 |
| width | int | 算法矫正图片后的宽度。 |
| orgHeight | int | 原图的高度。 |
| orgWidth | int | 原图的宽度。 |
识别结果(data 字段)
| 字段 | 类型 | 说明 |
|---|---|---|
| issueDate | string | 出票日期。 |
| validToDate | string | 到期日期。 |
| draftStatus | string | 票据状态。 |
| draftNumber | string | 票据号码。 |
| issuerName | string | 出票人全称。 |
| issuerAccountNumber | string | 出票人账号。 |
| issuerAccountBank | string | 出票人开户银行。 |
| payeeName | string | 收票人全称。 |
| payeeAccountNumber | string | 收票人账号。 |
| payeeAccountBank | string | 收票人开户银行。 |
| totalAmountInWords | string | 票据金额大写。 |
| totalAmount | string | 票据金额小写。 |
| acceptorName | string | 承兑人全称。 |
| acceptorAccountNumber | string | 承兑人账号。 |
| acceptorBankNumber | string | 承兑人开户行行号。 |
| acceptorAccountBank | string | 承兑人开户行名称。 |
| agreementNumber | string | 交易合同号。 |
| assignability | string | 能否转让。 |
| acceptanceDate | string | 承兑日期。 |
| subDraftNumber | string | 子票区间号。 |
结构化坐标信息(prism_keyValueInfo 字段)
| 字段 | 类型 | 说明 |
|---|---|---|
| key | string | 识别出的字段名称。 |
| keyProb | int | 字段名称置信度。 |
| value | string | 识别出的字段名称对应的值。 |
| valueProb | int | 字段名称对应值的置信度。 |
| valuePos | list | 字段在原图中的四个点坐标(左上、右上、右下、左下)。 |
示例
正常返回示例
JSON格式
{
"RequestId": "43A29C77-405E-4CC0-BC55-EE694AD00655",
"Data": {
"data": {
"issueDate": "2021-03-31",
"validToDate": "2021-06-30",
"draftStatus": "提示收票已签收",
"draftNumber": "130659500009820xxxx",
"issuerName": "广东格林精密部件股份有限公司",
"issuerAccountNumber": "955088001663180xxxx",
"issuerAccountBank": "广发银行股份有限公司惠州江北支行",
"payeeName": "",
"payeeAccountNumber": "200802200920026xxxx",
"payeeAccountBank": "中国工商银行惠州仲恺高新区支行",
"totalAmountInWords": "贰拾万捌仟捌佰肆拾伍元整",
"totalAmount": 208845,
"acceptorName": "广发银行股份有限公司惠州江北支行",
"acceptorAccountNumber": 0,
"acceptorBankNumber": "30659500xxxx",
"acceptorAccountBank": "广发银行股份有限公司惠州江北支行",
"agreementNumber": "",
"assignability": "可转让",
"acceptanceDate": "2021-03-31"
},
"ftype": 0,
"height": 570,
"orgHeight": 570,
"orgWidth": 631,
"prism_keyValueInfo": [
{
"key": "issueDate",
"keyProb": 100,
"value": "2021-03-31",
"valuePos": [
{
"x": 149,
"y": 39
},
{
"x": 149,
"y": 50
},
{
"x": 87,
"y": 50
},
{
"x": 87,
"y": 39
}
],
"valueProb": 100
},
{
"key": "validToDate",
"keyProb": 100,
"value": "2021-06-30",
"valuePos": [
{
"x": 151,
"y": 56
},
{
"x": 151,
"y": 68
},
{
"x": 87,
"y": 68
},
{
"x": 87,
"y": 56
}
],
"valueProb": 100
},
{
"key": "draftStatus",
"keyProb": 100,
"value": "提示收票已签收",
"valuePos": [
{
"x": 467,
"y": 37
},
{
"x": 467,
"y": 52
},
{
"x": 379,
"y": 51
},
{
"x": 379,
"y": 36
}
],
"valueProb": 100
},
{
"key": "draftNumber",
"keyProb": 97,
"value": "130659500009820xxxx",
"valuePos": [
{
"x": 511,
"y": 57
},
{
"x": 511,
"y": 68
},
{
"x": 380,
"y": 68
},
{
"x": 380,
"y": 56
}
],
"valueProb": 97
},
{
"key": "issuerName",
"keyProb": 100,
"value": "广东格林精密部件股份有限公司",
"valuePos": [
{
"x": 275,
"y": 75
},
{
"x": 275,
"y": 90
},
{
"x": 103,
"y": 90
},
{
"x": 103,
"y": 75
}
],
"valueProb": 100
},
{
"key": "issuerAccountNumber",
"keyProb": 100,
"value": "955088001663180xxxx",
"valuePos": [
{
"x": 221,
"y": 96
},
{
"x": 221,
"y": 108
},
{
"x": 105,
"y": 108
},
{
"x": 105,
"y": 96
}
],
"valueProb": 100
},
{
"key": "issuerAccountBank",
"keyProb": 100,
"value": "广发银行股份有限公司惠州江北支行",
"valuePos": [
{
"x": 298,
"y": 120
},
{
"x": 298,
"y": 136
},
{
"x": 106,
"y": 136
},
{
"x": 106,
"y": 119
}
],
"valueProb": 100
},
{
"key": "payeeName",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "payeeAccountNumber",
"keyProb": 100,
"value": "200802200920026xxxx",
"valuePos": [
{
"x": 536,
"y": 97
},
{
"x": 536,
"y": 108
},
{
"x": 420,
"y": 108
},
{
"x": 420,
"y": 97
}
],
"valueProb": 100
},
{
"key": "payeeAccountBank",
"keyProb": 100,
"value": "中国工商银行惠州仲恺高新区支行",
"valuePos": [
{
"x": 421,
"y": 115
},
{
"x": 587,
"y": 115
},
{
"x": 587,
"y": 140
},
{
"x": 421,
"y": 140
}
],
"valueProb": 98
},
{
"key": "totalAmountInWords",
"keyProb": 100,
"value": "贰拾万捌仟捌佰肆拾伍元整",
"valuePos": [
{
"x": 300,
"y": 164
},
{
"x": 300,
"y": 180
},
{
"x": 154,
"y": 180
},
{
"x": 154,
"y": 164
}
],
"valueProb": 100
},
{
"key": "totalAmount",
"keyProb": 99,
"value": 208845,
"valuePos": [
{
"x": 300,
"y": 164
},
{
"x": 300,
"y": 180
},
{
"x": 154,
"y": 180
},
{
"x": 154,
"y": 164
}
],
"valueProb": 100
},
{
"key": "acceptorName",
"keyProb": 100,
"value": "广发银行股份有限公司惠州江北支行",
"valuePos": [
{
"x": 309,
"y": 208
},
{
"x": 310,
"y": 233
},
{
"x": 180,
"y": 234
},
{
"x": 179,
"y": 210
}
],
"valueProb": 100
},
{
"key": "acceptorAccountNumber",
"keyProb": 100,
"value": 0,
"valuePos": [
{
"x": 188,
"y": 249
},
{
"x": 188,
"y": 260
},
{
"x": 181,
"y": 260
},
{
"x": 181,
"y": 249
}
],
"valueProb": 100
},
{
"key": "acceptorBankNumber",
"keyProb": 100,
"value": "30659500xxxx",
"valuePos": [
{
"x": 494,
"y": 218
},
{
"x": 494,
"y": 229
},
{
"x": 421,
"y": 229
},
{
"x": 421,
"y": 218
}
],
"valueProb": 100
},
{
"key": "acceptorAccountBank",
"keyProb": 100,
"value": "广发银行股份有限公司惠州江北支行",
"valuePos": [
{
"x": 587,
"y": 241
},
{
"x": 587,
"y": 266
},
{
"x": 420,
"y": 266
},
{
"x": 420,
"y": 241
}
],
"valueProb": 100
},
{
"key": "agreementNumber",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "assignability",
"keyProb": 100,
"value": "可转让",
"valuePos": [
{
"x": 144,
"y": 309
},
{
"x": 144,
"y": 324
},
{
"x": 106,
"y": 324
},
{
"x": 106,
"y": 309
}
],
"valueProb": 100
},
{
"key": "acceptanceDate",
"keyProb": 100,
"value": "2021-03-31",
"valuePos": [
{
"x": 466,
"y": 317
},
{
"x": 466,
"y": 329
},
{
"x": 404,
"y": 329
},
{
"x": 404,
"y": 317
}
],
"valueProb": 100
}
],
"sliceRect": {
"x0": 10,
"y0": 90,
"x1": 616,
"y1": 88,
"x2": 616,
"y2": 498,
"x3": 10,
"y3": 499
},
"width": 631
},
"Code": "noPermission",
"Message": "You are not authorized to perform this operation."
}错误码
访问错误中心查看更多错误码。
变更历史
| 变更时间 | 变更内容概要 | 操作 |
|---|---|---|
| 2022-11-25 | API 内部配置变更,不影响调用 | 查看变更详情 |
SDK 调用 通过 SDK 调用此接口的示例请参考开发者中心
