broleto
v0.0.12
Published
Valide e/ou obtenha dados de boletos bancário ou arrecadação de forma fácil.
Maintainers
Readme
Instalação
npm install broleto --save
ou
yarn add broleto
Uso
import { Boleto } from "broleto"
const boleto = new Boleto('34191091070000013555851122200002157810000115300');Verificando se o boleto é válido
boleto.valid();
// output
trueObtendo o banco emissor
Caso o boleto seja de arrecadação ou o banco não esteja mapeado na biblioteca será retornado uma string Unknown
boleto.banks();
// output
'Itaú Unibanco S.A'Obtendo o tipo de código/numeração do boleto
Essa função irá retornar se o boleto é LINHA DIGITAVEL, CODIGO DE BARRAS ou INVALIDO.
boleto.codeType();
// output
'LINHA DIGITAVEL'Obtendo o tipo boleto
Essa função irá retornar se o boleto é ARRECADACAO ou BANCO.
Em caso de ARRECADACAO é retornado um subtipo que podem ser os seguintes valores:
ARRECADACAO_PREFEITURA, CONVENIO_SANEAMENTO, CONVENIO_ENERGIA_ELETRICA_E_GAS,
CONVENIO_TELECOMUNICACOES, ARRECADACAO_ORGAOS_GOVERNAMENTAIS, OUTROS,
ARRECADACAO_TAXAS_DE_TRANSITO ou '' (string vazia)
boleto.type();
// output
{
type: 'BANCO',
subtype: '',
}Obtendo a data de vencimento
boleto.expirationDate();
// output
2013-08-05T00:00:00.000ZVerificando se boleto está vencido
boleto.expired();
// output
trueObtendo a quantidade de dias que o boleto está vencido
Caso o boleto não esteja é retornado o valor 0
boleto.expiredDays();
// output
2434Obtendo o valor do boleto
boleto.amount();
// output
1153Calculando juros
Disponibilizamos também a possibilidade de calcular juros do boleto. O método pode receber até 4 parâmetros.
Exemplo:
boleto.interest(interestValue, expiredDays = false, percent = true, month = true)
interestValue- é um valor numérico que corresponde a porcentagem ou valor cobrado como juros.expiredDays- pode receber ou um valor numerico que se refere a quantidade de dias vencidos do boleto ou um valor booleano (false) caso queira que a quantidade de dias vencidos usado no cálculo do juros seja obtido de forma automática, por padrão esse valor éfalse.percent- é um valor booleano que por padrão étruerefere-se ao tipo do valor informado. Em caso de true isso quer dizer que o valor informado parainterestValueno calculo é em porcentagem. Caso informe false ointerestValuepassa a ser compreendido como valor em reais.month- Informa como o juros é calculado, se é ao mês ou ao dia. Por padrão o valor étrue, ou seja, no calculo o juros cobrado será ao mês. Caso queria informar que o juros é calculado ao dia, informefalsepara este parâmetro.
boleto.interest(1, false, true, true);
// ou somente
boleto.interest(1);
// output
935.46Calculando multas
Disponibilizamos também a possibilidade de calcular multa do boleto. O método pode receber até 2 parâmetros.
Exemplo:
boleto.fines(finesValue, percent = true)
finesValue- é um valor numérico que corresponde a porcentagem ou valor cobrado como multa.percent- é um valor booleano que por padrão étruerefere-se ao tipo do valor informado. Em caso detrueisso quer dizer que o valor informado parafinesValueno calculo é em porcentagem. Caso informefalseofinesValuepassa a ser compreendido como valor em reais.
boleto.fines(17, false);
// output (nesse caso o boleto possui 17 reais de multa)
17
// ou
boleto.fines(1);
// output (1% de multa)
11.53Obtendo todas as informações
Existe um método que agrupa as demais informações sobre um boleto.
boleto.toJSON();
// output
{
barcode: '34191578100001153001091000000135555112220000',
codeType: 'LINHA DIGITAVEL',
type: 'BANCO',
expirationDate: 2013-08-05T00:00:00.000Z,
expired: true,
expiredDays: 2434,
banks: 'Itaú Unibanco S.A',
amount: 1153,
prettyAmount: 'R$ 1.153,00',
valid: true
}Como contribuir
- Faça um Fork desse repositório,
- Faça um clone do respositório criado a partir do fork:
git clone https://github.com/<seu username>/broleto.git - Crie uma branch com a sua feature:
git checkout -b feat/minha-feature-de-examplo - Commit suas mudanças:
git commit -m "feat: Minha nova feature"(Ver regras para commits) - Faça o push da sua branch:
git push origin feat/minha-feature-de-examplo - Ir em pull requests do projeto original e crie uma pull request com o seu commit.
Regras para commits
- Para cada commit siga a padronização do commitlint
- evite commits acima de 70 caracteres
Contribuidores
License
MIT © Jardel Gonçalves
