通過銀行卡號獲取銀行名稱和銀行圖標的ICON
1、構建一個結果類
import java.io.Serializable;
import java.util.List;
/**
* @author Created by 譚健 on 2020/2/20. 星期四. 16:23.
* © All Rights Reserved.
* <p>
* 銀聯信息
*/
@Data
public class BankInformation implements Serializable {
private static final long serialVersionUID = 5755225366931336138L;
private static final String ALI_BANK = "https://apimg.alipay.com/combo.png?d=cashier&t=";
/**
* 卡類型
*/
private String cardType;
/**
* 銀行代碼
*/
private String bank;
/**
* 卡號
*/
private String key;
/**
* 狀態
*/
private String stat;
/**
* 是否進行校驗
*/
private Boolean validated;
private List<String> messages;
public boolean isSuccessCheck() {
return "ok".equalsIgnoreCase(this.stat);
}
/**
* 獲取這個銀行的圖標,銀聯圖標
*/
public String getIconUrl() {
return ALI_BANK + this.bank;
}
}
2、通過RestTemplate GET 支付寶接口獲取識別結果
private final RestTemplate restTemplate;
private final static String ALI_BANK_UNION_PAY_GET = "https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8&cardBinCheck=true&cardNo=";
/**
* 對接阿里支付寶銀聯
*
* @param bankAccountNumber 銀行卡號
* @return
*/
public BankInformation getBankInformation(String bankAccountNumber) {
ResponseEntity<String> entity = restTemplate.getForEntity(ALI_BANK_UNION_PAY_GET + bankAccountNumber, String.class);
if (StringUtils.isNotBlank(entity.getBody())) {
return JSON.parseObject(entity.getBody(), BankInformation.class);
}
throw new NullPointerException("銀聯查詢失敗");
}
3、部分銀行編碼對照
{
"SRCB": "深圳農村商業銀行",
"BGB": "廣西北部灣銀行",
"SHRCB": "上海農村商業銀行",
"BJBANK": "北京銀行",
"WHCCB": "威海市商業銀行",
"BOZK": "周口銀行",
"KORLABANK": "庫爾勒市商業銀行",
"SPABANK": "平安銀行",
"SDEB": "順德農商銀行",
"HURCB": "湖北省農村信用社",
"WRCB": "無錫農村商業銀行",
"BOCY": "朝陽銀行",
"CZBANK": "浙商銀行",
"HDBANK": "邯鄲銀行",
"BOC": "中國銀行",
"BOD": "東莞銀行",
"CCB": "中國建設銀行",
"ZYCBANK": "遵義市商業銀行",
"SXCB": "紹興銀行",
"GZRCU": "貴州省農村信用社",
"ZJKCCB": "張家口市商業銀行",
"BOJZ": "錦州銀行",
"BOP": "平頂山銀行",
"HKB": "漢口銀行",
"SPDB": "上海浦東發展銀行",
"NXRCU": "寧夏黃河農村商業銀行",
"NYNB": "廣東南粵銀行",
"GRCB": "廣州農商銀行",
"BOSZ": "蘇州銀行",
"HZCB": "杭州銀行",
"HSBK": "衡水銀行",
"HBC": "湖北銀行",
"JXBANK": "嘉興銀行",
"HRXJB": "華融湘江銀行",
"BODD": "丹東銀行",
"AYCB": "安陽銀行",
"EGBANK": "恆豐銀行",
"CDB": "國家開發銀行",
"TCRCB": "江蘇太倉農村商業銀行",
"NJCB": "南京銀行",
"ZZBANK": "鄭州銀行",
"DYCB": "德陽商業銀行",
"YBCCB": "宜賓市商業銀行",
"SCRCU": "四川省農村信用",
"KLB": "崑崙銀行",
"LSBANK": "萊商銀行",
"YDRCB": "堯都農商行",
"CCQTGB": "重慶三峽銀行",
"FDB": "富滇銀行",
"JSRCU": "江蘇省農村信用聯合社",
"JNBANK": "濟寧銀行",
"CMB": "招商銀行",
"JINCHB": "晉城銀行JCBANK",
"FXCB": "阜新銀行",
"WHRCB": "武漢農村商業銀行",
"HBYCBANK": "湖北銀行宜昌分行",
"TZCB": "台州銀行",
"TACCB": "泰安市商業銀行",
"XCYH": "許昌銀行",
"CEB": "中國光大銀行",
"NXBANK": "寧夏銀行",
"HSBANK": "徽商銀行",
"JJBANK": "九江銀行",
"NHQS": "農信銀清算中心",
"MTBANK": "浙江民泰商業銀行",
"LANGFB": "廊坊銀行",
"ASCB": "鞍山銀行",
"KSRB": "崑山農村商業銀行",
"YXCCB": "玉溪市商業銀行",
"DLB": "大連銀行",
"DRCBCL": "東莞農村商業銀行",
"GCB": "廣州銀行",
"NBBANK": "寧波銀行",
"BOYK": "營口銀行",
"SXRCCU": "陝西信合",
"GLBANK": "桂林銀行",
"BOQH": "青海銀行",
"CDRCB": "成都農商銀行",
"QDCCB": "青島銀行",
"HKBEA": "東亞銀行",
"HBHSBANK": "湖北銀行黃石分行",
"WZCB": "溫州銀行",
"TRCB": "天津農商銀行",
"QLBANK": "齊魯銀行",
"GDRCC": "廣東省農村信用社聯合社",
"ZJTLCB": "浙江泰隆商業銀行",
"GZB": "贛州銀行",
"GYCB": "貴陽市商業銀行",
"CQBANK": "重慶銀行",
"DAQINGB": "龍江銀行",
"CGNB": "南充市商業銀行",
"SCCB": "三門峽銀行",
"CSRCB": "常熟農村商業銀行",
"SHBANK": "上海銀行",
"JLBANK": "吉林銀行",
"CZRCB": "常州農村信用聯社",
"BANKWF": "濰坊銀行",
"ZRCBANK": "張家港農村商業銀行",
"FJHXBC": "福建海峽銀行",
"ZJNX": "浙江省農村信用社聯合社",
"LZYH": "蘭州銀行",
"JSB": "晉商銀行",
"BOHAIB": "渤海銀行",
"CZCB": "浙江稠州商業銀行",
"YQCCB": "陽泉銀行",
"SJBANK": "盛京銀行",
"XABANK": "西安銀行",
"BSB": "包商銀行",
"JSBANK": "江蘇銀行",
"FSCB": "撫順銀行",
"HNRCU": "河南省農村信用",
"COMM": "交通銀行",
"XTB": "邢臺銀行",
"CITIC": "中信銀行",
"HXBANK": "華夏銀行",
"HNRCC": "湖南省農村信用社",
"DYCCB": "東營市商業銀行",
"ORBANK": "鄂爾多斯銀行",
"BJRCB": "北京農村商業銀行",
"XYBANK": "信陽銀行",
"ZGCCB": "自貢市商業銀行",
"CDCB": "成都銀行",
"HANABANK": "韓亞銀行",
"CMBC": "中國民生銀行",
"LYBANK": "洛陽銀行",
"GDB": "廣東發展銀行",
"ZBCB": "齊商銀行",
"CBKF": "開封市商業銀行",
"H3CB": "內蒙古銀行",
"CIB": "興業銀行",
"CRCBANK": "重慶農村商業銀行",
"SZSBK": "石嘴山銀行",
"DZBANK": "德州銀行",
"SRBANK": "上饒銀行",
"LSCCB": "樂山市商業銀行",
"JXRCU": "江西省農村信用",
"ICBC": "中國工商銀行",
"JZBANK": "晉中市商業銀行",
"HZCCB": "湖州市商業銀行",
"NHB": "南海農村信用聯社",
"XXBANK": "新鄉銀行",
"JRCB": "江蘇江陰農村商業銀行",
"YNRCC": "雲南省農村信用社",
"ABC": "中國農業銀行",
"GXRCU": "廣西省農村信用",
"PSBC": "中國郵政儲蓄銀行",
"BZMD": "駐馬店銀行",
"ARCU": "安徽省農村信用社",
"GSRCU": "甘肅省農村信用",
"LYCB": "遼陽市商業銀行",
"JLRCU": "吉林農信",
"URMQCCB": "烏魯木齊市商業銀行",
"XLBANK": "中山小欖村鎮銀行",
"CSCB": "長沙銀行",
"JHBANK": "金華銀行",
"BHB": "河北銀行",
"NBYZ": "鄞州銀行",
"LSBC": "臨商銀行",
"BOCD": "承德銀行",
"SDRCU": "山東農信",
"NCB": "南昌銀行",
"TCCB": "天津銀行",
"WJRCB": "吳江農商銀行",
"CBBQS": "城市商業銀行資金清算中心",
"HBRCU": "河北省農村信用社"
}
4、銀行LOGO圖片地址
通過 https://apimg.alipay.com/combo.png?d=cashier&t= 拼接銀行代碼即可,這個鏈接支持同時多個銀行
比如 https://apimg.alipay.com/combo.png?d=cashier&t=ICBC 就是工商銀行的
比如 https://apimg.alipay.com/combo.png?d=cashier&t=ICBC,ABC 就是工商銀行和農業銀行的