murilosandiego / pagamento
用于通过发送文件和读取回执来生成付款的包。yii2-boleto-remessa项目的分支
dev-master
2020-08-06 17:37 UTC
Requires
- php: >=5.6.0
- ext-intl: *
- ext-mbstring: *
- nesbot/carbon: ^2.16
Requires (Dev)
- phpunit/phpunit: ^8
This package is auto-updated.
Last update: 2024-09-07 06:31:07 UTC
README
通过发送文件和读取回执来生成付款的包。
需求
支持的银行
✴️ 需要认证
安装
通过 composer
composer require murilosandiego/pagamento:dev-master
或手动添加到您的 composer.json
"murilosandiego/pagamento": "dev-master"
发送
生成付款
创建公司或收款人
$empresa = new \Murilo\Pagamento\Pessoa( [ 'nome' => 'ACME', 'endereco' => 'Rua UM', 'numero' => '123', 'bairro' => 'Bairro', 'cep' => '99999-999', 'uf' => 'UF', 'cidade' => 'Cidade', 'documento' => '99.999.999/0001-99', ] ); $favorecido = new \Murilo\Pagamento\Pessoa( [ 'nome' => 'Favorecido', 'endereco' => 'Rua Um', 'numero' => '123', 'bairro' => 'Bairro', 'cep' => '00000-000', 'uf' => 'UF', 'cidade' => 'Cidade', 'documento' => '999.999.999-99', ] );
创建付款
$pagamento = new \Murilo\Pagamento\Pagamento\Banco\Sicredi( [ 'data' => new \Carbon\Carbon(), 'finalidade' => '00011', 'valor' => 10, 'numeroDocumento' => 1, 'banco' => 237, 'agencia' => 9999, 'conta' => 999999, 'contaDv' => 9, 'favorecido' => $favorecido ] );
生成发送文件
$remessa = new \Murilo\Pagamento\Cnab\Remessa\Cnab240\Banco\Sicredi( [ 'agencia' => 9999, 'agenciaDv' => 9, 'carteira' => '1', 'conta' => 99999, 'contaDv' => 9, 'idremessa' => 1, 'beneficiario' => $empresa, 'codigoCliente' => '99AA' ] ); // Adicionar um pagamento $remessa->addPagamento($pagamento); // Ou para adicionar um array de pagamentos $pagamentos = []; $pagamentos[] = $pagamento1; $pagamentos[] = $pagamento2; $pagamentos[] = $pagamento3; $remessa->addPagamentos($pagamentos); //Gerar remessa echo $remessa->gerar(); //Salvar remessa echo $remessa->save(__DIR__ . DIRECTORY_SEPARATOR . 'arquivos' . DIRECTORY_SEPARATOR . 'sicredi_pagamento.txt');
回执
处理回执
$retorno = \Murilo\Pagamento\Cnab\Retorno\Factory::make('/caminho/para/arquivo.RET'); $retorno->processar(); echo $retorno->getBancoNome(); // Retorno implementa \SeekableIterator, sendo assim, podemos utilizar o foreach da seguinte forma: foreach($retorno as $registro) { var_dump($registro->toArray()); } // Ou também podemos: $detalheCollection = $retorno->getDetalhes(); foreach($detalheCollection as $detalhe) { var_dump($detalhe->toArray()); } // Ou até mesmo do jeito laravel $detalheCollection->each(function ($detalhe, $index) { var_dump($detalhe->toArray()) });
可用的方法
$retorno->getDetalhes(); $retorno->getHeader(); $retorno->getTrailer();
作者
- Murilo Sandiego - 初始工作 - murilosandiego
- Silas Ribas - 提交者 - silasrm
许可证
该项目受MIT许可证许可 - 有关详细信息,请参阅LICENSE.md文件