Costa Rica IBAN
Funciones de Typescript/Javascript útiles para extraer y validar información general de números de cuenta IBAN de Costa Rica.
Esta herramienta fue creada en base al documento Codificaciones Generales Del Sistema De Pagos
del Banco Central de Costa Rica (BCCR). El Jupyter Notebook usado para la extracción de datos puede
ser visualizado en este enlace.
Herramienta en línea
Para validar números de cuenta IBAN y extraer información sobre las entidad bancaria emisora, puede hacerse uso de la siguiente página oficialmente mantenida por los colaboradores de este repositorio:
https://costaricaiban.org
Uso con Node.js
Instalación pnpm:
$ pnpm add costa-rica-iban
Instalación yarn:
$ yarn add costa-rica-iban
Instalación npm:
$ npm install costa-rica-iban
Uso de funciones:
import {
getBankNameFromIBAN,
getBankObjectFromIBAN,
} from 'costa-rica-iban';
let bankAcct = 'CR06010200009123456789';
console.log(getBankNameFromIBAN(bankAcct));
bankAcct = 'CR06083700009123456789';
console.log(getBankNameFromIBAN(bankAcct));
console.log(getBankNameFromIBAN(bankAcct), true);
console.log(getBankObjectFromIBAN(bankAcct));
Funciones disponibles:
getCountryPrefixFromIBAN(iban)
verifyIBANCountryPrefix(iban)
verifyIBANLength(iban)
verifyIBANFormat(iban)
getBankCodeFromIBAN(iban)
getBankObjectFromIBAN(iban)
getBankCategoryFromIBAN(iban)
getBankNameFromIBAN(iban, returnRepresentative = false)
Uso de clase:
import CostaRicaIBAN from 'costa-rica-iban';
const cri = new CostaRicaIBAN('CR06010200009123456789');
console.log(cri.getBankObject());
Funciones de clase disponibles:
.getCountryPrefix()
.getBankCode()
.getBankObject()
.getBankCategory()
.getBankName()
Para más detalles ver las pruebas en ./src/index.test.ts
.
Uso en el navegador
<script src="/dist/costa-rica-iban.min.js"></script>
<script>
var cri = new CostaRicaIBAN('CR06010200009123456789');
document.write(cri.getBankObject());
</script>
Desarrollo
Clonar repositorio e instalar dependencias:
$ pnpm
Usamos TDD, por lo tanto se espera que se agreguen las pruebas pertinentes en ./src/index.test.ts
.
Nuestro motor de pruebas es Jest. Para ejecutar las pruebas simplemente hace falta correr el comando:
$ pnpm test
Colaboración
Este repositorio tiene activados los issues y pull requests.
Para que un pull request sea tomado en cuenta deberá tener:
- un issue que describa la funcionalidad existente que esté rota o la funcionalidad nueva propuesta
- una descripción en el pull request que incluya mención del issue, un detalles de las soluciones/mejoras propuestas, y fuentes usadas para llegar a las soluciones/mejoras propuestas
Colaboradores ✨
Gracias a los colaboradores de este proyecto (emoji key):
Este proyecto sigue la especificación de all-contributors. ¡Colaboraciones de cualquier tipo son bienvenidas!
LICENCIA
Copyright 2020 Jean M. Lescure
Por la presente se concede permiso, libre de cargos, a cualquier persona que obtenga una copia de este software y de los archivos de documentación asociados (el "Software"), a utilizar el Software sin restricción, incluyendo sin limitación los derechos a usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar, y/o vender copias del Software, y a permitir a las personas a las que se les proporcione el Software a hacer lo mismo, sujeto a las siguientes condiciones:
El aviso de copyright anterior y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "COMO ESTÁ", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO PERO NO LIMITADO A GARANTÍAS DE COMERCIALIZACIÓN, IDONEIDAD PARA UN PROPÓSITO PARTICULAR E INCUMPLIMIENTO. EN NINGÚN CASO LOS AUTORES O PROPIETARIOS DE LOS DERECHOS DE AUTOR SERÁN RESPONSABLES DE NINGUNA RECLAMACIÓN, DAÑOS U OTRAS RESPONSABILIDADES, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O CUALQUIER OTRO MOTIVO, DERIVADAS DE, FUERA DE O EN CONEXIÓN CON EL SOFTWARE O SU USO U OTRO TIPO DE ACCIONES EN EL SOFTWARE.