diorgesl/diorgesbb

巴西银行试点API的Boleto

0.0.14 2020-10-08 23:07 UTC

This package is auto-updated.

Last update: 2024-09-10 02:50:53 UTC


README

Latest Version on Packagist Total Downloads Build Status StyleCI

适用于Laravel的包,用于使用巴西银行试点项目进行Boleto注册/验证的API,兼容Laravel 5至8。

巴西银行试点API用于通过OAuth通信在银行直接注册/列出/修改和下载Boleto。

请联系您的银行经理以获取使用API的权限。

安装

通过Composer

$ composer require diorgesl/diorgesbb

使用方法

配置文件

php artisan vendor:publish --provider="Diorgesl\DiorgesBB\DiorgesBBServiceProvider"

配置config/diorgesbb.php文件,以包含API的访问数据。

要注册Boleto

<?php 
use Diorgesl\DiorgesBB\Boletos;
use Diorgesl\DiorgesBB\Boleto;
use Diorgesl\DiorgesBB\Pagador;

$boletos = new Boletos();

// O pagador será definido como CPF ou CNPJ baseado no tamanho do numeroRegistro
$pagador = new Pagador([
    'numeroRegistro' => '979.659.401-32',
    'nome' => 'CLIENTE TESTE',
    'endereco' => 'RUA TESTE',
    'bairro' => 'BRASILIA',
    'cidade' => 'BRASIL',
    'cep' => '10304-210',
    'uf' => 'MS'
]);

// Todos os campos aqui tem explicação na classe Boleto (as informações contidas lá foram retiradas do Swagger da API)
$boleto = new Boleto([
    "codigoModalidade" => 1,
    "dataEmissao" => "29.09.2020",
    "dataVencimento" => "30.10.2020",
    "valorOriginal" => 109.90,
    "codigoAceite" => "N",
    "codigoTipoTitulo" => 10,
    "descricaoTipoTitulo" => "Duplicata Mercantil",
    "indicadorPermissaoRecebimentoParcial" => "N",
    "numeroTituloBeneficiario" => "123456",
    "numeroTituloCliente" => 43832319,
    "pagador" => $pagador,
]);

$ret = $boletos->registrar($boleto);

var_dump($ret);

银行响应

{
   "numero":"00031285570043832319",
   "numeroCarteira":17,
   "numeroVariacaoCarteira":35,
   "codigoCliente":704950857,
   "linhaDigitavel":"00190000090312855700043832319172884240000010990",
   "codigoBarraNumerico":"00198842400000109900000003128557004383231917",
   "numeroContratoCobranca":19581316,
   "beneficiario":{
      "agencia":452,
      "contaCorrente":123873,
      "tipoEndereco":0,
      "logradouro":"Cliente nao localizado ou sem enderecos validos.",
      "bairro":"",
      "cidade":"",
      "codigoCidade":0,
      "uf":"",
      "cep":0,
      "indicadorComprovacao":""
   },
   "quantidadeOcorrenciasNegativacao":"0",
   "listaOcorrenciasNegativacao":[
      
   ]
}

其他功能

注销Boleto

<?php 
use Diorgesl\DiorgesBB\Boletos;

$boletos = new Boletos();

$boletos->baixar(12345);

银行响应

{
  "numeroContratoCobranca": "19581316",
  "dataBaixa": "01.10.2020",
  "horarioBaixa": "15:04:33"
}

列出Boleto

<?php 
use Diorgesl\DiorgesBB\Boletos;

$boletos = new Boletos();

// Retornar todos os boletos baixados/liquidados no periodo do movimento
$boletos = $boletos->boletos([
    "indicadorSituacao" => "B", // A = em aberto (Padrão), B = Baixados/Protestados/Liquidados
    "dataInicioMovimento" => "01.10.2020",
    "dataFimMovimento" => "20.10.2020", 
]);

// Retornar todos os boletos de um CPF/CNPJ
// Todos os boletos em aberto do CPF
$boletos = $boletos->boletos([
    //"indicadorSituacao" => "A", // A = em aberto (Padrão), B = Baixados/Protestados/Liquidados
    "cpfPagador" => 979659401,
    "digitoCPFPagador" => 32,
]);

//Todos os boletos em aberto do CNPJ 
$boletos = $boletos->boletos([
    "cnpjPagador" => 196152360001,
    "digitoCNPJPagador" => 27,
]);

详细查看Boleto

<?php 
use Diorgesl\DiorgesBB\Boletos;

$boletos = new Boletos();
// Busca o boleto com ID 123456
$boleto = $boletos->boleto(123456);
var_dump($boleto);

银行响应

