boletosPHP – Biblioteca PHP para tratar informações de boletos bancários

A biblioteca PHP boletosPHP foi desenvolvida no intuito de facilitar o desenvolvimento de aplicações que emitem ou tratam com boletos bancários. Com o uso dela é possível converter dados e extrair informações a partir do código de barras ou linha digitável, ou então montar o código de barras a partir das informações do boleto.

 

Uso

Para usar a biblioteca faça o download AQUI. Descompacte os arquivos e copie a pasta lib para o diretório raiz do seu projeto PHP. Depois, no arquivo PHP onde você deseja usar a biblioteca faça o seguinte:


Pronto, a partir dai o seu objeto boletosPHP está criado e você tem acesso aos métodos da classe. Veja abaixo os métodos.

setIpte(string $ipte)

Este método serve para inserir o valor da linha digitável, quando você já a possui.

setIpte("00190.00009 01243.245006 11244.622178 4 62690000040000");

?>

setBarras(string $codigoDeBarras)

O método setBarras serve para inserir o código de barras no objeto, quando você já possuí o código. Pode ser usado quando você possuí o código em números, mas deseja imprimir as barras.

setBarras("00191626900000400000000001243245001124462217");

?>

setCodBanco(string $codBanco)

Este método pode ser usado para inserir o código do banco no objeto quando você já possui tal código.Cada instituição bancária possui um código único identificador. Veja aqui a lista.

setCodBanco("001");

?>

setCodMoeda(integer $codMoeda)

Como os bancos cada moeda tem seu código identificador, no caso do Real (R$) é o número 9. Este método serve para incluir o código da moeda no objeto.

setCodBanco(9);

?>

setCodVerificador(integer $codVerificador)

O código verificador é usado para validar o código de barras ou a linha digitável, aqui no Clube dos Geeks já falamos sobre ele e ensinamos a calculá-lo.
Veja: Calculando dígito verificador de código de barras de boleto bancário com PHP
O método setCodVerificador() deve ser usado quando você já tem o código verificador.

setCodVerificador(1);

?>

setDtVencimento(string $dtVencimento)

Este método é usado para inserir a data de vencimento do boleto. A data deve ser informada no formato d/m/Y.

setDtVencimento("30/03/2015");

?>

setFatorVencimento(integer $fatorVencimento)

A fator de vencimento é resultante da diferença de dias entre 07/10/1997 e a data de vencimento do boleto. Esta variável está obrigatoriamente presente no código de barras do boleto.

setFatorVencimento("30/03/2015");

?>

setValorDocumento(double $valorDocumento)

Este método serve para inserir o valor do boleto. O valor deve ser informado no formato double, ou string com a seguinte formatação 0,000.00.

setValorDocumento("400.00");

?>

setNossoNumero(string $nossoNumero)

Este método deve ser usado para informar o Nosso Número, outra variável indispensável ao código de barras.

setNossoNumero("12432450011244622");

?>

setCarteira(string $carteira)

Método usado para inserir o número da carteira da empresa que está emitindo o boleto.

setCarteira("12432450011244622");

?>

getIpte(): string

Este método retorna a linha digitável do boleto, também conhecido como ipte. Ele só deve ser usado quando o ipte ou o código de barras já tenham sido informados, ou então quando houverem informações suficientes para que o ipte seja gerado.

getIpte();

?>

getBarras(): string

Este método retorna os números do código de barras.

getBarras();

?>

getCodBanco(): string

Este método retorna o código do banco.

getCodBanco();

?>

getCodMoeda(): string

Este método retorna o código da moeda utilizada no boleto.

getCodMoeda();

?>

getCodVerificador() :integer

Este método retorna o dígito verificador do código de barras.

getCodVerificador();

?>

getDtVencimento(string $formato): string

Este método retorna a data de vencimento do boleto, você pode passar o formato por parâmetro seguindo os padrões do PHP, como por exemplo: d/m/Y, Y-m-d, etc. Se não for passado nada por parâmetro o formato padrão será d/m/Y.

getDtVencimento("d/m/Y");

?>

getFatorVencimento(): integer

Este método retorna o fator de vencimento do boleto, que é o número que representa a diferença de dias entre 07/10/1997 e a data de vencimento do boleto.

getFatorVencimento();

?>

getValorDocumento(string $centavos, string $milhar)

O método getValorDocumento() retorna o valor do boleto com formatação padrão #,###.##. A formatação pode ser mudada usando os parâmetros centavos (divisor para os centavos) e milhar (divisor para o milhar).

 getValorDocumento();

?>

getNossoNumero(): string

O método a cima retorna o nosso número do boleto.

 getNossoNumero();

?>

getCarteira(): integer

Este método retorna o número da carteira.

 getCarteira();

?>

desenhaBarras()

Este método desenha as barras do código de barras no documento html pronta para ser impressa e lida por qualquer dispositivo.

desenhaBarras();

?>

Untitled-2.fw

Qualquer dúvida deixe um comentário.

Pax et bonum

Jayr Alencar

Doutorando em Ciências da Computação no Centro de Informática da Universidade Federal do Pernambuco (CIn - UFPE); Mestre pela mesma instituição; Formado em Análise e Desenvolvimento de Sistemas; Católico; Fã de O Senhor do Anéis.

Você pode gostar...

14 Resultados

  1. Márcio Mazzucato disse:

    Parabéns, Jayr! Sua classe foi extremamente útil para mim, eu estava precisando gerar o código de barras a partir da linha digitável.

    Valeu, um abraço!

  2. Wesley Rodrigues disse:

    Mais é compatível em pagamento gerado esse código de barras?

  3. Leonardo Matos disse:

    Como fazer nos casos de boleto de contas de consumo (água, luz, telefone, gás, etc…)? Os blocos da linha digitável são diferentes. Como interpretar uma linha digitável, neste caso?

    • Dornelas disse:

      Essa classe trata de código de barras para boletos bancários. O que vc está procurando é código de barras para títulos de arrecadação. São coisas distintas.

  4. Bruno disse:

    Estou usando uma maquina daquelas que le o codigo de barras, e o valor que gera do codigo de barras, ao colocar na biblioteca, eles nao tras os valores corretos. Só se eu formatar certinho, colocar os pontos e espaços, e dar o setIpte, com o setBarras, está dando um valor totalmente errado.

  5. Wallace disse:

    Estou há 3 dias, tentando fazer isso, quebrei muito a cabeça… Eu já tinha pesquisado muito sobre como converter a linha digitável para o código de barras e não encontrava como fazer… Só achei o seu site, porque descobri a palavra “IPTE” e pesquisei pela mesma… Funcionou PERFEITAMENTE… Salvou a minha semana, Muitíssimo Obrigado!!!

  6. Jeandro disse:

    Olá Jayr, quando tendo usar o setIpte, recebo o seguinte erro:
    Undefined variable: ipte in C:\zPastao\PortableApps\UwAmp\www\xbarras\lib\boletosPHP.php on line 216

  7. tony disse:

    muito obrigadooooooooo, tava a uns 4 dia em busca disso conseguirachar e funciono perfeitamente, eu precisava obter o codigo de barras(codigo nao imagem) tendo somente a linha digitavel, sua classe foi perfeita, valeu mano muito obrigado mesmo

  8. THIAGo disse:

    Tem página no github e possibilidade de instalar com composer?

Deixe um comentário para Jayr Alencar Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *