hello-solucoes / bbboleto
巴西银行汇票
1.0.6
2020-10-22 15:37 UTC
Requires
- php: >=7.0
- guzzlehttp/guzzle: ~6.0
- illuminate/contracts: ^5.1
- illuminate/support: ^5.1
- jefersondaniel/novoboletophp: 0.5.*
- league/fractal: ^0.17.0
- mikehaertl/php-tmpfile: ^1.1
- nesbot/carbon: ^1.29
README
与巴西银行 Web 服务集成的标题/汇票注册
安装
Composer
composer require ewersonfc/bbboleto
如果您愿意,可以直接在您的 composer.json 文件中添加。
"ewersonfc/bbboleto": "^1.0.4"
使用方法
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;
说明
要添加打印在汇票上的说明,需要填写“说明”实体并在 BoletoRequest 中“设置”。
下面添加的说明将打印在汇票上,它们与折扣、利息、罚金以及与应向付款人展示的信息相关的任何特定性有关。
// ... 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) // ...
折扣
要在汇票中添加折扣说明,需要填写“折扣”实体并在 BoletoRequest 中“设置”。
注意:折扣是可选的,如果没有折扣的标题,则无需填写此实体,也无需在 Request 中“设置”。
// ... 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) // ...
利息
要在汇票中添加利息说明,需要填写“利息”实体并在 BoletoRequest 中“设置”。
利息具有一系列提供的信息,如果传递方式不正确,银行将不接受数据,因此不会注册汇票。
注意:利息是可选的,如果没有折扣的标题,则无需填写此实体,也无需在 Request 中“设置”。
// ... 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) // ...
罚金
要在汇票中添加罚金说明,需要填写“罚金”实体并在 BoletoRequest 中“设置”。
罚金与利息一样,具有一系列提供的信息,如果传递方式不正确,银行将不接受数据,因此不会注册汇票。
注意:罚金是可选的,如果没有折扣的标题,则无需填写此实体,也无需在 Request 中“设置”。
// ... 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) // ...
担保人
要在汇票中添加担保人,需要填写“罚金”实体并在 BoletoRequest 中“设置”。
注意:担保人是可选的,如果没有折扣的标题,则无需填写此实体,也无需在 Request 中“设置”。
// ... 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) // ...