功能介绍
识别机动车销售发票图片中的文字内容,并将识别的结果以json格式返回给用户。该 接口的使用限制请参见约束与限制,详细使用指导请参见OCR服务使用简介章节。
图4-18 机动车销售发票识别示例图
说明
如果图片中包含多张卡证票据,请调用智能分类识别服务。
调试
您可以在API Explorer中调试该接口。
前提条件
在使用机动车销售发票识别之前,需要您完成服务申请和认证鉴权,具体操作流程请 参见开通服务和认证鉴权章节。
说明
用户首次使用需要先申请开通。服务只需要开通一次即可,后面使用时无需再次申请。如未开通 服务,调用服务时会提示ModelArts.4204报错,请在调用服务前先进入控制台开通服务,并注 意开通服务区域与调用服务的区域保持一致。
URI
POST https://{endpoint}/v2/{project_id}/ocr/mvs-invoice
表4-117 路径参数
参数 是否必选 说明
endpoint 是 指定承载REST服务端点的服务器域名或IP,不同 服务不同区域的endpoint不同,您可以从终端节
点中获取。
例如,OCR服务在“华北-北京四”区域的
“endpoint”为“ocr.cn-north-4.myhuaweicloud.com”。
project_id 是 项目ID,您可以从获取项目ID中获取。
请求参数
表4-118 请求 Header 参数
参数 是否必选 参数类型 描述
X-Auth-Token 是 String 用户Token。
用于获取操作API的权限。获取 Token接口响应消息头中X-Subject-Token的值即为Token。
Content-Type 是 String 发送的实体的MIME类型,参数 值为“application/json”。
表4-119 请求 Body 参数
参数 是否必选 参数类
型
说明
image 否 String 该参数与url二选一。图像数据,base64编 码,要求base64编码后大小不超过10MB。
图片最小边不小于100px,最长边不超过 8000px。支持JPEG、JPG、PNG、BMP、
TIFF格式。
url 否 String 该参数与image二选一。图片的url路径,目 前支持:
● 公网http/https url
● OBS提供的url,使用OBS数据需要进行授 权。包括对服务授权、临时授权、匿名公 开授权,详情参见配置OBS访问权限。
说明
● 接口响应时间依赖于图片的下载时间,如果图 片下载时间过长,会返回接口调用失败。
● 请保证被检测图片所在的存储服务稳定可靠,
推荐使用OBS服务存储图片数据。
响应参数
说明
根据识别的结果,可能有不同的HTTP响应状态码(status code)。例如,200表示API调用成 功,400表示调用失败,详细的状态码和响应参数说明如下。
状态码: 200
表4-120 响应 Body 参数
参数 参数类型 描述
result MvsInvoic eResult object
调用成功时表示调用结果。
调用失败时无此字段。
表4-121 MvsInvoiceResult
参数 参数类型 描述
code String 发票代码。
number String 发票号码。
machine_printed_
code String 机打代码。
machine_printed_
number String 机打号码。
issue_date String 开票日期。
machine_number String 机器编号。
buyer_name String 购买方名称。
buyer_organizati
on_number String 购买方身份证号码/组织机构代码。
buyer_id String 购买方纳税人识别号。
seller_name String 销货单位名称。
seller_phone String 销售方电话。
seller_id String 销售方纳税人识别号。
seller_account String 销售方账号。
seller_address String 销售方地址。
seller_bank String 销售方开户行。
参数 参数类型 描述 vehicle_type String 车辆类型。
brand_model String 厂牌型号。
manufacturing_lo
cation String 产地。
quality_certificate String 合格证号。
import_certificate String 进口证明书号。
inspection_numb
er String 商检单号。
engine_number String 发动机号码。
vehicle_identifica
tion_number String 车辆识别代号/车架号码。
tonnage String 吨位。
seating_capacity String 限乘人数。
tax_authority String 主管税务机关。
tax_authority_co
de String 主管税务机关代码。
tax_payment_rec
eipt String 完税凭证号码。
tax_rate String 增值税税率或征收率。
tax String 增值税税额。
tax_exclusive_pric
e String 不含税价。
total String 价税合计。
total_chinese String 价税合计大写。
fiscal_code String 税控码。
状态码: 400
表4-122 响应 Body 参数
参数 参数类型 说明
error_code String 调用失败时的错误码,具体请参见错误码。
当出现错误码“ModelArts.4204”时,请参考为
什么调用API时提示“ModelArts.4204”?章
节。调用成功时无此字段。
error_msg String 调用失败时的错误信息。
调用成功时无此字段。
POST https://{endpoint}/v2/{project_id}/ocr/mvs-invoice Request Header:
Content-Type: application/json X-Auth-Token:
MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
Request Body:
{ "image":"/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAA..."
}
● 请求示例(方式二:使用图片URL)
POST https://{endpoint}/v2/{project_id}/ocr/mvs-invoice Request Header:
Content-Type: application/json X-Auth-Token:
MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
Request Body:
{ "url":"https://BucketName.obs.xxxx.com/ObjectName"
}
● Python3语言请求代码示例(其他语言参照下列示例编写或使用OCR SDK)
# encoding:utf-8 import requests import base64
url = "https://{endpoint}/v2/{project_id}/ocr/mvs-invoice"
token = "用户获取得到的实际token值"
headers = {'Content-Type': 'application/json', 'X-Auth-Token': token}
imagepath = r'./data/mvs-invoice-demo.png' with open(imagepath, "rb") as bin_data:
image_data = bin_data.read()
image_base64 = base64.b64encode(image_data).decode("utf-8") # 使用图片的base64编码 payload = {"image": image_base64} # url与image参数二选一
response = requests.post(url, headers=headers, json=payload) print(response.text)
响应示例
状态码:200 成功响应示例
{ "result":{
"code":"11XXXXXXXX88", "number":"00XXXX08",
"machine_printed_code":"11XXXXXXXX88", "machine_printed_number":"00XXXX08", "issue_date":"2017-07-19",
"machine_number":"49991450XXXX", "buyer_name":"深圳市宝安区XXX", "buyer_organization_number":"XXX", "buyer_id":"XXX",
"seller_name":"深圳市XXX服务有限公司", "seller_phone":"0755-XXX",
"seller_id":"XXX", "seller_account":"XXX",
"seller_address":"深圳市宝安区松岗街道办XXX", "seller_bank":"XX银行深圳XX支行",
"vehicle_type":"多用途乘用车", "brand_model": "XXX",
"manufacturing_location":"大连市", "quality_certificate":"XXX", "import_certificate":"", "inspection_number":"", "engine_number":"XXX",
"vehicle_identification_number":"XXX", "tonnage": "",
"seating_capacity":"5", "tax_authority":"XXXX",
"tax_authority_code":"122XXXX08", "tax_payment_receipt":"",
"tax_rate": "17%", "tax": "¥21475.21",
"tax_exclusive_price": "¥126324.79", "total": "¥147800.00",
{ "error_code": "AIS.0103",
"error_msg": "The image size does not meet the requirements."
}
状态码
状态码 描述
200 成功响应。
状态码 描述
400 失败响应。
状态码请参见状态码。
错误码
错误码请参见错误码。