Biblioteca para validar boletos.
Suporta boletos de arrecadação e boletos bancários, tanto a representação do código de barras como a linha digitável.
Todas as validações podem ser feitas com ou sem máscara.
85890000460 52460179160 60759305086 83148300001
85890000460-9 52460179160-5 60759305086-5 83148300001-0
84890000000404201622018060519042958603411122
23793.38128 60007.827136 95000.063305 9 75520000370000
npm install boleto-brasileiro-validator --save
import { boleto } from 'boleto-brasileiro-validator';
boleto('23793.38128 60007.827136 95000.063305 9 75520000370000'); // true
boleto('23793381286000782713695000063305975520000370000'); // true
boleto('836200000005 667800481000 180975657313 001589636081'); // true
boleto('536200000005 667800481000 180975657313 001589636081'); // false
boleto('001933737000000144816060680935031'); // false
import {
boletoArrecadacao, // valida qualquer tipo de boleto de arrecadação
boletoArrecadacaoCodigoBarras, // valida representação númerica do código de barras
boletoArrecadacaoLinhaDigitavel, // valida linha digitável do boleto
} from 'boleto-brasileiro-validator';
boletoArrecadacao('836200000005 667800481000 180975657313 001589636081'); // true
boletoArrecadacaoCodigoBarras('84890000000404201622018060519042958603411122'); // true
boletoArrecadacaoLinhaDigitavel('85890000460-9 52460179160-5 60759305086-5 83148300001-0'); // true
import {
boletoBancario, // valida qualquer tipo de boleto bancário
boletoBancarioCodigoBarras, // valida representação númerica do código de barras
boletoBancarioLinhaDigitavel, // valida linha digitável do boleto
} from 'boleto-brasileiro-validator';
boletoBancario('23793.38128 60007.827136 95000.063305 9 75520000370000'); // true
boletoBancarioCodigoBarras('00193373700000001000500940144816060680935031'); // true
boletoBancarioLinhaDigitavel('23793381286000782713695000063305975520000370000'); // true
Por padrão, a validação individual de cada bloco não é realizada.
Caso esse comportamento seja necessário, as seguintes funções aceitam um parâmetro adicional para habilitar a validação:
boleto('23793.38128 60007.827136 95000.063305 9 75520000370000', true);
boletoBancario('23793381286000782713695000063305975520000370000', true);
boletoBancarioLinhaDigitavel('23793381286000782713695000063305975520000370000', true);
boletoArrecadacao('836200000005667800481000180975657313001589636081', true);
boletoArrecadacaoLinhaDigitavel('836200000005667800481000180975657313001589636081', true);
Regras para validação de boletos bancários: Especificações Técnicas para Confecção de Boleto de Cobrança do Banco do Brasil
Regras para validação de boletos de arrecadação: FEBRABAN - "Layout" Padrão de Arrecadação/Recebimento com Utilização do Código de Barras
This project is licensed under the MIT License - see the LICENSE.md file for details