插件下载了解更多
Alibaba Cloud Developer ToolkitbetaAlibaba Cloud OpenAPI
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
Alibaba Cloud Developer ToolkitbetaAlibaba Cloud OpenAPI
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.
接口说明
如何开通/购买本服务
步骤 | 概述 |
---|---|
1 | 开通 票证核验 服务。开通后您可享 50 次免费额度。 |
2 | 购买发票核验资源包。您也可以不购买资源包,系统会通过“按量付费”方式按实际调用量自动扣款。 |
3 | 可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。 |
流控信息
当前云产品API请求速率暂未透出。
请求参数
字段名称 | 字段详情 |
---|---|
InvoiceCodestring | 发票代码。数电发票(发票类型代码为 31,32)时可为空(发票类型代码见发票类型代码说明)。 示例值:044032100311 |
InvoiceNostring | 发票号码。 示例值:66932410 |
InvoiceDatestring | 开票日期(日期格式为:YYYYMMDD)。 示例值:20220617 |
InvoiceSumstring | 发票类型代码为 01,03,15,20,31,32 时必填:为 01,03,20 时填写发票不含税金额;为 15 时填写发票车价合计;为 31,32 时填写含税金额;为区块链发票(InvoiceKind=1)时填写 不含税金额。展开详情 示例值:102 |
VerifyCodestring | 校验码,取后 6 位。发票类型代码为 04,10,11,14 时必填,为区块链发票(InvoiceKind=1)时必填,其他发票种类可为空(详见发票类型代码说明)。 示例值:980769 |
InvoiceKindinteger<int32> | 发票类型。用来区分是否为 区块链发票。展开详情 示例值:0 |
请求说明
- 发票类型代码说明
发票类型代码 | 发票类型说明 |
---|---|
01 | 增值税专用发票 |
02 | 货运运输业增值税专用发票 |
03 | 机动车销售统一发票 |
04 | 增值税普通发票 |
10 | 增值税普通发票(电子) |
11 | 增值税普通发票(卷式) |
14 | 增值税普通发票(通行费) |
15 | 二手车销售统一发票 |
20 | 增值税电子专用发票 |
31 | 数电发票(增值税专用发票) |
32 | 数电发票(增值税普通发票) |
85 | 数电发票(纸质专用发票) |
86 | 数电发票(纸质普通发票) |
返回参数
字段名称 | 字段详情 |
---|---|
RequestIdstring | 请求唯一 ID 示例值:43A29C77-405E-4CC0-BC55-EE694AD00655 |
Datastring | 返回数据 示例值:{
"code": "001",
"data": {
"afterTaxCode": "",
"allTax": "9.67",
"allValoremTax": "332.00",
"blueInvoiceCode": "",
"blueInvoiceNo": "",
"brandVersion": "",
"businessUnit": "",
"businessUnitTaxNo": "",
"busmessUnitAddress": "",
"busmessUnitBankAndAccount": "",
"busmessUnitPhone": "",
"carPrice": "",
"carType": "",
"carTypeAndNumber": "",
"carframeCode": "",
"carrierName": "",
"carrierTaxNo": "",
"checkCode": "07122942791187744XXXX",
"code": "",
"consignorName": "",
"consignorTaxNo": "",
"cyjgxx": "查验成功发票一致",
"detailList": [
{
"allTax": "9.67",
"detailAmount": "322.33",
"detailNo": "1",
"expenseItem": "",
"goodsName": "*餐饮服务*餐费",
"netValue": "322.330097",
"num": "1",
"plate_no": "",
"rowNo": "1",
"standard": "",
"taxClassifyCode": "0",
"taxDetailAmount": "",
"taxRate": "3",
"taxUnitPrice": "",
"trafficDateEnd": "",
"trafficDateStart": "",
"type": "",
"unit": ""
}
],
"draweeName": "",
"draweeTaxNo": "",
"engineCode": "",
"idCard": "",
"importLicense": "",
"inspectionAmount": "",
"inspectionNumber": "",
"invalidMark": "N",
"invoiceCode": "01100180XXXX",
"invoiceDate": "2018XXXX",
"invoiceMoney": "322.XX",
"invoiceNumber": "3531XXXX",
"invoiceType": "10",
"lemonMarket": "",
"lemonMarketAddress": "",
"lemonMarketBankAndAccount": "",
"lemonMarketPhone": "",
"lemonMarketTaxNo": "",
"licenseCode": "",
"licensePlate": "",
"limitAmount": "",
"machineCode": "49992273XXXX",
"note": "机器编号:49992273XXXX",
"producingArea": "",
"purchaserAddressOrPhone": "杭州余杭区XXXX0571-8502XXXX",
"purchaserBankAndNumber": "招商银行杭州高新支行571906593XXXXXX",
"purchaserName": "XXXX软件有限公司",
"purchaserPhone": "",
"purchaserTaxpayerNumber": "913301007682XXXXXX",
"purchaserUnitOrIndividual": "",
"purchaserUnitOrIndividualAddress": "",
"purchaserUnitcodeOrIdNo": "",
"receiveName": "",
"receiveTaxNo": "",
"registrationNo": "",
"salerAddress": "",
"salerAddressOrPhone": "北京市海淀区XXX8211XXXX",
"salerBankAccount": "中国银行海淀支行345456XXXXXX",
"salerBankAndNumber": "中国银行海淀支行345456XXXXXX",
"salerBankName": "",
"salerName": "北京市XXX酒家",
"salerPhone": "",
"salerTaxpayerNumber": "911101081020XXXXXX",
"sellerPhone": "",
"sellerUnitCodeOrIdno": "",
"sellerUnitOrIndividual": "北京市XXX酒家",
"sellerUnitOrIndividualAddress": "",
"taxDiskNumber": "",
"taxRate": "",
"taxUnitCode": "",
"taxUnitName": "",
"throughAddress": "",
"trafficFeeFlag": "",
"transferredVehicleOffice": "",
"transportGoodsInfo": "",
"unit": "",
"vehicleTonnage": "",
"zeroTaxRateFlag": ""
},
"msg": "成功"
} |
返回说明
- 返回结果字段描述
字段名称 | 字段类型 | 描述 |
---|---|---|
code | string | 状态码 |
msg | string | 状态信息 |
data | string | 发票信息(只有查验成功,此字段才不为空) |
- 返回结果 data 字段描述(非区块链发票)
序号 | 字段名称 | 字段描述 | 字段类型 | 字段最大长度 | 是否一定返回 | 说明 |
---|---|---|---|---|---|---|
1 | invoiceType | 发票种类 | string | 2 | 是 | |
2 | invoiceCode | 发票代码 | string | 20 | 是 | |
3 | invoiceNumber | 发票号码 | string | 8 | 是 | |
4 | inspectionAmount | 查验次数 | string | 100 | 否 | |
5 | salerName | 销方名称 | string | 100 | 否 | |
6 | salerTaxpayerNumber | 销方税号 | string | 20 | 否 | |
7 | salerAddressOrPhone | 销方地址、电话 | string | 100 | 否 | |
8 | salerBankAndNumber | 销方开户行及账号 | string | 100 | 否 | |
9 | purchaserTaxpayerNumber | 购方税号 | string | 20 | 否 | |
10 | purchaserName | 购方名称 | string | 100 | 否 | |
11 | purchaserAddressOrPhone | 购方地址、电话 | string | 100 | 否 | |
12 | purchaserBankAndNumber | 购方开户行及账号 | string | 100 | 否 | |
13 | invoiceDate | 开票日期 | string | 8 | 否 | 格式:yyyymmdd |
14 | invoiceMoney | 发票金额 | string | 20 | 否 | |
15 | allTax | 发票税额 | string | 20 | 否 | |
16 | allValoremTax | 价税合计 | string | 16 | 否 | |
17 | note | 备注 | string | 200 | 否 | |
18 | machineCode | 机器编号 | string | 20 | 否 | |
19 | checkCode | 校验码 | string | 20 | 否 | |
20 | blueInvoiceCode | 蓝票发票代码 | string | 12 | 否 | |
21 | blueInvoiceNo | 蓝票发票号码 | string | 8 | 否 | |
22 | invalidMark | 作废标志 | string | 1 | 否 | N:未作废,Y:已作废,H:冲红,7:部分冲红,8:全额冲红 |
23 | idCard | 购方身份证号/组织机构代码 | string | 20 | 否 | 机动车、二手车发票返回该信息 |
24 | carType | 车辆类型 | string | 80 | 否 | 机动车、二手车发票返回该信息 |
25 | brandVersion | 厂牌型号 | string | 100 | 否 | 机动车、二手车发票返回该信息 |
26 | producingArea | 产地 | string | 80 | 否 | 机动车发票返回该信息 |
27 | licenseCode | 合格证号 | string | 100 | 否 | 机动车发票返回该信息 |
28 | inspectionNumber | 商检单号 | string | 80 | 否 | 机动车发票返回该信息 |
29 | engineCode | 发动机号 | string | 120 | 否 | 机动车发票返回该信息 |
30 | carframeCode | 车辆识别代号/车架号码 | string | 40 | 否 | 机动车、二手车发票返回该信息 |
31 | importLicense | 进口证明书号 | string | 80 | 否 | 机动车发票返回该信息 |
32 | taxUnitCode | 主管税务机关代码 | string | 11 | 否 | 机动车发票返回该信息 |
33 | afterTaxCode | 完税凭证号码 | string | 32 | 否 | 机动车发票返回该信息 |
34 | limitAmount | 限乘人数 | string | 40 | 否 | 机动车发票返回该信息 |
35 | taxUnitName | 主管税务机关名称 | string | 160 | 否 | 机动车发票返回该信息 |
36 | unit | 吨位 | string | 40 | 否 | 机动车发票返回该信息 |
37 | taxRate | 税率 | string | 32 | 否 | 机动车发票返回该信息 |
38 | salerAddress | 销方地址 | string | 160 | 否 | 机动车发票返回该信息 |
39 | salerPhone | 销方电话 | string | 80 | 否 | 机动车发票返回该信息 |
40 | salerBankName | 销方开户银行 | string | 160 | 否 | 机动车发票返回该信息 |
41 | salerBankAccount | 销方开户账号 | string | 80 | 否 | 机动车发票返回该信息 |
42 | carrierName | 承运人名称 | string | 20 | 否 | 货物发票返回信息 |
43 | carrierTaxNo | 承运人识别号 | string | 80 | 否 | 货物发票返回信息 |
44 | draweeName | 受票方名称 | string | 20 | 否 | 货物发票返回信息 |
45 | draweeTaxNo | 受票方识别号 | string | 80 | 否 | 货物发票返回信息 |
46 | receiveName | 收货人名称 | string | 20 | 否 | 货物发票返回信息 |
47 | receiveTaxNo | 收货人识别号 | string | 80 | 否 | 货物发票返回信息 |
48 | consignorName | 发货人名称 | string | 20 | 否 | 货物发票返回信息 |
49 | consignorTaxNo | 发货人识别号 | string | 80 | 否 | 货物发票返回信息 |
50 | transportGoodsInfo | 运输货物信息 | string | 32 | 否 | 货物发票返回信息 |
51 | throughAddress | 起运地、经由、到达地 | string | 32 | 否 | 货物发票返回信息 |
52 | taxDiskNumber | 税控盘号 | string | 32 | 否 | 货物发票返回信息 |
53 | carTypeAndNumber | 车种车号 | string | 15 | 否 | 货物发票返回信息 |
54 | vehicleTonnage | 车船吨位 | string | 200 | 否 | 货物发票返回信息 |
55 | trafficFeeFlag | 通行费标准 | string | 2 | 否 | 通行费发票返回信息 Y:可抵扣通行费。N:不可抵扣通行费 |
56 | zeroTaxRateFlag | 零税率标识 | string | 2 | 否 | 通行费发票返回信息为空表示非零税率 1:税率栏位显示“免税” 2:税率栏位显示“不征税” 3:零税率 |
57 | licensePlate | 车牌照号 | string | 100 | 否 | 二手车发票返回信息 |
58 | registrationNo | 登记证号 | string | 100 | 否 | 二手车发票返回信息 |
59 | carPrice | 车价合计 | string | 32 | 否 | 二手车发票返回信息 |
60 | transferredVehicleOffice | 转入地车辆车管所名称 | string | 240 | 否 | 二手车发票返回信息 |
61 | purchaserUnitOrIndividual | 买方单位/个人 | string | 240 | 否 | 二手车发票返回信息 |
62 | purchaserUnitcodeOrIdno | 买方单位代码/身份证号 | string | 44 | 否 | 二手车发票返回信息 |
63 | purchaserUnitOrIndividualAddress | 买方单位/个人住址 | string | 240 | 否 | 二手车发票返回信息 |
64 | purchaserPhone | 买方电话 | string | 100 | 否 | 二手车发票返回信息 |
65 | sellerUnitOrIndividual | 卖方单位/个人 | string | 240 | 否 | 二手车发票返回信息 |
66 | sellerUnitCodeOrIdno | 卖方单位代码/身份证号 | string | 44 | 否 | 二手车发票返回信息 |
67 | sellerUnitOrIndividualAddress | 卖方单位/个人住址 | string | 240 | 否 | 二手车发票返回信息 |
68 | sellerPhone | 卖方电话 | string | 100 | 否 | 二手车发票返回信息 |
69 | businessUnit | 经营、拍卖单位 | string | 240 | 否 | 二手车发票返回信息 |
70 | busmessUnitAddress | 经营、拍卖单位地址 | string | 240 | 否 | 二手车发票返回信息 |
71 | businessUnitTaxNo | 经营、拍卖单位纳税人识别号 | string | 44 | 否 | 二手车发票返回信息 |
72 | busmessUnitBankAndAccount | 开户银行及账号 | string | 100 | 否 | 二手车发票返回信息 |
73 | busmessUnitPhone | 经营、拍卖单位电话 | string | 100 | 否 | 二手车发票返回信息 |
74 | lemonMarket | 二手车市场 | string | 240 | 否 | 二手车发票返回信息 |
75 | lemonMarketTaxNo | 二手车市场纳税人识别号 | string | 44 | 否 | 二手车发票返回信息 |
76 | lemonMarketAddress | 二手车市场地址 | string | 240 | 否 | 二手车发票返回信息 |
77 | lemonMarketBankAndAccount | 二手车市场开户银行及账号 | string | 100 | 否 | 二手车发票返回信息 |
78 | lemonMarketPhone | 二手车市场电话 | string | 100 | 否 | 二手车发票返回信息 |
79 | cyjgxx | 验真结果 | string | 100 | 否 | 验真结果 |
- 返回结果 data 字段描述(区块链发票)
序号 | 字段名称 | 字段描述 | 字段类型 | 说明 |
---|---|---|---|---|
1 | invoiceCode | 发票代码 | string | |
2 | invoiceNo | 发票号码 | string | |
3 | checkCode | 校验码 | string | |
4 | billingDate | 开票日期 | string | |
5 | txHash | 交易哈希 | string | |
6 | amount | 不含税总金额 | string | |
7 | totalAmount | 含税总金额 | string | |
8 | taxAmount | 税额 | string | |
9 | sellerName | 销方名称 | string | |
10 | sellerTaxpayerId | 销方纳税人识别号 | string | |
11 | sellerAddress | 销方地址 | string | |
12 | sellerPhone | 销方电话 | string | |
13 | sellerBankInfo | 销方开户银行名称 | string | |
14 | buyerAddress | 购方地址 | string | |
15 | buyerPhone | 购方电话 | string | |
16 | buyerName | 购方名称 | string | |
17 | sellerBankAccount | 销方开户银行账号 | string | |
18 | buyerTaxpayerId | 购方纳税人识别号 | string | |
19 | buyerType | 购买方类型 | string | |
20 | status | 发票状态 | string | 0:正常,1:失控,2:作废,3:红冲,4:异常 |
21 | checkedBy | 复核人 | string | |
22 | reviewedBy | 审核人 | string | |
23 | remark | 开票备注 | string | |
24 | drawer | 开票人 | string | |
25 | time | 开票时间 | string | |
26 | platformCode | 平台编码 | string | |
27 | platformName | 平台名称 | string | |
28 | orderId | 订单流水号 | string | |
29 | payId | 支付流水号 | string | |
30 | digitPaymentSign | 电子支付标识 | string | |
31 | invalidMark | 是否作废 | string | |
32 | item | 发票明细集合 | list | (以下为 item 字段的说明) |
1 | +code | 货物或应税劳务、服务编码 | string | |
2 | +name | 货物或应税劳务、服务名称 | string | |
3 | +subName | 商品名称 | string | |
4 | +specModel | 规格型号 | string | |
5 | +unit | 计量单位 | string | |
6 | +count | 数量 | string | |
7 | +unitPrice | 单价 | string | |
8 | +amount | 金额 | string | |
9 | +taxFlag | 含税标记 | string | |
10 | +taxRate | 税率 | string | |
11 | +taxAmount | 税额 | string | |
12 | +taxPreferMark | 是否享受税收优惠标识 | string | |
13 | +taxPreferDescrip | 享受税收优惠的具体说明 | string | |
14 | +zeroTaxRateMark | 零税率标识 | string | |
15 | +deduction | 差额开票时,从总额中扣除的金额 | string |
- 返回结果 detailList 字段描述
序号 | 字段名称 | 字段描述 | 字段类型 | 说明 |
---|---|---|---|---|
1 | detailNo | 明细编号 | string | |
2 | goodsName | 货物名称 | string | |
3 | detailAmount | 金额 | string | |
4 | num | 数量 | string | |
5 | taxRate | 税率 | string | |
6 | allTax | 税额 | string | |
7 | taxUnitPrice | 含税单价 | string | |
8 | taxDetailAmount | 含税金额 | string | |
9 | netValue | 不含税单价 | string | |
10 | standard | 规格型号 | string | |
11 | unit | 计量单位 | string | |
12 | expenseItem | 费用项目 | string | 货物发票返回信息 |
13 | plate_no | 车牌号 | string | 通行费发票返回信息 |
14 | type | 类型 | string | 通行费发票返回信息 |
15 | trafficDateStart | 通行日期起 | string | 通行费发票返回信息 |
16 | trafficDateEnd | 通行日期止 | string | 通行费发票返回信息 |
17 | taxClassifyCode | 税收分类编码 | string | |
18 | rowNo | 行号 | string |
- code(状态码)和 msg(状态信息)对应关系,以及是否计费说明
code | msg | 是否计费 |
---|---|---|
001 | 成功 | 是 |
002 | 超过该张票当天查验次数 | 否 |
005 | 请求不合法 | 否 |
006 | 发票信息不一致 | 是 |
009 | 所查发票不存在 | 是 |
104 | 已超过最大查验量 | 否 |
105 | 查询发票不规范。可能是以下原因导致:
| 否 |
106 | 查验异常 | 否 |
108 | 参数不为空 | 否 |
109 | 参数长度不正确 | 否 |
110 | 参数"InvoiceCode"的格式或取值范围错误 | 否 |
111 | 参数"InvoiceSum"的格式或取值范围错误 | 否 |
112 | 参数"VerifyCode"的格式或取值范围错误 | 否 |
113 | 参数"InvoiceNo"的格式或取值范围错误 | 否 |
114 | 校验码不正确,应为后六位 | 否 |
115 | 超过服务有效期限限制 | 否 |
1005 | 请核对四要素是否符合发票规范 | 是 |
1010 | 日期格式不正确(请检查日期是否符合格式 YYYYMMDD) | 否 |
1011 | 请求参数不完整 | 否 |
1021 | 网络超时,税局升级维护 | 否 |
10014 | 日期当天不能查验 | 否 |
10015 | 开票金额:不合法的格式 | 否 |
10016 | 检验码:不能为空 | 否 |
10017 | 超过五年的不能查验 | 否 |
10018 | 检验码:不合法的长度 | 否 |
10020 | 没有查验权限 | 否 |
000000 | 成功 | 是 |
000001 | 查询无数据 | 否 |
101000 | 系统异常 | 否 |
111000 | 参数不能为空 | 否 |
111001 | 参数格式不正确 | 否 |
121000 | 内部处理失败 | 否 |
121001 | 内部处理限流 | 否 |
121002 | 内部处理超时 | 否 |
131002 | 接口无权限 | 否 |
131003 | 接口调用次数过限 | 否 |
131004 | 接口已到期 | 否 |
131005 | 接口调用频率过高 | 否 |
152000 | 超过用户 QPS 调用阈值 | 否 |
171000 | 数据源业务异常 | 否 |
返回示例
错误码
没有我想要的错误码, 点击 反馈
全局错误码变更历史
变更时间 | 变更内容概要 | 操作 | |
---|---|---|---|
2024-03-15 | |||
2022-11-24 |