2017-25 © Pedro Peláez
 

library bbboleto

Boleto Banco do Brasil

image

ewersonfc/bbboleto

Boleto Banco do Brasil

  • Thursday, July 26, 2018
  • by Ewersonfc
  • Repository
  • 2 Watchers
  • 4 Stars
  • 8 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 7 Versions
  • 0 % Grown

The README.md

Boleto Registrado Banco do Brasil via Webservice

Latest Stable Version Latest Unstable Version Total Downloads License, (*1)

Integração com Webservice Banco do Brasil para registro de Títulos/Boletos, (*2)

Instalação

Composer

composer require ewersonfc/bbboleto

Se preferir, você pode adicionar direto no seu arquivo composer.json., (*3)

"ewersonfc/bbboleto": "^1.0.4"

Como usar

require 'vendor/autoload.php';

use Ewersonfc\BBboleto\BancoDoBrasil;
use Ewersonfc\BBboleto\Constants\TipoDocumento;
use Ewersonfc\BBboleto\Entities\BeneficiarioEntity;
use Ewersonfc\BBboleto\Entities\PagadorEntity;
use Ewersonfc\BBboleto\Exceptions\BoletoException;
use Ewersonfc\BBboleto\Requests\BoletoRequest;

$bancoDoBrasil = new BancoDoBrasil([
    'clientId' => 'xxxxxxxxxxxxxxxx',
    'clientSecret' => 'xxxxxxxxxxxx',
    'production' => false,
    'formato' => 'pdf ou html',
]);

$beneficiario = new BeneficiarioEntity;
$beneficiario->setTipoDocumento(TipoDocumento::CNPJ)
    ->setDocumento('73.553.069/0001-16')
    ->setNome('Empresa Fictícia Beneficiario');

$pagador = new PagadorEntity;
$pagador->setTipoDocumento(TipoDocumento::CNPJ)
    ->setDocumento('73.553.069/0001-16')
    ->setNome('Empresa Ficticia')
    ->setLogradouro('Avenida Teste, n° 10')
    ->setCep(02015230)
    ->setMunicipio('Teste')
    ->setBairro('Teste')
    ->setUf('SP')
    ->setTelefone(118888888); 

$boletoRequest = new BoletoRequest();
$boletoRequest->setConvenio(xxxxxx)
    ->setCarteira(xx) 
    ->setVariacaoCarteira(xx) 
    ->setDataEmissao('2018-05-01') 
    ->setDataVencimento('15/07/2018') 
    ->setValorOriginal('300.00') 
    ->setDescricaoTipoTitulo("Texto livre")
    ->setSeuNumero('987654321987654') // numero para controle 
    ->setCampoUtilizacaoBeneficiario('0000000')
    ->setCodigoTipoContaCaucao(1)
    ->setNossoNumero('0000000197') // nosso número sequencial do banco 
    ->setPagador($pagador); 

$data = $bancoDoBrasil->register($boletoRequest);
echo $data;

Instruções

Para adicionar instruções que são impressas no boleto, é necessário preencher a entidade Instruções e "setar" no BoletoRequest., (*4)

As instruções adicionadas abaixo serão impressas no boleto, elas estão relacionadas ao desconto, juros, multa e qualquer tipo de especificidade ligada a informação que deve ser apresentada ao pagador., (*5)

// ... code
use Ewersonfc\BBboleto\Entities\InstrucoesEntity

$instrucoes = new InstrucoesEntity;
$instrucoes->setInstrucoes([
    '- instrução 1',
    '- instrução teste 2',
    '- instrução teste 3',
])->setDemonstrativo("Demonstrativo teste");

$boletoRequest = new BoletoRequest();
    //... outros set's
    ->setInstrucoes($instrucoes)
    // ... 

Desconto

Para adicionar a instrução de desconto em seu boleto é necessário preencher a entendidade Desconto e "setar" no BoletoRequest., (*6)

Nota: O desconto é opcional, caso não tenha desconto no título não há necessidade de preencher esta entidade e tbm não há necessidade de "setar" no Request, (*7)

// ... code
use Ewersonfc\BBboleto\Entities\DescontoEntity;
use Ewersonfc\BBboleto\Constants\Desconto;

$desconto = new DescontoEntity;
$desconto->setTipo(Desconto::VALOR)
    ->setData('10/07/2018')
    ->setValor('5.00');

$boletoRequest = new BoletoRequest();
    //... outros set's
    ->setDesconto($desconto)
    // ... 

Juros

Para adicionar a instrução de juros em seu boleto é necessário preencher a entendidade Juros e "setar" no BoletoRequest., (*8)

Juros possui uma combinação de valores informados que se passados de forma incorreta o Banco não aceitará os dados e consequentemente não irá registrar o boleto., (*9)

Nota: O Juros é opcional, caso não tenha desconto no título não há necessiade de preencher esta entidade e tbm não há necessidade de "setar" no Request, (*10)

// ... code
use Ewersonfc\BBboleto\Entities\JurosEntity;
use Ewersonfc\BBboleto\Constants\Juros;

// ... code 
$juros = new JurosEntity;
$juros->setTipo(Juros::VALOR_POR_DIA_DE_ATRASO)
    ->setValor('10.00');

$boletoRequest = new BoletoRequest();
    //... outros set's
    ->setJuros($juros)
    // ... 

Multa

Para adicionar a instrução de multa em seu boleto é necessário preencher a entendidade Multa e "setar" no BoletoRequest., (*11)

A Multa assim como o Juros possui uma combinação de valores informados que se passados de forma incorreta o Banco não aceitará os dados e consequentemente não irá registrar o boleto., (*12)

Nota: A Multa é opcional, caso não tenha desconto no título não há necessiade de preencher esta entidade e tbm não há necessidade de "setar" no Request, (*13)

// ... code
use Ewersonfc\BBboleto\Entities\MultaEntity;
use Ewersonfc\BBboleto\Constants\Multa;

// ... code 
$multa = new MultaEntity;
$multa->setTipo(Multa::VALOR)
    ->setValor('10.00');

$boletoRequest = new BoletoRequest();
    //... outros set's
    ->setMulta($multa)
    // ... 

Avalista

Para adicionar avalista em seu boleto é necessário preencher a entendidade Multa e "setar" no BoletoRequest., (*14)

Nota: O Avalista é opcional, caso não tenha desconto no título não há necessiade de preencher esta entidade e tbm não há necessidade de "setar" no Request, (*15)

// ... code
use Ewersonfc\BBboleto\Constants\TipoDocumento;
use Ewersonfc\BBboleto\Entities\AvalistaEntity;

// ... code 
$avalista = new AvalistaEntity;
$avalista->setTipoDocumento(TipoDocumento::CNPJ)
    ->setDocumento('09.123.123\0001-81')
    ->setNome('Ewerson Carvalho');

$boletoRequest = new BoletoRequest();
    //... outros set's
    ->setAvalista($avalista)
    // ... 

The Versions