JavaScript library to analyze or create a CLABE number for a Mexican bank account
Clave Bancaria Estandarizada (Spanish for "standardized banking cipher") is a banking standard from the Mexican Bank Association (Asociación de Bancos de México – ABM) for uniform numbering of bank accounts. See: https://en.wikipedia.org/wiki/CLABE
Try it out:
https://centerkey.com/clabe
In a web page:
<script src=clabe.min.js></script>
From the jsdelivr.com CDN:
<script src=https://cdn.jsdelivr.net/npm/clabe-validator@1.0/clabe.min.js></script>
In a Node.js project:
$ npm install clabe-validator
const clabe = require('clabe-validator');
Pass the CLABE number as an 18-character string into clabe.validate(clabeNum)
.
const clabeNum = '002010077777777771';
const clabeCheck = clabe.validate(clabeNum);
console.log(clabeCheck.error ? '¡Muy mal!' : '¡Que bueno!');
{
error: false,
bank: 'Banco Nacional de México',
city: 'Aguascalientes'
}
{
error: true,
message: 'Invalid city code'
}
Error message |
---|
Must be exactly 18 digits long |
Must be only numeric digits (no letters) |
Invalid checksum |
Invalid bank code |
Invalid city code |
Pass the bank code, city code, and account number into clabe.calculate(bankCode, cityCode, accountNumber)
and get the 18-character CLABE number back.
const clabeNum = clabe.calculate(2, 10, 7777777777);
console.log(clabeNum === '002010077777777771');
- Feel free to submit questions at: github.com/center-key/clabe-validator/issues
- To be a contributor, fork the project and execute the
task-runner.sh.command
script. Make your edits and rerun the script to ensure all the test cases pass. Pull requests welcome.
CLABE Validator code is open source under the MIT License, and the documentation is published under the CC BY-SA 4.0 license.