🎁 Get the FREE AI Skills Starter GuideSubscribe →
BytesAgainBytesAgain
🦀 ClawHub

China Bankcard

by @tobewin

中国银行卡号解析与验证。Use when the user provides a Chinese bank card number and wants to identify the issuing bank, card type (借记卡/信用卡), card organization (银联/Visa/Mas...

Versionv1.0.0
Downloads380
TERMINAL
clawhub install china-bankcard

📖 About This Skill


name: china-bankcard description: 中国银行卡号解析与验证。Use when the user provides a Chinese bank card number and wants to identify the issuing bank, card type (借记卡/信用卡), card organization (银联/Visa/MasterCard/AmEx/JCB), card length, or validate the Luhn checksum. Covers top 20 Chinese banks. Fully offline — no network, no API key required. version: 1.0.0 license: MIT-0 metadata: openclaw: emoji: "💳"

中国银行卡解析 China Bank Card Parser

解析银行卡号的发卡行、卡种、卡组织,并验证 Luhn 校验码。完全离线,零依赖。

触发时机

  • 用户提供银行卡号,询问是哪家银行、什么卡种
  • "帮我验证一下这个银行卡号是否合法"
  • "这张卡是借记卡还是信用卡"
  • "这是银联卡还是 Visa 卡"
  • 表单校验、支付场景、银行卡信息核对

  • 第一步:格式预处理

    1. 去除空格、横线等分隔符(如 6222-0200-0000-0000)
    2. 验证全部为数字
    3. 验证长度:国内银行卡一般为 16-19 位
       - 13位:极少数旧卡
       - 15位:AmEx(运通卡)
       - 16位:最常见(Visa/MasterCard/银联大部分)
       - 17位:少数银联卡
       - 18位:部分银联借记卡
       - 19位:农行、邮储等部分借记卡
    


    第二步:卡组织识别(按首位数字)

    根据 ISO/IEC 7812 规范,通过卡号首位或前几位快速识别卡组织:

    4 开头        → Visa(国际卡组织)
    5 开头        → MasterCard(万事达,国际卡组织)
    6 开头        → 通常为银联(UnionPay)
      62 开头     → 银联标准卡(主流,可境外使用)
      60/63-69 开头→ 银联或其他
    34/37 开头    → American Express(美国运通,15位)
    35 开头       → JCB(日本信用局)
    9 开头        → 早期银联国内专用卡(仅限境内)
    


    第三步:BIN 号识别(前6位对应发卡行)

    匹配规则

    从卡号前6位(BIN)查找下表,优先匹配更长的前缀(部分银行使用7-8位BIN)。

    主流银行 BIN 号对照表

    #### 中国工商银行(ICBC)

    借记卡(银联):
      620200  620302  620402  620403  620404  620406
      621225  621226  621227  621228  621229
      622200  622201  622202  622203  622208  622210
      622211  622212  622213  622214  622215  622216
      622217  622218  622219  622220  622221  622222
      622223  622224  622225  622226  622227  622228
      622229  622230  622231  622232  622233  622234
      622235  622236  622237  622238  622239
    信用卡(银联贷记卡):
      622230  622231  622232  622233  622234  622235
    信用卡(Visa):
      427020  427030
    信用卡(MasterCard):
      530990
    信用卡(AmEx 运通):
      370246  370247  370248  370249
    

    #### 中国建设银行(CCB)

    借记卡(银联):
      621284  621467  621598  621700  622280
      622700  622966  623211  625908  625910
      436742(VISA借记卡)
    信用卡(银联):
      622700  622702  622703  622707
    信用卡(Visa):
      436745  458123
    

    #### 中国农业银行(ABC)

    借记卡(银联):
      622210  622211  622212  622213  622214
      622220  622223  622225  622229  622230
      622231  622232  622233  622234  622235
      622236  622238  622239  622240
      622848(农行常见)
      103000(19位旧卡)
    信用卡(银联):
      622750  622751  622752  622753  622754
    

    #### 中国银行(BOC)

    借记卡(银联):
      621660  621661  621662  621663  621665
      622760  622761  622762  622763  622764
      622765  622766  622767  622768  622770
    信用卡(银联):
      622750  622752  622757  622758  622759
    信用卡(Visa):
      400937  400938  409666  438088
    信用卡(JCB):
      356833  356835
    

    #### 中国邮政储蓄银行(PSBC)

    借记卡(银联):
      621098  621099  622150  622151  622188
      622450  622451  622452  622453  622454
      622455  622456  622457  622458  622459
      622460  622461
    

    #### 交通银行(BOCOM)

    借记卡(银联):
      622260  622261  622262  622263  622264
      622265
    信用卡(Visa):
      458123  402674(部分)
    信用卡(MasterCard):
      521899
    

    #### 招商银行(CMB)

    借记卡(银联):
      622576  622578  622580  622581  622582
      622583  628262  628362
    信用卡(银联):
      622575  622577  622579
    信用卡(Visa):
      439225  439226  439228
    信用卡(MasterCard):
      552583  552584  552585  552586  552588  552589
      545619
    信用卡(JCB):
      356885  356886  356887  356888  356889  356890
    信用卡(AmEx 运通):
      376968  376969(双币卡)
    

    #### 中信银行(CITIC)

    借记卡(银联):
      622680  622688  622689  622690
    信用卡(银联):
      622916  622918  622919
    信用卡(Visa):
      400360  403391  403392  403393  404157
      404158  404159  404171  404172  404173  404174  433666  433667  433668  433669
    信用卡(MasterCard):
      514906  518212  520108  556617  558916
    信用卡(AmEx 运通):
      376966  376969
    

    #### 中国光大银行(CEB)

    借记卡(银联):
      622303  622304  622305  622306  622307
    信用卡(银联):
      303781
    信用卡(贷记卡):
      356837  356838  356839  356840
    

    #### 兴业银行(CIB)

    借记卡(银联):
      622908  622909  622910  622911  622912
    信用卡(Visa):
      451289
    

    #### 浦发银行(SPDB)

    借记卡(银联):
      622520  622521  622522  622523  622524
    信用卡(银联):
      622525  622526  622527
    

    #### 民生银行(CMBC)

    借记卡(银联):
      622622  622623  622624  622625  622626
      6226(早期16位卡)
    

    #### 广发银行(GDB)

    借记卡(银联):
      622568  622569  622570  622571  622572
    信用卡:
      102033(18位旧卡)
    

    #### 平安银行(PAB)

    借记卡(银联):
      622986  622987  622988  622989  622990
    信用卡(银联):
      622155  622156  622157  622158
    

    #### 华夏银行(HXB)

    借记卡(银联):
      622630  622631  622632  622633  622634
    

    #### 北京银行(BOBJ)

    借记卡(银联):
      602969  622892(部分)
    

    #### 上海银行(SHBANK)

    借记卡(银联):
      622892
    信用卡(Visa):
      402674
    信用卡(JCB):
      356827  356828
    

    #### 宁波银行(NBCB)

    借记卡(银联):
      622841  622842  622843  622844
    

    #### 南京银行(NJCB)

    借记卡(银联):
      622669  622670  622671
    

    #### 中原银行 / 郑州银行等城商行

    如未在上表找到:告知用户为城商行/农商行/村镇银行,
    BIN数据库未收录,建议用户通过银行官方渠道核实
    


    第四步:Luhn 校验算法(必须执行)

    目前银联卡几乎都支持校验码算法,但极个别不支持,如杭州银行早期发行的西湖卡。

    计算步骤:

    1. 从卡号最后一位(校验位)开始,从右往左编号:
       位置1=最右,位置2=倒数第二,以此类推

    2. 奇数位(1,3,5...)= 原值不变 偶数位(2,4,6...)= 原值 × 2 若结果 > 9,则减去 9(等价于十位与个位相加)

    3. 所有结果求和

    4. 总和 mod 10 = 0 → 校验通过 ≠ 0 → 校验失败

    示例(卡号 6222020000000000):

    位置: 16 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1
    数字:  6  2  2  2  0  2  0  0  0  0  0  0  0  0  0  0
    偶位:  ×2    ×2    ×2    ×2    ×2    ×2    ×2    ×2
    结果: 12  2  4  2  0  2  0  0  0  0  0  0  0  0  0  0
    >9?:  -9
    最终:  3  2  4  2  0  2  0  0  0  0  0  0  0  0  0  0
    求和: 13 → 13 mod 10 = 3 ≠ 0 → 此为示例,实际需真实卡号
    


    格式化输出

    识别成功

    💳 银行卡解析结果
    ━━━━━━━━━━━━━━━━━━━━
    卡号:6225 ** ** 5678(已脱敏)
    Luhn校验:✅ 合法

    发卡行:招商银行 卡组织:银联(UnionPay) 卡种:借记卡 卡号长度:16位 可境外使用:是(62开头银联国际卡)

    信用卡示例

    💳 银行卡解析结果
    ━━━━━━━━━━━━━━━━━━━━
    卡号:5525 ** ** 5678(已脱敏)
    Luhn校验:✅ 合法

    发卡行:招商银行 卡组织:MasterCard(万事达) 卡种:信用卡(贷记卡) 卡号长度:16位 可境外使用:是

    未知发卡行

    💳 银行卡解析结果
    ━━━━━━━━━━━━━━━━━━━━
    卡号:6228 ** ** 5678(已脱敏)
    Luhn校验:✅ 合法

    卡组织:银联(62开头) 发卡行:未知(BIN号未收录) 说明:可能为城商行、农商行或村镇银行发行的银联卡, 格式合法但发卡行信息需通过银行官方渠道核实

    校验失败

    💳 银行卡验证结果
    ━━━━━━━━━━━━━━━━━━━━
    卡号:6222 ** ** 5679(已脱敏)
    Luhn校验:❌ 失败

    原因:Luhn 校验码不通过,卡号可能录入有误 建议:请核对原始卡片上的号码,注意不要漏位或错位 注意:极少数银行早期发行的卡不使用Luhn算法,如确认卡号无误请忽略此提示


    隐私处理规则

    输出时对卡号脱敏,保留前4位和后4位:

    原始:6225880187523456
    展示:6225 ** ** 3456
    


    注意事项

  • 本 skill 收录了国内主流20家银行的常见BIN号,城商行/农商行/村镇银行的BIN可能未收录
  • Luhn校验通过≠卡号真实存在,仅代表格式符合算法规则
  • 银联卡几乎都支持Luhn算法,但极个别早期卡例外
  • 2017年央行要求新发银联卡统一使用62开头号段,9开头老卡仅限境内使用
  • BIN号数据库持续更新,新发卡种可能尚未收录