{
   "numeroContratoCobranca":"19581316",
   "codigoEstadoTituloCobranca":1,
   "codigoTipoTituloCobranca":10,
   "codigoModalidadeTitulo":1,
   "codigoAceiteTituloCobranca":"N",
   "codigoPrefixoDependenciaCobrador":14,
   "codigoIndicadorEconomico":9,
   "numeroTituloCedenteCobranca":"123456",
   "dataEmissaoTituloCobranca":"29.09.2020",
   "dataRegistroTituloCobranca":"30.09.2020",
   "dataVencimentoTituloCobranca":"30.10.2020",
   "valorOriginalTituloCobranca":109.9,
   "valorAtualTituloCobranca":109.9,
   "valorPagamentoParcialTitulo":0,
   "valorAbatimentoTituloCobranca":0,
   "percentualImpostoSobreOprFinanceirasTituloCobranca":0,
   "valorImpostoSobreOprFinanceirasTituloCobranca":0,
   "valorMoedaTituloCobranca":0,
   "quantidadeParcelaTituloCobranca":0,
   "dataBaixaAutomaticoTitulo":"30.10.2021",
   "textoCampoUtilizacaoCedente":"",
   "indicadorCobrancaPartilhadoTitulo":"N",
   "valorMoedaAbatimentoTitulo":0,
   "dataProtestoTituloCobranca":"",
   "numeroCarteiraCobranca":17,
   "numeroVariacaoCarteiraCobranca":35,
   "quantidadeDiaProtesto":0,
   "quantidadeDiaPrazoLimiteRecebimento":360,
   "dataLimiteRecebimentoTitulo":"25.10.2021",
   "indicadorPermissaoRecebimentoParcial":"N",
   "textoCodigoBarrasTituloCobranca":"00197842400000109900000003128557000000123456",
   "codigoOcorrenciaCartorio":0,
   "indicadorDebitoCreditoTitulo":0,
   "valorImpostoSobreOprFinanceirasRecebidoTitulo":0,
   "valorAbatimentoTotal":0,
   "valorCreditoCedente":0,
   "codigoTipoLiquidacao":0,
   "dataCreditoLiquidacao":"",
   "dataRecebimentoTitulo":"",
   "codigoPrefixoDependenciaRecebedor":0,
   "codigoNaturezaRecebimento":0,
   "codigoResponsavelAtualizacao":"",
   "codigoTipoBaixaTitulo":0,
   "valorReajuste":0,
   "valorOutroRecebido":0,
   "codigoIndicadorEconomicoUtilizadoInadimplencia":0,
   "sacado":{
      "codigoTipoInscricaoSacado":1,
      "numeroInscricaoSacadoCobranca":97965940132,
      "nomeSacadoCobranca":"CLIENTE TESTE",
      "textoEnderecoSacadoCobranca":"RUA TESTE",
      "nomeBairroSacadoCobranca":"TESTE",
      "nomeMunicipioSacadoCobranca":"BRASILIA",
      "siglaUnidadeFederacaoSacadoCobranca":"DF",
      "numeroCepSacadoCobranca":79000000,
      "valorPagoSacado":0,
      "numeroIdentidadeSacadoTituloCobranca":""
   },
   "sacador":{
      "codigoTipoInscricaoSacador":1,
      "numeroInscricaoSacadorAvalista":97965940132,
      "nomeSacadorAvalistaTitulo":"CLIENTE TESTE"
   },
   "multa":{
      "percentualMultaTitulo":0,
      "valorMultaTituloCobranca":0,
      "dataMultaTitulo":"",
      "valorMultaRecebido":0
   },
   "desconto":{
      "percentualDescontoTitulo":0,
      "dataDescontoTitulo":"",
      "valorDescontoTitulo":0,
      "codigoDescontoTitulo":0,
      "valorDescontoUtilizado":0,
      "segundoDesconto":{
         "percentualSegundoDescontoTitulo":0,
         "dataSegundoDescontoTitulo":"",
         "valorSegundoDescontoTitulo":0,
         "codigoSegundoDescontoTitulo":0
      },
      "terceiroDesconto":{
         "percentualTerceiroDescontoTitulo":0,
         "dataTerceiroDescontoTitulo":"",
         "valorTerceiroDescontoTitulo":0,
         "codigoTerceiroDescontoTitulo":0
      }
   },
   "juroMora":{
      "codigoTipoJuroMora":0,
      "percentualJuroMoraTitulo":0,
      "valorJuroMoraTitulo":0,
      "dataJuroMoraTitulo":"",
      "valorJuroMoraRecebido":0
   }
}

变更日志

有关最近更改的更多信息,请参阅变更日志

测试

$ composer test

贡献

有关详细信息以及待办事项列表,请参阅contributing.md

安全

如果您发现任何安全问题,请通过diorges@gis.net.br发送电子邮件,而不是使用问题跟踪器。

鸣谢

许可证

MIT。有关更多信息,请参阅许可证文件