-
Notifications
You must be signed in to change notification settings - Fork 317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Boletos Banrisul #144
Comments
consegue um boleto já do banco Banrisul e tenta fazer um igual para você entender como funciona para gerar (confere se o código de barras bate), depois manda um exemplo aqui por PR para todos usarem em samples. |
Alguem conseguiu fazer funcionar? |
Eu consegui gerar tirando a propriedade 'carteira' do array de parâmetros. |
Eu tirei e continua com erros |
Que tipo de erros? |
Atualmente eu uso o boleto do Itau e funciona perfeito. Mas o do Banrisul não funciona |
use OpenBoleto\Banco\Banrisul; $sacado = new Agente('Fernando Maia', '023.434.234-34', 'ABC 302 Bloco N', '72000-000', 'Brasília', 'DF'); $boleto = new Banrisul(array( echo $boleto->getOutput(); |
Erros de execução do PHP. O Boleto do Itau funciona bem. Mas do Banrisul nao |
Oi Pessoal
Evidente que antes disso tem toda preparação das variáveis Abaixo o arquivo Banrisul.php na pasta vendor/OpenBoleto/src/OpenBoleto/Banco, só deem uma conferida sobre os cálculos do DV * @license MIT License * @Version 1.0 */ class Banrisul extends BoletoAbstract { /** * Código do banco * @var string */ protected $codigoBanco = '041'; /** * Localização do logotipo do banco, referente ao diretório de imagens * @var string */ protected $logoBanco = 'banrisul.jpg'; /** * Linha de local de pagamento * @var string */ protected $localPagamento = 'Pagável preferencialmente no Banrisul até o vencimento'; /** * Define o tipo da cobrança: 1 Cobrança Normal, Fichário emitido pelo BANRISUL; 2 Cobrança Direta, Fichário emitido pelo CLIENTE * @var int */ protected $tipoCobranca = 2; /** * Define as carteiras disponíveis para este banco * @var array */ protected $carteiras = array('1', '3', '4', '5', '6', '7', '8', 'C', 'D', 'E', 'F', 'H', 'I', 'K', 'M', 'N', 'R', 'S', 'X'); /** * @return int */ public function getTipoCobranca(): int { return $this->tipoCobranca; } /** * @param int $tipoCobranca */ public function setTipoCobranca(int $tipoCobranca) { $this->tipoCobranca = $tipoCobranca; } /** * Gera o Nosso Número. * * @return string */ protected function gerarNossoNumero() { $nnum = self::zeroFill($this->getSequencial(), 8); $dv = self::zeroFill($this->gerarDigitoVerificadorDuplo(), 2); $nosson = $nnum .'-'.$dv; return $nosson; } /** * Gera o dígito verificador duplo * * @return string */ protected function gerarDigitoVerificadorDuplo() { $sequencial = self::zeroFill($this->getSequencial(), 8); $dv1 = static::modulo10($sequencial); $resto2 = static::modulo11($sequencial . $dv1, 7)['resto']; if ($resto2 == 1) { $dv1++; if ($dv1 == 10) { $dv1 = '0'; } $resto2 = static::modulo11($sequencial . $dv1,7)['resto']; } $digito = 11 - $resto2; if ($digito > 9) { $dv2 = 0; } else { $dv2 = $digito; } return $dv1 . $dv2; } /** * Método para gerar o código da posição de 20 a 44 * * @return string * @throws \OpenBoleto\Exception */ public function getCampoLivre() { return self::zeroFill($this->getTipoCobranca(), 1) . 1 . self::zeroFill($this->getAgencia(), 4) . self::zeroFill($this->getConta(), 7) . self::zeroFill($this->getSequencial(), 8) . 40 . self::zeroFill($this->gerarDigitoVerificadorDuplo(), 2); } } Espero ajudar Abração |
pessoal caso achem algum erro e possam contribuir, subam uma PR para corrigir e caso alguém tenha feito a homologação subam também como PR pra gente atualizar o projeto. |
Boa tarde
Alguém tem algum exemplo de impressão dos boletos do Banrisul ?
The text was updated successfully, but these errors were encountered: