This commit is contained in:
邹宗楠
2025-07-04 10:03:17 +08:00
parent e57de856e7
commit 0b11cd2ec6
6 changed files with 69 additions and 14 deletions

View File

@@ -424,3 +424,50 @@ func (a *API) SeparateQueryAmt(merchantNo, logNo, logDate string) (*SeparateQuer
return resp, err
}
// QueryCarBin 卡BIN查询
func (a *API) QueryCarBin(orderNo, orgCode, cardNo string) (*BinInfo, error) {
reqData := map[string]string{
"version": "1.0",
"orderNo": orderNo,
"orgCode": orgCode,
"cardNo": cardNo,
}
reqParameter := map[string]interface{}{
"reqData": reqData,
"ver": Version,
"timestamp": utils.Int64ToStr(time.Now().Unix()),
"reqId": utils.GetUUID(),
}
result, err := a.AccessAPISign(SeparateAccountTestUrl, SeparateCardBinAction, http.MethodPost, "", reqParameter)
if err != nil {
return nil, err
}
if result["retCode"].(string) != Success {
return nil, fmt.Errorf(result["retMsg"].(string))
}
bodyResult, err := json.Marshal(result["respData"])
if err != nil {
return nil, err
}
resp := &BinInfo{}
if err = json.Unmarshal(bodyResult, resp); err != nil {
return nil, err
}
return resp, err
}
type BinInfo struct {
cardBin string `json:"cardBin"` // 卡bin
BankCode string `json:"bankCode"` // 开户行号
OrderNo string `json:"orderNo"` // 订单号
CardName string `json:"cardName"` // 卡种名称
OrgCode string `json:"orgCode"` // 机构代码
CardType string `json:"cardType"` // 银行卡类别
BankName string `json:"bankName"` // 开户行名称
ClearingBankCode string `json:"clearingBankCode"` // 清算行号
CardNo string `json:"cardNo"` // 银行卡号
}