调用价格
5 匠币/次
快速接入
保持统一返回结构,直接通过服务端发起请求即可接入。
https://openapi.toolkk.com/v1/cnaps-code-bank-branch-querycURL 示例
curl --request POST \
--url 'https://openapi.toolkk.com/v1/cnaps-code-bank-branch-query' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "bankCode": "102100099996"\n}'Python 示例
import os
import requests
url = "https://openapi.toolkk.com/v1/cnaps-code-bank-branch-query"
payload = {
"bankCode": "102100099996"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.request("POST", url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
print(response.json())Go 示例
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/cnaps-code-bank-branch-query"
payload := []byte("{\n \"bankCode\": \"102100099996\"\n}")
req, err := http.NewRequest("POST", 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 示例
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 \"bankCode\": \"102100099996\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/cnaps-code-bank-branch-query"))
.method("POST", 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 示例
<?php
$endpoint = 'https://openapi.toolkk.com/v1/cnaps-code-bank-branch-query';
$payload = "{\n \"bankCode\": \"102100099996\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
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;响应示例
{
"code": "SUCCESS",
"message": "成功",
"data": {
"bankCode": "102100099996",
"lname": "中国工商银行股份有限公司某支行",
"bank": "中国工商银行",
"province": "北京市",
"city": "北京市",
"addr": "北京市某区",
"tel": "010-00000000",
"bankLogo": "https://example.com/bank-logo.png"
}
}示例用于理解返回结构,实际结果以接口返回为准。
- 鉴权方式
- 请求头传入 X-API-Key
- 默认限流
- 60 次/分钟
- 超时时间
- 10000 ms
服务端调用时,将 API Key 放在 X-API-Key 请求头中。
建议按 response code 与业务字段双重判断调用结果。
高频调用场景请结合速率限制与重试策略使用。
请求字段
从服务端发起请求,并在 X-API-Key 请求头中传入密钥。
请求字段
以下字段根据示例 JSON 自动提取,仅作接入参考。
| 字段路径 | 类型 | 必填 | 说明 | 示例值 |
|---|---|---|---|---|
| bankCode | string | 未标注 | 未标注 | 102100099996 |
请求示例
{
"bankCode": "102100099996"
}- 鉴权方式
- 请求头传入 X-API-Key
- 默认限流
- 60 次/分钟
- 超时时间
- 10000 ms
响应字段
示例用于理解返回结构,实际结果以接口返回为准。
响应字段
以下字段根据示例 JSON 自动提取,仅作接入参考。
| 字段路径 | 类型 | 必填 | 说明 | 示例值 |
|---|---|---|---|---|
| code | string | 未标注 | 未标注 | SUCCESS |
| message | string | 未标注 | 未标注 | 成功 |
| data | object | 未标注 | 未标注 | {...} |
| data.bankCode | string | 未标注 | 未标注 | 102100099996 |
| data.lname | string | 未标注 | 未标注 | 中国工商银行股份有限公司某支行 |
| data.bank | string | 未标注 | 未标注 | 中国工商银行 |
| data.province | string | 未标注 | 未标注 | 北京市 |
| data.city | string | 未标注 | 未标注 | 北京市 |
| data.addr | string | 未标注 | 未标注 | 北京市某区 |
| data.tel | string | 未标注 | 未标注 | 010-00000000 |
| data.bankLogo | string | 未标注 | 未标注 | https://example.com/bank-logo.png |
响应示例
{
"code": "SUCCESS",
"message": "成功",
"data": {
"bankCode": "102100099996",
"lname": "中国工商银行股份有限公司某支行",
"bank": "中国工商银行",
"province": "北京市",
"city": "北京市",
"addr": "北京市某区",
"tel": "010-00000000",
"bankLogo": "https://example.com/bank-logo.png"
}
}$.code == 200接口简介
接口能力、应用场景、使用限制与常见问题。
用联行号查询银行网点
已知 12 位联行号时,可通过接口反查对应银行网点资料。响应示例包含网点全称、银行名称、省市、地址、电话与银行标识等信息,适合补全已有银行编码记录,或帮助用户核对自己填写的网点。它不会根据账户判断持卡人身份或账户交易状态。
应用场景
- 收款资料录入:用户填写联行号后展示网点名称与地区,供其确认是否选对。
- 财务主数据维护:按已保存的联行号补充网点资料,对名称或地址差异安排人工核查。
- 客服查询:用用户提供的编码定位候选网点,减少仅凭相似银行名称造成的混淆。
使用与结果解读
将完整联行号作为字符串写入 bankCode,保留所有数字,不转成可能丢失前导零的数值。先检查 code 和 message,成功后读取 data;lname 是网点全称,bank 是银行名称,省市与地址用于进一步对照。电话、地址和标识按实际结果展示,缺失项应留空或提示未提供。
使用边界
该接口以已有编码反查资料,不是按模糊名称自动挑选收款网点。查询结果也不保证网点当前营业、编码适用于所有付款渠道,或收款账户与该网点一致。网点更名、迁址和业务调整可能影响资料;实际付款前应由收款方或银行确认所用信息。未查询到资料时保留原编码核对,不自行替换为相似网点。
常见问题
12 位编码是银行卡号吗?
不是。这里输入的是银行网点联行号。先确认编码来源与位数,不把银行卡号、账号或其他银行标识混作联行号。