1. 接口描述
接口请求域名: ocr.tencentcloudapi.com 。
本接口支持增值税发票的准确性核验,您可以通过输入增值税发票的关键字段提供所需的验证信息,接口返回真实的票面相关信息,包括发票代码、发票号码、开票日期、金额、消费类型、购方名称、购方税号、销方名称、销方税号等多个常用字段。支持多种发票类型核验,包括增值税专用发票、增值税普通发票(含电子普通发票、卷式发票、通行费发票)、全电发票、机动车销售统一发票、货物运输业增值税专用发票、二手车销售统一发票、通用机打电子发票(广东和浙江)。
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:VatInvoiceVerifyNew。 |
Version | 是 | String | 公共参数,本接口取值:2018-11-19。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai 。 |
InvoiceNo | 是 | String | 发票号码,8位、20位(全电票) 示例值:04000000 |
InvoiceDate | 是 | String | 开票日期(不支持当天发票查询,支持五年以内开具的发票),格式:“YYYY-MM-DD”,如:2019-12-20。 示例值:2019-12-11 |
InvoiceCode | 否 | String | 发票代码(10或12 位),全电发票为空。查验未成功超过5次后当日无法再查。 示例值:1300000000 |
InvoiceKind | 否 | String | 票种类型 01:增值税专用发票, 02:货运运输业增值税专用发 票, 03:机动车销售统一发票, 04:增值税普通发票, 08:增值税电子专用发票(含全电), 10:增值税电子普通发票(含全电), 11:增值税普通发票(卷式), 14:增值税电子(通行费)发 票, 15:二手车销售统一发票,16:财务发票, 32:深圳区块链发票(云南区块链因业务调整现已下线)。 示例值:04 |
CheckCode | 否 | String | 校验码后 6 位,增值税普通发票、增值税电子普通发票、增值税普通发票(卷式)、增值税电子普通发票(通行费)、全电纸质发票(增值税普通发票)、财政票据时必填; 区块链为 5 位 示例值:921630 |
Amount | 否 | String | 不含税金额,增值税专用发票、增值税电子专用发票、机动车销售统一发票、二手车销售统一发票、区块链发票、财政发票时必填; 全电发票为价税合计(含税金额) 示例值:88.88 |
RegionCode | 否 | String | 地区编码,通用机打电子发票时必填。 广东:4400,浙江:3300 示例值:4400 |
SellerTaxCode | 否 | String | 销方税号,通用机打电子发票必填,区块链发票时必填 |
EnableCommonElectronic | 否 | Boolean | 是否开启通用机打电子发票,默认为关闭。 示例值:true |
EnableTodayInvoice | 否 | Boolean | 是否允许查验当日发票,默认值为false。 请注意,发票从开具到录入税局需要一定的时间来更新和验证发票信息,打开后仅支持查验已成功录入到税局中的发票。 示例值:true |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Invoice | VatInvoice | 增值税发票、购车发票、全电发票的基础要素字段信息。 |
VehicleInvoiceInfo | VehicleInvoiceInfo | 机动车销售统一发票详细字段信息。 |
UsedVehicleInvoiceInfo | UsedVehicleInvoiceInfo | 二手车销售统一发票详细字段信息。 |
PassInvoiceInfoList | Array of PassInvoiceInfo | 通行费发票详细字段信息。 |
ElectronicTrainTicket | ElectronicTrainTicket | 全电发票(铁路电子客票)详细字段信息。 |
ElectronicAirTransport | ElectronicAirTransport | 全电发票(航空运输电子客票行程单)详细字段信息。 |
FinancialBill | FinancialBill | 财政发票详细字段信息 |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 增值税发票核验示例代码
增值税发票核验示例代码
输入示例
POST / HTTP/1.1
Host: ocr.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: VatInvoiceVerifyNew
<公共请求参数>
{
"InvoiceCode": "144002288010",
"InvoiceNo": "04138864",
"InvoiceDate": "2022-11-16",
"Amount": "498.90",
"CheckCode": "311400",
"RegionCode": "4400",
"SellerTaxCode": "44078819091887401X",
"EnableCommonElectronic": true
}
输出示例
{
"Response": {
"Invoice": {
"AmountWithTax": "498.90",
"AmountWithoutTax": "0.00",
"BuyerAddressPhone": "",
"BuyerBankAccount": "",
"BuyerName": "",
"BuyerTaxCode": "",
"CheckCode": "",
"Code": "144002288010",
"Date": "",
"ElectronicType": "",
"HasSellerList": "",
"IsAbandoned": "N",
"Items": [],
"MachineNo": "",
"Number": "04138864",
"Remark": "",
"RedLetterInvoiceMark": false,
"IssuingTypeMark": 1,
"SellerAddressPhone": "",
"SellerBankAccount": "",
"SellerAgentName": "",
"SellerAgentTaxID": "",
"SellerListTax": "",
"SellerListTitle": "",
"SellerName": "广州市天河区员美丽美食店",
"SellerTaxCode": "",
"TaxAmount": "0.00",
"TaxBureau": "",
"TrafficFreeFlag": "N",
"Type": "102"
},
"PassInvoiceInfoList": [],
"RequestId": "f3cd280c-6d3a-41c5-8493-4ed98f8b2755",
"UsedVehicleInvoiceInfo": {
"Auctioneer": "",
"AuctioneerAddress": "",
"AuctioneerBankAccount": "",
"AuctioneerTaxpayerNum": "",
"AuctioneerTel": "",
"Buyer": "",
"BuyerAddress": "",
"BuyerNo": "",
"BuyerTel": "",
"ManagementOffice": "",
"Market": "",
"MarketAddress": "",
"MarketBankAccount": "",
"MarketTaxpayerNum": "",
"MarketTel": "",
"RegisterNo": "",
"Seller": "",
"SellerAddress": "",
"SellerNo": "",
"SellerTel": "",
"TaxBureau": "",
"VehicleIdentifyNo": "",
"VehicleLicenseNo": "",
"VehicleTotalPrice": ""
},
"VehicleInvoiceInfo": {
"BizCheckFormNo": "",
"BuyerNo": "",
"CarType": "",
"CertificateNo": "",
"EngineNo": "",
"ImportNo": "",
"LimitCount": "",
"MotorBankAccount": "",
"MotorBankName": "",
"MotorTaxRate": "",
"PayTaxesNo": "",
"PlateModel": "",
"ProduceAddress": "",
"SellerAddress": "",
"SellerTel": "",
"TaxtationOrgCode": "",
"TaxtationOrgName": "",
"Tonnage": "",
"VinNo": ""
},
"ElectronicTrainTicket": {
"BuyerName": "abc",
"BuyerTaxCode": "abc",
"Number": "abc",
"Date": "abc",
"TotalCN": "abc",
"Tax": "abc",
"ServiceType": "abc",
"TimeGetOn": "abc",
"TrainNumber": "abc",
"Code": "abc",
"SeatType": "abc",
"DateGetOn": "abc",
"TrainCabin": "abc",
"StationGetOn": "abc",
"ElectronicNumber": "abc",
"PassengerName": "abc",
"PassengerNo": "abc",
"Amount": "abc",
"StationGetOff": "abc",
"TaxRate": "abc",
"Seat": "abc",
"Total": "abc",
"CheckCode": "abc",
"StateCode": "0"
},
"ElectronicAirTransport": {
"Code": "abc",
"Number": "abc",
"Date": "abc",
"Amount": "abc",
"CheckCode": "abc",
"Total": "abc",
"DeductionMark": "abc",
"StateCode": "abc",
"BuyerTaxCode": "abc",
"BuyerName": "abc",
"DomesticInternationalMark": "abc",
"PassengerName": "abc",
"PassengerNo": "abc",
"ElectronicNumber": "abc",
"ElectronicAirTransportDetails": [
{
"FlightSegment": "abc",
"StationGetOn": "abc",
"StationGetOff": "abc",
"Carrier": "abc",
"FlightNumber": "abc",
"SeatLevel": "abc",
"FlightDate": "abc",
"DepartureTime": "abc",
"FareBasis": "abc"
}
]
}
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation.ArrearsError | 账号已欠费。 |
FailedOperation.CountLimitError | 今日次数达到限制。 |
FailedOperation.InvoiceMismatch | 发票数据不一致。温馨提示:新版发票核验接口功能更完整,请尽快切换,如已切换请忽略。 |
FailedOperation.UnKnowError | 未知错误。 |
FailedOperation.UnOpenError | 服务未开通。 |
InvalidParameterValue.InvalidParameterValueLimit | 参数值错误。 |
InvalidParameterValue.PriceOrVerificationParameterValueLimit | 开票金额或校验码参数值错误。 |
InvalidParameterValue.TicketCodeParameterValueLimit | 发票代码参数值错误。 |
InvalidParameterValue.TicketDateParameterValueLimit | 开票日期参数值错误。 |
InvalidParameterValue.TicketSnParameterValueLimit | 发票号码参数值错误。 |
ResourceNotFound.NoAreaCode | 地区编码不存在。 |
ResourceNotFound.NoInvoice | 发票不存在。温馨提示:新版发票核验接口功能更完整,请尽快切换,如已切换请忽略。 |
ResourceNotFound.NotSupportCurrentInvoiceQuery | 不支持当天发票查询。 |
ResourceUnavailable.InArrears | 账号已欠费。 |
ResourceUnavailable.ResourcePackageRunOut | 账号资源包耗尽。 |
ResourceUnavailable.TaxNetworkError | 税务局网络异常,请稍后访问。 |
ResourcesSoldOut.ChargeStatusException | 计费状态异常。 |