增值税发票识别新版
一、接口描述
1. 功能描述
增值税发票结构化识别,支持普票、电票、专票
2. 接口数据要求:
- 图片格式:base64编码
- 图片类型: jpg/jpeg/png
- 图片大小: 小于5M
3. 接口使用:
平台为每个API提供试用体验服务,您在AI市场选择“免费试用”规格下单后,即可开始体验业内领先的人工智能API服务。 免费试用服务具有调用量、QPS限制,如需更高性能的API服务,可以提交咨询工单,联系京东AI扩容购买。
在获得使用权限后,您可使用已经封装好的SDK/参照接口鉴权规则进行相应开发,整体流程详见 接入流程
用户需要使用图片base64编码去做请求,使用其他图片的base64编码请求成功时也会加入计费。
二、请求说明
1. 接口地址 :
https://aiapi.jd.com/jdai/ocr_vat_invoice
2. 请求方式:
post
3. 请求参数
(1)query请求参数
公共请求参数
名称 | 类型 | 必填 | 示例值 | 描述 |
---|---|---|---|---|
appkey | String | 是 | 80d2b762ecb86593f9668526920f46c | 您的appkey,可在买家中心控制台中获取 |
timestamp | long | 是 | 1541491668060 | 请求的时间戳,精确到毫秒,timestamp有效期5分钟 |
sign | String | 是 | 2e148773a0337a8f2200ba90d445f083 | 签名,根据规则MD5(sectetkey+timestamp) |
(2)header请求参数
业务请求参数
名称 | 类型 | 必填 | 示例值 | 描述 |
---|---|---|---|---|
Content-Type | String | 是 | application/json | 标准编码格式 |
(3)body请求参数
业务请求参数
名称 | 类型 | 必填 | 示例值 | 描述 |
---|---|---|---|---|
businessId | String | 是 | "JDT-NUEHUB-COM-FACE" | 固定值 |
appName | String | 是 | "FACE_ALGORITHM" | 固定值 |
appAuthorityKey | String | 是 | "sADsk3+58E9yf/fUN9DmBA==" | 固定值 |
imageItem | ImageItem | 是 | {...} | 发票图片 |
serialNo | String | 是 | "1621270610624-010221159145-1821391" | 随机唯一 |
参数ImageItem说明,imgBase64、imgArr、imgUrl三选一
名称 | 类型 | 必填 | 示例值 | 描述 |
---|---|---|---|---|
encryptionType | String | 是 | "NON" | 指定图片加密方式 |
imgBase64 | String | 是 | 图像Base64编码值,去掉图片头"data:image/png;base64,", media_id=4AAQSk...(由于过长,不给出示例) | 图片base64编码 |
imgArr | byte[] | 否 | 图像byte[]数组 | 图像byte[]数组 |
imgUrl | String | 否 | 图像URL地址 | 图像URL地址 |
imgType | String | 是 | COM | 图片类型COM |
(4)请求代码示例
建议您使用我们提供的SDK进行调用
三、返回说明
1.返回参数
(1)公共返回参数
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | string | 1000 | 参见下方错误码-系统级错误码 |
charge | boolean | false 或 true | false:不扣费, true:扣费 |
remainTimes | long | 1305 | 剩余调用次数;免费api:每天剩余调用次数;收费api:剩余次数;无限制时为-1 |
remainSeconds | long | 1223456 | 剩余调用时间(s);免费api:-1;收费api:剩余调用时间;无限制时为-1 |
msg | string | 查询成功 | 参见下方错误码-系统级错误码 |
result | object | {...} | 查询结果 |
(2)业务返回参数
result参数信息
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
code | number | 0 | 状态code |
serialNo | string | 98a39e53-84d4-448e-9081-29f64a6cd984 | 请求id |
msg | string | success | 返回信息 |
receiptInfo | Object | {...} | 识别结果 |
receiptInfo字段说明
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
invoiceType | string | 04 | 发票类型 |
checkState | string | 0 | 查验状态,见下方说明 |
IsEInvoice | string | 是否电子发票 | |
invoiceCode | string | 111001571071 | 发票代码 |
invoiceNo | string | 39788264 | 发票号码 |
buyerName | string | 购买方名称 | |
buyerTaxNo | string | 购买方税号 | |
buyerAddress | string | 购买方地址 | |
buyerAcount | string | 购买方开户行及账号 | |
salerName | string | 北京京东世纪信息技术有限公司 | 销售方名称 |
salerTaxNo | string | 销售方税号 | |
salerAddress | string | 北京市北京经济技术开发区科创十四街99号2号楼 | 销售方地址 |
salerAcount | string | 销售方账号 | |
invoiceDate | string | 20151212 | 开票日期 |
verifyCode | string | 49507382490687444615 | 校验码 |
invoiceAmount | string | 828.20 | 发票金额 |
taxAmount | string | 140.80 | 发票税额 |
totalAmount | string | 969.00 | 价格合计 |
remark | string | 备注 | |
invoiceStatus | string | 发票状态 | |
legalizeState | string | 认证状态 | |
legalizeDate | string | 20151212 | 认证日期 |
payee | string | 京东商城 | 收款人 |
reviewer | string | 复核人 | |
drawer | string | 京东商城 | 开票人 |
departCity | string | 始发站(火车票专用) | |
arriveCity | string | 终点站(火车票专用) | |
trainNumber | string | 车次(火车票专用) | |
passenger | string | 乘车人(火车票专用) | |
detaillists | Object | [{...}] | 商品详细信息 |
checkState字段说明
编码 | 描述 |
---|---|
-1 | 调用验真接口失败 |
0 | 校验通过 |
1 | 超过该张票当天查验次数 |
2 | 一级字段不完整,无法验真 |
3 | ILLEGAL_REQUEST, |
4 | EXCEED_MAX_NUM, |
5 | NOT_STANDARD_INVOICE,查询发票不规范 |
6 | VERIFY_ERROR,查验异常 |
7 | PARAMETER_LENGTH_INCORRECT,参数长度不正确 |
8 | PARAMETER_EMPTY,参数为空 |
9 | VERIFY_NOT_FINISH,查验未完成 |
10 | THAT_DAY_CANNOT_VERIFY,日期当天不能查验 |
11 | INVOICE_SUM_FORMAT_ERROR,开票金额:不合法的格式 |
12 | VERIFY_CODE_EMPTY,检验码:不能为空 |
13 | EXCEEDED_ONE_YEAR,超过一年的不能查验 |
14 | VERIFY_CODE_FORMAT_ERROR,检验码:不合法的长度 |
15 | HAVE_NO_PERMISSION,没有查验权限 |
16 | INVOICE_INFO_NOT_MAPPING,发票信息不一致 |
17 | INVOICE_NOT_EXIST,所查发票不存在 |
18 | VERIFY_DISABLE,校验没有开启 |
detaillists字段说明
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
detailNo | string | 1009897 | 明细编号 |
goodName | string | 三星(SAMSUNG)S24E360HL23.6英 | 货物名称 |
model | string | 规格 | |
unit | string | 个 | 单位 |
num | string | 2 | 数量 |
unitPrice | string | 1234 | 单价 |
detailAmount | string | 2468 | 金额 |
taxRate | string | 0.1 | 税率 |
taxAmount | string | 246.8 | 税额 |
2.返回示例
{
"code": 0,
"msg": "成功",
"receiptInfo": {
"IsEInvoice": "true",
"arriveCity": "",
"buyerAcount": "",
"buyerAddress": "",
"buyerName": "",
"buyerTaxNo": "",
"checkState": "18",
"departCity": "",
"detaillists": [
{
"detailAmount": "",
"detailNo": "",
"extended": {},
"goodName": "三星(SAMSUNG)S24E360HL23.6英",
"model": "",
"num": "",
"taxAmount": "",
"taxRate": "",
"unit": "",
"unitPrice": ""
}
],
"drawer": "京东商城",
"extended": {},
"invoiceAmount": "828.20",
"invoiceCode": "111001571071",
"invoiceDate": "20151212",
"invoiceNo": "39788264",
"invoiceStatus": "",
"invoiceType": "04",
"legalizeDate": "",
"legalizeState": "",
"passenger": "",
"payee": "京东商城",
"remark": "",
"reviewer": "",
"salerAcount": "",
"salerAddress": "北京市北京经济技术开发区科创十四街99号2号楼B168室010-56754036",
"salerName": "北京京东世纪信息技术有限公司",
"salerTaxNo": "110192562134916",
"taxAmount": "140.80",
"totalAmount": "969.00",
"trainNumber": "",
"verifyCode": "49507382490687444615"
},
"serialNo": "12092873283-2313",
"timestamp": 1618387383964
}
四、错误码信息
1.系统级错误码
2.业务错误码
业务错误码(code) | message | 说明 |
---|---|---|
10 | "权限受限!" | 参数错误 |
101 | "操作失败!" | 识别失败 |
4105 | "算法平台接口调用失败" | 系统异常 |