invoice-check
Invoice Verification
Submit invoice code, number, date, amount, and verification code to validate the authenticity of VAT invoices, returning invoice type and seller information to assist financial compliance review.
Usage Cost
40 coins/call
Quick Start
Use a unified response envelope and call directly from your backend.
https://openapi.toolkk.com/v1/invoice-checkcURL Example
curl --request GET \
--url 'https://openapi.toolkk.com/v1/invoice-check' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "invoiceCode": "044001900111",\n "invoiceNo": "00012345",\n "invoiceDate": "2024-01-01",\n "invoiceAmt": "100.00",\n "verCode": "123456"\n}'Python Example
import os
import requests
url = "https://openapi.toolkk.com/v1/invoice-check"
payload = {
"invoiceCode": "044001900111",
"invoiceNo": "00012345",
"invoiceDate": "2024-01-01",
"invoiceAmt": "100.00",
"verCode": "123456"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.get(url, headers=headers, params=payload, timeout=30)
response.raise_for_status()
print(response.json())Go Example
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/invoice-check"
payload := []byte("{\n \"invoiceCode\": \"044001900111\",\n \"invoiceNo\": \"00012345\",\n \"invoiceDate\": \"2024-01-01\",\n \"invoiceAmt\": \"100.00\",\n \"verCode\": \"123456\"\n}")
req, err := http.NewRequest("GET", endpoint, bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}Java Example
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class ToolkkExample {
public static void main(String[] args) throws Exception {
String payload = "{\n \"invoiceCode\": \"044001900111\",\n \"invoiceNo\": \"00012345\",\n \"invoiceDate\": \"2024-01-01\",\n \"invoiceAmt\": \"100.00\",\n \"verCode\": \"123456\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/invoice-check"))
.method("GET", HttpRequest.BodyPublishers.ofString(payload))
.header("Content-Type", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}PHP Example
<?php
$endpoint = 'https://openapi.toolkk.com/v1/invoice-check';
$payload = "{\n \"invoiceCode\": \"044001900111\",\n \"invoiceNo\": \"00012345\",\n \"invoiceDate\": \"2024-01-01\",\n \"invoiceAmt\": \"100.00\",\n \"verCode\": \"123456\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
if ($response === false) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
echo $response;Response Example
{
"code": "SUCCESS",
"message": "success",
"data": {
"result": "验证通过",
"invoiceType": "增值税普通发票",
"seller": "阿里巴巴(中国)有限公司"
}
}Examples illustrate the response structure. Actual results depend on the API response.
- Authentication
- Send X-API-Key in request headers
- Rate limit
- 600 req/min
- Timeout
- 5000 ms
Send your API Key in the X-API-Key header from your backend.
Check both HTTP status and business fields before treating a call as successful.
Use retries and backoff together with rate limits in high-frequency scenarios.
Request Fields
Send requests from your server with the key in the X-API-Key header.
Request Fields
The fields below are derived from example JSON for integration reference only.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| invoiceCode | string | Unspecified | Unspecified | 044001900111 |
| invoiceNo | string | Unspecified | Unspecified | 00012345 |
| invoiceDate | string | Unspecified | Unspecified | 2024-01-01 |
| invoiceAmt | string | Unspecified | Unspecified | 100.00 |
| verCode | string | Unspecified | Unspecified | 123456 |
Request Example
{
"invoiceCode": "044001900111",
"invoiceNo": "00012345",
"invoiceDate": "2024-01-01",
"invoiceAmt": "100.00",
"verCode": "123456"
}- Authentication
- Send X-API-Key in request headers
- Rate limit
- 600 req/min
- Timeout
- 5000 ms
Response Fields
Examples illustrate the response structure. Actual results depend on the API response.
Response Fields
The fields below are derived from example JSON for integration reference only.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| code | string | Unspecified | Unspecified | SUCCESS |
| message | string | Unspecified | Unspecified | success |
| data | object | Unspecified | Unspecified | {...} |
| data.result | string | Unspecified | Unspecified | 验证通过 |
| data.invoiceType | string | Unspecified | Unspecified | 增值税普通发票 |
| data.seller | string | Unspecified | Unspecified | 阿里巴巴(中国)有限公司 |
Response Example
{
"code": "SUCCESS",
"message": "success",
"data": {
"result": "验证通过",
"invoiceType": "增值税普通发票",
"seller": "阿里巴巴(中国)有限公司"
}
}$.code == 200 Documentation
Capabilities, use cases, and considerations.
API Capabilities
The Invoice Information Verification API supports the verification of basic information for VAT invoices. By inputting key elements from the invoice face, the API can provide the verification result (e.g., verification passed) and return information such as the invoice type and seller name. This API aims to assist corporate finance personnel or automated systems in preliminary invoice information reconciliation, reducing financial compliance risks.
Request and Response
- Request Parameters: Core elements from the invoice face must be provided, including
invoiceCode(invoice code),invoiceNo(invoice number),invoiceDate(invoice date, format YYYY-MM-DD),invoiceAmt(invoice amount, excluding tax), andverCode(last six digits of the verification code). - Return Results: In the returned data, the
resultfield indicates the verification status (e.g., "Verification Passed"), while also providinginvoiceType(invoice type, such as VAT ordinary invoice) andseller(seller name). - Troubleshooting Failures: If verification fails, please carefully check if all input parameters exactly match those on the invoice, especially the date format and amount (whether it includes tax).