Jump to content

Search the Community

Showing results for tags 'boleto'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 28 results

  1. PToledo

    Valor do Boleto BB

    Olá Pessoal. Estou desenvolvendo a geração de um boleto BB No código onde recebo as variáveis tenho: $oBoleto->setValorBoleto(number_format($VALOR, 2, ',', '.')); Visualmente no boleto gera corretamente. Porém o '.' ponto final está sendo levado para a numeração do cód barras Exemplo: 3.500,00 (...) 3 79710003.50000 Agradeço a ajuda!!!
  2. Galera me ajudem por favor, estou pirando kkkkk Seguinte, tenho um form que realiza o submit via javascrit enviando os dados para uma página php formatada em json. Está gravando perfeitamente porém preciso dos dados do retorno, como Link do boleto, e alguns outros resultados para inserir no banco nesse ponto já pesquisei um monte testei de tudo até a página bugar e nada kkkk o Script que utilizo para o envio é esse: <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> $("#frmBoleto").submit(function(){ $.ajax({ type: "POST", url: "https://www.sitedaloja.com.br/action/boleto_bradesco/gerando_boleto.php", data: $(this).serializeArray(), }).done(function( msg ) { }); return false; }); </script> Como fazer para capturar os dados da resposta do json?
  3. Ola eu estou com umas idéias e gostaria de saber como funciona um sistema de pagamento de boleto online. Por exemplo um site que você insira o código de barras e ele faça o pagamento do boleto online, tudo isso automatizado. Para entender melhor, o usuário entraria no site e digitaria o código de barras do boleto e outras informações necessárias, após isso ele iria fazer o pagamento pelo cartão de crédito ou alguma transferência (Sugestão de api do mercado pago ou pagseguro) após confirmação do pagamento o boleto seria pago automaticamente e enviado o comprovante pelo e-mail. Eu não tenho muita noção se existe algum ferramente que auxilie isso e nem por onde começa para desenvolver tal sistema. Alguém poderia me dar uma luz? Se alguém não entender eu explico novamente, mas basicamente é isso mesmo você pagar um boleto sem precisar ir na lotérica por meio de cartão de crédito/débito ou transferência. Um exemplo de site que encontrei foi esse: https://paguecombitcoin.com/pagar-boleto-com-bitcoin Porém ao invés de pagar com bitcoins seria com Reais.
  4. dtdigital

    Como saber se o boleto paypal foi pago?

    Ola! Gostaria de saber se tem como saber o status de um boleto só com o código do boleto?
  5. Olá Comunidade! Tenho uma aplicação ERP que vai gerar os boletos e autentificar/registrar junto ao banco. Depois irá salvar em uma tabela MySQL todos os dados desse boleto. Depois disso eu preciso listar esses dados da tabela em um layout php de boleto. Alguém sabe me indicar como posso conseguir o codigo script php para montar o layout de boletos para bancos como bradesco e itau?
  6. Estou com seguinte problema, eu faço a requisição normal e ele me retorna assim os dados {"payerName":"Teste","payerEmail":"suporte@email.com.br","value":500.00,"phoneDDI":"55","phoneDDD":"42","phoneNumber":"999338821","dueDays":0,"observation":"Teste","addTax":false,"cpfcnpj":"07701944990","sendEmail":true,"subAccountRefId":null,"requestDate":"2018-07-04T10:05:29.7821373-03:00","dueDate":"2018-08-01T00:00:00-03:00","status":0,"paymentDate":null,"tax":2.49,"amountPayed":null,"netValue":null,"payNumber":"00000000000000000000000000000000000000000000000","transactionId":"46575A916EAB4DC7B0CD272AD61EBD2C","paymentLink":null} Gostaria de tratar essas informações para gravar numa variável, como fazer ?
  7. Estou tentando gerar um boleto com o checkout pagseguro transparente, mas não consigo de jeito algum. Alguém tem algum codigo pronto para disponibilizar ?
  8. delaruvi

    Geração boleto registrado Sicoob

    Pessoal, bom dia! Estou precisando realizar a geração e registro de boleto Sicoob em meu sistema financeiro próprio desenvolvido em PHP. Não estou encontrando muitas informações no banco, vocês sabem se o Sicoob possui algum webservice para fazer essa geração de boleto de forma instantânea para e-commerce? Será que existe algum manual sobre isso do banco? Não estou encontrando, se alguém puder ajudar. Obrigado.
  9. DÚVIDA - Qual plugin de emissão de boletos vocês mais costumam usar e tem enfrentado problemas?
  10. rafinhafv

    [Resolvido] Boleto em PHP

    Olá pessoal! Estou com um problema na geração de boletos em php pelo banco do brasil... peguei um código no site de boletosphp e o código acho que está com problema, ele gera o boleto mas sem o código de barras... alguém poderia me ajudar? Segue os códigos: boleto_bb.php <?php // DADOS DO BOLETO PARA O SEU CLIENTE $dias_de_prazo_para_pagamento = 5; $taxa_boleto = 2.95; $data_venc = date("d/m/Y", time() + ($dias_de_prazo_para_pagamento * 86400)); // Prazo de X dias OU informe data: "13/04/2006"; $valor_cobrado = "2950,00"; // Valor - REGRA: Sem pontos na milhar e tanto faz com "." ou "," ou com 1 ou 2 ou sem casa decimal $valor_cobrado = str_replace(",", ".",$valor_cobrado); $valor_boleto=number_format($valor_cobrado+$taxa_boleto, 2, ',', ''); $dadosboleto["nosso_numero"] = "87654"; $dadosboleto["numero_documento"] = "27.030195.10"; // Num do pedido ou do documento $dadosboleto["data_vencimento"] = $data_venc; // Data de Vencimento do Boleto - REGRA: Formato DD/MM/AAAA $dadosboleto["data_documento"] = date("d/m/Y"); // Data de emissão do Boleto $dadosboleto["data_processamento"] = date("d/m/Y"); // Data de processamento do boleto (opcional) $dadosboleto["valor_boleto"] = $valor_boleto; // Valor do Boleto - REGRA: Com vírgula e sempre com duas casas depois da virgula // DADOS DO SEU CLIENTE $dadosboleto["sacado"] = "Nome do seu Cliente"; $dadosboleto["endereco1"] = "Endereço do seu Cliente"; $dadosboleto["endereco2"] = "Cidade - Estado - CEP: 00000-000"; // INFORMACOES PARA O CLIENTE $dadosboleto["demonstrativo1"] = "Pagamento de Compra na Loja Nonononono"; $dadosboleto["demonstrativo2"] = "Mensalidade referente a nonon nonooon nononon<br>Taxa bancária - R$ ".number_format($taxa_boleto, 2, ',', ''); $dadosboleto["demonstrativo3"] = "BoletoPhp - http://www.boletophp.com.br"; // INSTRUÇÕES PARA O CAIXA $dadosboleto["instrucoes1"] = "- Sr. Caixa, cobrar multa de 2% após o vencimento"; $dadosboleto["instrucoes2"] = "- Receber até 10 dias após o vencimento"; $dadosboleto["instrucoes3"] = "- Em caso de dúvidas entre em contato conosco: xxxx@xxxx.com.br"; $dadosboleto["instrucoes4"] = "&nbsp; Emitido pelo sistema Projeto BoletoPhp - www.boletophp.com.br"; // DADOS OPCIONAIS DE ACORDO COM O BANCO OU CLIENTE $dadosboleto["quantidade"] = "10"; $dadosboleto["valor_unitario"] = "10"; $dadosboleto["aceite"] = "N"; $dadosboleto["especie"] = "R$"; $dadosboleto["especie_doc"] = "DM"; // ---------------------- DADOS FIXOS DE CONFIGURAÇÃO DO SEU BOLETO --------------- // // DADOS DA SUA CONTA - BANCO DO BRASIL $dadosboleto["agencia"] = "9999"; // Num da agencia, sem digito $dadosboleto["conta"] = "99999"; // Num da conta, sem digito // DADOS PERSONALIZADOS - BANCO DO BRASIL $dadosboleto["convenio"] = "7777777"; // Num do convênio - REGRA: 6 ou 7 ou 8 dígitos $dadosboleto["contrato"] = "999999"; // Num do seu contrato $dadosboleto["carteira"] = "18"; $dadosboleto["variacao_carteira"] = "-019"; // Variação da Carteira, com traço (opcional) // TIPO DO BOLETO $dadosboleto["formatacao_convenio"] = "7"; // REGRA: 8 p/ Convênio c/ 8 dígitos, 7 p/ Convênio c/ 7 dígitos, ou 6 se Convênio c/ 6 dígitos $dadosboleto["formatacao_nosso_numero"] = "2"; // REGRA: Usado apenas p/ Convênio c/ 6 dígitos: informe 1 se for NossoNúmero de até 5 dígitos ou 2 para opção de até 17 dígitos // SEUS DADOS $dadosboleto["identificacao"] = "BoletoPhp - Código Aberto de Sistema de Boletos"; $dadosboleto["cpf_cnpj"] = ""; $dadosboleto["endereco"] = "Coloque o endereço da sua empresa aqui"; $dadosboleto["cidade_uf"] = "Cidade / Estado"; $dadosboleto["cedente"] = "Coloque a Razão Social da sua empresa aqui"; // NÃO ALTERAR! include("include/funcoes_bb.php"); include("include/layout_bb.php"); ?> funcoes_bb.php <?php // +----------------------------------------------------------------------+ // | BoletoPhp - Versão Beta | // +----------------------------------------------------------------------+ // | Este arquivo está disponível sob a Licença GPL disponível pela Web | // | em http://pt.wikipedia.org/wiki/GNU_General_Public_License | // | Você deve ter recebido uma cópia da GNU Public License junto com | // | esse pacote; se não, escreva para: | // | | // | Free Software Foundation, Inc. | // | 59 Temple Place - Suite 330 | // | Boston, MA 02111-1307, USA. | // +----------------------------------------------------------------------+ // +----------------------------------------------------------------------+ // | Originado do Projeto BBBoletoFree que tiveram colaborações de Daniel | // | William Schultz e Leandro Maniezo que por sua vez foi derivado do | // | PHPBoleto de João Prado Maia e Pablo Martins F. Costa | // | | // | Se você quer colaborar, nos ajude a desenvolver p/ os demais bancos :-)| // | Acesse o site do Projeto BoletoPhp: www.boletophp.com.br | // +----------------------------------------------------------------------+ // +-------------------------------------------------------------------------------------------------------------------------+ // | Equipe Coordenação Projeto BoletoPhp: <boletophp@boletophp.com.br> | // | Desenvolvimento Boleto Banco do Brasil: Daniel William Schultz / Leandro Maniezo / Rogério Dias Pereira / Romeu Medeiros| // +-------------------------------------------------------------------------------------------------------------------------+ $codigobanco = "001"; $codigo_banco_com_dv = geraCodigoBanco($codigobanco); $nummoeda = "9"; $fator_vencimento = fator_vencimento($dadosboleto["data_vencimento"]); //valor tem 10 digitos, sem virgula $valor = formata_numero($dadosboleto["valor_boleto"],10,0,"valor"); //agencia é sempre 4 digitos $agencia = formata_numero($dadosboleto["agencia"],4,0); //conta é sempre 8 digitos $conta = formata_numero($dadosboleto["conta"],8,0); //carteira 18 $carteira = $dadosboleto["carteira"]; //agencia e conta $agencia_codigo = $agencia."-". modulo_11($agencia) ." / ". $conta ."-". modulo_11($conta); //Zeros: usado quando convenio de 7 digitos $livre_zeros='000000'; // Carteira 18 com Convênio de 8 dígitos if ($dadosboleto["formatacao_convenio"] == "8") { $convenio = formata_numero($dadosboleto["convenio"],8,0,"convenio"); // Nosso número de até 9 dígitos $nossonumero = formata_numero($dadosboleto["nosso_numero"],9,0); $dv=modulo_11("$codigobanco$nummoeda$fator_vencimento$valor$livre_zeros$convenio$nossonumero$carteira"); $linha="$codigobanco$nummoeda$dv$fator_vencimento$valor$livre_zeros$convenio$nossonumero$carteira"; //montando o nosso numero que aparecerá no boleto $nossonumero = $convenio . $nossonumero ."-". modulo_11($convenio.$nossonumero); } // Carteira 18 com Convênio de 7 dígitos if ($dadosboleto["formatacao_convenio"] == "7") { $convenio = formata_numero($dadosboleto["convenio"],7,0,"convenio"); // Nosso número de até 10 dígitos $nossonumero = formata_numero($dadosboleto["nosso_numero"],10,0); $dv=modulo_11("$codigobanco$nummoeda$fator_vencimento$valor$livre_zeros$convenio$nossonumero$carteira"); $linha="$codigobanco$nummoeda$dv$fator_vencimento$valor$livre_zeros$convenio$nossonumero$carteira"; $nossonumero = $convenio.$nossonumero; //Não existe DV na composição do nosso-número para convênios de sete posições } // Carteira 18 com Convênio de 6 dígitos if ($dadosboleto["formatacao_convenio"] == "6") { $convenio = formata_numero($dadosboleto["convenio"],6,0,"convenio"); if ($dadosboleto["formatacao_nosso_numero"] == "1") { // Nosso número de até 5 dígitos $nossonumero = formata_numero($dadosboleto["nosso_numero"],5,0); $dv = modulo_11("$codigobanco$nummoeda$fator_vencimento$valor$convenio$nossonumero$agencia$conta$carteira"); $linha = "$codigobanco$nummoeda$dv$fator_vencimento$valor$convenio$nossonumero$agencia$conta$carteira"; //montando o nosso numero que aparecerá no boleto $nossonumero = $convenio . $nossonumero ."-". modulo_11($convenio.$nossonumero); } if ($dadosboleto["formatacao_nosso_numero"] == "2") { // Nosso número de até 17 dígitos $nservico = "21"; $nossonumero = formata_numero($dadosboleto["nosso_numero"],17,0); $dv = modulo_11("$codigobanco$nummoeda$fator_vencimento$valor$convenio$nossonumero$nservico"); $linha = "$codigobanco$nummoeda$dv$fator_vencimento$valor$convenio$nossonumero$nservico"; } } $dadosboleto["codigo_barras"] = $linha; $dadosboleto["linha_digitavel"] = monta_linha_digitavel($linha); $dadosboleto["agencia_codigo"] = $agencia_codigo; $dadosboleto["nosso_numero"] = $nossonumero; $dadosboleto["codigo_banco_com_dv"] = $codigo_banco_com_dv; // FUNÇÕES // Algumas foram retiradas do Projeto PhpBoleto e modificadas para atender as particularidades de cada banco function formata_numero($numero,$loop,$insert,$tipo = "geral") { if ($tipo == "geral") { $numero = str_replace(",","",$numero); while(strlen($numero)<$loop){ $numero = $insert . $numero; } } if ($tipo == "valor") { /* retira as virgulas formata o numero preenche com zeros */ $numero = str_replace(",","",$numero); while(strlen($numero)<$loop){ $numero = $insert . $numero; } } if ($tipo == "convenio") { while(strlen($numero)<$loop){ $numero = $numero . $insert; } } return $numero; } function fbarcode($valor){ $fino = 1 ; $largo = 3 ; $altura = 50 ; $barcodes[0] = "00110" ; $barcodes[1] = "10001" ; $barcodes[2] = "01001" ; $barcodes[3] = "11000" ; $barcodes[4] = "00101" ; $barcodes[5] = "10100" ; $barcodes[6] = "01100" ; $barcodes[7] = "00011" ; $barcodes[8] = "10010" ; $barcodes[9] = "01010" ; for($f1=9;$f1>=0;$f1--){ for($f2=9;$f2>=0;$f2--){ $f = ($f1 * 10) + $f2 ; $texto = "" ; for($i=1;$i<6;$i++){ $texto .= substr($barcodes[$f1],($i-1),1) . substr($barcodes[$f2],($i-1),1); } $barcodes[$f] = $texto; } } //Desenho da barra //Guarda inicial ?><img src=imagens/p.png width=<?php echo $fino?> height=<?php echo $altura?> border=0><img src=imagens/b.png width=<?php echo $fino?> height=<?php echo $altura?> border=0><img src=imagens/p.png width=<?php echo $fino?> height=<?php echo $altura?> border=0><img src=imagens/b.png width=<?php echo $fino?> height=<?php echo $altura?> border=0><img <?php $texto = $valor ; if((strlen($texto) % 2) <> 0){ $texto = "0" . $texto; } // Draw dos dados while (strlen($texto) > 0) { $i = round(esquerda($texto,2)); $texto = direita($texto,strlen($texto)-2); $f = $barcodes[$i]; for($i=1;$i<11;$i+=2){ if (substr($f,($i-1),1) == "0") { $f1 = $fino ; }else{ $f1 = $largo ; } ?> src=imagens/p.png width=<?php echo $f1?> height=<?php echo $altura?> border=0><img <?php if (substr($f,$i,1) == "0") { $f2 = $fino ; }else{ $f2 = $largo ; } ?> src=imagens/b.png width=<?php echo $f2?> height=<?php echo $altura?> border=0><img <?php } } // Draw guarda final ?> src=imagens/p.png width=<?php echo $largo?> height=<?php echo $altura?> border=0><img src=imagens/b.png width=<?php echo $fino?> height=<?php echo $altura?> border=0><img src=imagens/p.png width=<?php echo 1?> height=<?php echo $altura?> border=0> <?php } //Fim da função function esquerda($entra,$comp){ return substr($entra,0,$comp); } function direita($entra,$comp){ return substr($entra,strlen($entra)-$comp,$comp); } function fator_vencimento($data) { $data = explode("/",$data); $ano = $data[2]; $mes = $data[1]; $dia = $data[0]; return(abs((_dateToDays("1997","10","07")) - (_dateToDays($ano, $mes, $dia)))); } function _dateToDays($year,$month,$day) { $century = substr($year, 0, 2); $year = substr($year, 2, 2); if ($month > 2) { $month -= 3; } else { $month += 9; if ($year) { $year--; } else { $year = 99; $century --; } } return ( floor(( 146097 * $century) / 4 ) + floor(( 1461 * $year) / 4 ) + floor(( 153 * $month + 2) / 5 ) + $day + 1721119); } /* ################################################# FUNÇÃO DO MÓDULO 10 RETIRADA DO PHPBOLETO ESTA FUNÇÃO PEGA O DÍGITO VERIFICADOR DO PRIMEIRO, SEGUNDO E TERCEIRO CAMPOS DA LINHA DIGITÁVEL ################################################# */ function modulo_10($num) { $numtotal10 = 0; $fator = 2; for ($i = strlen($num); $i > 0; $i--) { $numeros[$i] = substr($num,$i-1,1); $parcial10[$i] = $numeros[$i] * $fator; $numtotal10 .= $parcial10[$i]; if ($fator == 2) { $fator = 1; } else { $fator = 2; } } $soma = 0; for ($i = strlen($numtotal10); $i > 0; $i--) { $numeros[$i] = substr($numtotal10,$i-1,1); $soma += $numeros[$i]; } $resto = $soma % 10; $digito = 10 - $resto; if ($resto == 0) { $digito = 0; } return $digito; } /* ################################################# FUNÇÃO DO MÓDULO 11 RETIRADA DO PHPBOLETO MODIFIQUEI ALGUMAS COISAS... ESTA FUNÇÃO PEGA O DÍGITO VERIFICADOR: NOSSONUMERO AGENCIA CONTA CAMPO 4 DA LINHA DIGITÁVEL ################################################# */ function modulo_11($num, $base=9, $r=0) { $soma = 0; $fator = 2; for ($i = strlen($num); $i > 0; $i--) { $numeros[$i] = substr($num,$i-1,1); $parcial[$i] = $numeros[$i] * $fator; $soma += $parcial[$i]; if ($fator == $base) { $fator = 1; } $fator++; } if ($r == 0) { $soma *= 10; $digito = $soma % 11; //corrigido if ($digito == 10) { $digito = "X"; } /* alterado por mim, Daniel Schultz Vamos explicar: O módulo 11 só gera os digitos verificadores do nossonumero, agencia, conta e digito verificador com codigo de barras (aquele que fica sozinho e triste na linha digitável) só que é foi um rolo...pq ele nao podia resultar em 0, e o pessoal do phpboleto se esqueceu disso... No BB, os dígitos verificadores podem ser X ou 0 (zero) para agencia, conta e nosso numero, mas nunca pode ser X ou 0 (zero) para a linha digitável, justamente por ser totalmente numérica. Quando passamos os dados para a função, fica assim: Agencia = sempre 4 digitos Conta = até 8 dígitos Nosso número = de 1 a 17 digitos A unica variável que passa 17 digitos é a da linha digitada, justamente por ter 43 caracteres Entao vamos definir ai embaixo o seguinte... se (strlen($num) == 43) { não deixar dar digito X ou 0 } */ if (strlen($num) == "43") { //então estamos checando a linha digitável if ($digito == "0" or $digito == "X" or $digito > 9) { $digito = 1; } } return $digito; } elseif ($r == 1){ $resto = $soma % 11; return $resto; } } /* Montagem da linha digitável - Função tirada do PHPBoleto Não mudei nada */ function monta_linha_digitavel($linha) { // Posição Conteúdo // 1 a 3 Número do banco // 4 Código da Moeda - 9 para Real // 5 Digito verificador do Código de Barras // 6 a 19 Valor (12 inteiros e 2 decimais) // 20 a 44 Campo Livre definido por cada banco // 1. Campo - composto pelo código do banco, código da moéda, as cinco primeiras posições // do campo livre e DV (modulo10) deste campo $p1 = substr($linha, 0, 4); $p2 = substr($linha, 19, 5); $p3 = modulo_10("$p1$p2"); $p4 = "$p1$p2$p3"; $p5 = substr($p4, 0, 5); $p6 = substr($p4, 5); $campo1 = "$p5.$p6"; // 2. Campo - composto pelas posiçoes 6 a 15 do campo livre // e livre e DV (modulo10) deste campo $p1 = substr($linha, 24, 10); $p2 = modulo_10($p1); $p3 = "$p1$p2"; $p4 = substr($p3, 0, 5); $p5 = substr($p3, 5); $campo2 = "$p4.$p5"; // 3. Campo composto pelas posicoes 16 a 25 do campo livre // e livre e DV (modulo10) deste campo $p1 = substr($linha, 34, 10); $p2 = modulo_10($p1); $p3 = "$p1$p2"; $p4 = substr($p3, 0, 5); $p5 = substr($p3, 5); $campo3 = "$p4.$p5"; // 4. Campo - digito verificador do codigo de barras $campo4 = substr($linha, 4, 1); // 5. Campo composto pelo valor nominal pelo valor nominal do documento, sem // indicacao de zeros a esquerda e sem edicao (sem ponto e virgula). Quando se // tratar de valor zerado, a representacao deve ser 000 (tres zeros). $campo5 = substr($linha, 5, 14); return "$campo1 $campo2 $campo3 $campo4 $campo5"; } function geraCodigoBanco($numero) { $parte1 = substr($numero, 0, 3); $parte2 = modulo_11($parte1); return $parte1 . "-" . $parte2; } ?> layout_bb.php <?php // +----------------------------------------------------------------------+ // | BoletoPhp - Versão Beta | // +----------------------------------------------------------------------+ // | Este arquivo está disponível sob a Licença GPL disponível pela Web | // | em http://pt.wikipedia.org/wiki/GNU_General_Public_License | // | Você deve ter recebido uma cópia da GNU Public License junto com | // | esse pacote; se não, escreva para: | // | | // | Free Software Foundation, Inc. | // | 59 Temple Place - Suite 330 | // | Boston, MA 02111-1307, USA. | // +----------------------------------------------------------------------+ // +----------------------------------------------------------------------+ // | Originado do Projeto BBBoletoFree que tiveram colaborações de Daniel | // | William Schultz e Leandro Maniezo que por sua vez foi derivado do | // | PHPBoleto de João Prado Maia e Pablo Martins F. Costa | // | | // | Se você quer colaborar, nos ajude a desenvolver p/ os demais bancos :-)| // | Acesse o site do Projeto BoletoPhp: www.boletophp.com.br | // +----------------------------------------------------------------------+ // +---------------------------------------------------------------------------------+ // | Equipe Coordenação Projeto BoletoPhp: <boletophp@boletophp.com.br> | // | Desenvolvimento Boleto Banco do Brasil: Daniel William Schultz / Leandro Maniezo| // +---------------------------------------------------------------------------------+ ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title><?php echo $dadosboleto["identificacao"]; ?></title> <META http-equiv=Content-Type content=text/html charset=ISO-8859-1> <meta name="Generator" content="Projeto BoletoPHP - www.boletophp.com.br - Licença GPL" /> <style type="text/css"> <!-- .ti {font: 9px Arial, Helvetica, sans-serif} --> </style> </HEAD> <BODY> <STYLE> @media screen,print { /* *** TIPOGRAFIA BASICA *** */ * { font-family: Arial; font-size: 12px; margin: 0; padding: 0; } .notice { color: red; } /* *** LINHAS GERAIS *** */ #container { width: 666px; margin: 0px auto; padding-bottom: 30px; } #instructions { margin: 0; padding: 0 0 20px 0; } #boleto { width: 666px; margin: 0; padding: 0; } /* *** CABECALHO *** */ #instr_header { background: url('imagens/logo_empresa.png') no-repeat top left; padding-left: 160px; height: 65px; } #instr_header h1 { font-size: 16px; margin: 5px 0px; } #instr_header address { font-style: normal; } #instr_content { } #instr_content h2 { font-size: 10px; font-weight: bold; } #instr_content p { font-size: 10px; margin: 4px 0px; } #instr_content ol { font-size: 10px; margin: 5px 0; } #instr_content ol li { font-size: 10px; text-indent: 10px; margin: 2px 0px; list-style-position: inside; } #instr_content ol li p { font-size: 10px; padding-bottom: 4px; } /* *** BOLETO *** */ #boleto .cut { width: 666px; margin: 0px auto; border-bottom: 1px navy dashed; } #boleto .cut p { margin: 0 0 5px 0; padding: 0px; font-family: 'Arial Narrow'; font-size: 9px; color: navy; } table.header { width: 666px; height: 38px; margin-top: 20px; margin-bottom: 10px; border-bottom: 2px navy solid; } table.header div.field_cod_banco { width: 46px; height: 19px; margin-left: 5px; padding-top: 3px; text-align: center; font-size: 14px; font-weight: bold; color: navy; border-right: 2px solid navy; border-left: 2px solid navy; } table.header td.linha_digitavel { width: 464px; text-align: right; font: bold 15px Arial; color: navy } table.line { margin-bottom: 3px; padding-bottom: 1px; border-bottom: 1px black solid; } table.line tr.titulos td { height: 13px; font-family: 'Arial Narrow'; font-size: 9px; color: navy; border-left: 5px #ffe000 solid; padding-left: 2px; } table.line tr.campos td { height: 12px; font-size: 10px; color: black; border-left: 5px #ffe000 solid; padding-left: 2px; } table.line td p { font-size: 10px; } table.line tr.campos td.ag_cod_cedente, table.line tr.campos td.nosso_numero, table.line tr.campos td.valor_doc, table.line tr.campos td.vencimento2, table.line tr.campos td.ag_cod_cedente2, table.line tr.campos td.nosso_numero2, table.line tr.campos td.xvalor, table.line tr.campos td.valor_doc2 { text-align: right; } table.line tr.campos td.especie, table.line tr.campos td.qtd, table.line tr.campos td.vencimento, table.line tr.campos td.especie_doc, table.line tr.campos td.aceite, table.line tr.campos td.carteira, table.line tr.campos td.especie2, table.line tr.campos td.qtd2 { text-align: center; } table.line td.last_line { vertical-align: top; height: 25px; } table.line td.last_line table.line { margin-bottom: -5px; border: 0 white none; } td.last_line table.line td.instrucoes { border-left: 0 white none; padding-left: 5px; padding-bottom: 0; margin-bottom: 0; height: 20px; vertical-align: top; } table.line td.cedente { width: 298px; } table.line td.valor_cobrado2 { padding-bottom: 0; margin-bottom: 0; } table.line td.ag_cod_cedente { width: 126px; } table.line td.especie { width: 35px; } table.line td.qtd { width: 53px; } table.line td.nosso_numero { /* width: 120px; */ width: 115px; padding-right: 5px; } table.line td.num_doc { width: 113px; } table.line td.contrato { width: 72px; } table.line td.cpf_cei_cnpj { width: 132px; } table.line td.vencimento { width: 134px; } table.line td.valor_doc { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.desconto { width: 113px; } table.line td.outras_deducoes { width: 112px; } table.line td.mora_multa { width: 113px; } table.line td.outros_acrescimos { width: 113px; } table.line td.valor_cobrado { /* width: 180px; */ width: 175px; padding-right: 5px; background-color: #ffc ; } table.line td.sacado { width: 659px; } table.line td.local_pagto { width: 472px; } table.line td.vencimento2 { /* width: 180px; */ width: 175px; padding-right: 5px; background-color: #ffc; } table.line td.cedente2 { width: 472px; } table.line td.ag_cod_cedente2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.data_doc { width: 93px; } table.line td.num_doc2 { width: 173px; } table.line td.especie_doc { width: 72px; } table.line td.aceite { width: 34px; } table.line td.data_process { width: 72px; } table.line td.nosso_numero2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.reservado { width: 93px; background-color: #ffc; } table.line td.carteira { width: 93px; } table.line td.especie2 { width: 53px; } table.line td.qtd2 { width: 133px; } table.line td.xvalor { /* width: 72px; */ width: 67px; padding-right: 5px; } table.line td.valor_doc2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.instrucoes { width: 475px; } table.line td.desconto2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.outras_deducoes2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.mora_multa2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.outros_acrescimos2 { /* width: 180px; */ width: 175px; padding-right: 5px; } table.line td.valor_cobrado2 { /* width: 180px; */ width: 175px; padding-right: 5px; background-color: #ffc ; } table.line td.sacado2 { width: 659px; } table.line td.sacador_avalista { width: 659px; } table.line tr.campos td.sacador_avalista { width: 472px; } table.line td.cod_baixa { color: navy; width: 180px; } div.footer { margin-bottom: 30px; } div.footer p { width: 88px; margin: 0; padding: 0; padding-left: 525px; font-family: 'Arial Narro'; font-size: 9px; color: navy; } div.barcode { width: 666px; margin-bottom: 20px; } } @media print { #instructions { height: 1px; visibility: hidden; overflow: hidden; } } </STYLE> </head> <body> <div id="container"> <div id="instr_header"> <h1><?php echo $dadosboleto["identificacao"]; ?> <?php echo isset($dadosboleto["cpf_cnpj"]) ? $dadosboleto["cpf_cnpj"] : '' ?></h1> <address><?php echo $dadosboleto["endereco"]; ?><br></address> <address><?php echo $dadosboleto["cidade_uf"]; ?></address> </div> <!-- id="instr_header" --> <div id=""> <!-- Use no lugar do <div id=""> caso queira imprimir sem o logotipo e instruções <div id="instructions"> --> <div id="instr_content"> <p> O pagamento deste boleto tamb&eacute;m poder&aacute; ser efetuado nos terminais de Auto-Atendimento BB. </p> <h2>Instru&ccedil;&otilde;es</h2> <ol> <li> Imprima em impressora jato de tinta (ink jet) ou laser, em qualidade normal ou alta. N&atilde;o use modo econ&ocirc;mico. <p class="notice">Por favor, configure margens esquerda e direita para 17mm.</p> </li> <li> Utilize folha A4 (210 x 297 mm) ou Carta (216 x 279 mm) e margens m&iacute;nimas &agrave; esquerda e &agrave; direita do formul&aacute;rio. </li> <li> Corte na linha indicada. N&atilde;o rasure, risque, fure ou dobre a regi&atilde;o onde se encontra o c&oacute;digo de barras </li> </ol> </div> <!-- id="instr_content" --> </div> <!-- id="instructions" --> <div id="boleto"> <div class="cut"> <p>Corte na linha pontilhada</p> </div> <table cellspacing=0 cellpadding=0 width=666 border=0><TBODY><TR><TD class=ct width=666><div align=right><b class=cp>Recibo do Sacado</b></div></TD></tr></tbody></table> <table class="header" border=0 cellspacing="0" cellpadding="0"> <tbody> <tr> <td width=150><IMG SRC="imagens/logobb.jpg"></td> <td width=50> <div class="field_cod_banco"><?php echo $dadosboleto["codigo_banco_com_dv"]?></div> </td> <td class="linha_digitavel"><?php echo $dadosboleto["linha_digitavel"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="cedente">Cedente</TD> <td class="ag_cod_cedente">Ag&ecirc;ncia / C&oacute;digo do Cedente</td> <td class="especie">Esp&eacute;cie</TD> <td class="qtd">Quantidade</TD> <td class="nosso_numero">Nosso n&uacute;mero</td> </tr> <tr class="campos"> <td class="cedente"><?php echo $dadosboleto["cedente"]; ?>&nbsp;</td> <td class="ag_cod_cedente"><?php echo $dadosboleto["agencia_codigo"]?> &nbsp;</td> <td class="especie"><?php echo $dadosboleto["especie"]?>&nbsp;</td> <TD class="qtd"><?php echo $dadosboleto["quantidade"]?>&nbsp;</td> <TD class="nosso_numero"><?php echo $dadosboleto["nosso_numero"]?>&nbsp;</td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellPadding="0"> <tbody> <tr class="titulos"> <td class="num_doc">N&uacute;mero do documento</td> <td class="contrato">Contrato</TD> <td class="cpf_cei_cnpj">CPF/CEI/CNPJ</TD> <td class="vencmento">Vencimento</TD> <td class="valor_doc">Valor documento</TD> </tr> <tr class="campos"> <td class="num_doc"><?php echo $dadosboleto["numero_documento"]?></td> <td class="contrato"><?php echo $dadosboleto["contrato"]?></td> <td class="cpf_cei_cnpj"><?php echo $dadosboleto["cpf_cnpj"]?></td> <td class="vencimento"><?php echo $dadosboleto["data_vencimento"]?></td> <td class="valor_doc"><?php echo $dadosboleto["valor_boleto"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellPadding="0"> <tbody> <tr class="titulos"> <td class="desconto">(-) Desconto / Abatimento</td> <td class="outras_deducoes">(-) Outras dedu&ccedil;&otilde;es</td> <td class="mora_multa">(+) Mora / Multa</td> <td class="outros_acrescimos">(+) Outros acr&eacute;scimos</td> <td class="valor_cobrado">(=) Valor cobrado</td> </tr> <tr class="campos"> <td class="desconto">&nbsp;</td> <td class="outras_deducoes">&nbsp;</td> <td class="mora_multa">&nbsp;</td> <td class="outros_acrescimos">&nbsp;</td> <td class="valor_cobrado">&nbsp;</td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="sacado">Sacado</td> </tr> <tr class="campos"> <td class="sacado"><?php echo $dadosboleto["sacado"]?></td> </tr> </tbody> </table> <div class="footer"> <p>Autentica&ccedil;&atilde;o mec&acirc;nica</p> </div> <div class="cut"> <p>Corte na linha pontilhada</p> </div> <table class="header" border=0 cellspacing="0" cellpadding="0"> <tbody> <tr> <td width=150><IMG SRC="imagens/logobb.jpg"></td> <td width=50> <div class="field_cod_banco"><?php echo $dadosboleto["codigo_banco_com_dv"]?></div> </td> <td class="linha_digitavel"><?php echo $dadosboleto["linha_digitavel"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="local_pagto">Local de pagamento</td> <td class="vencimento2">Vencimento</td> </tr> <tr class="campos"> <td class="local_pagto">QUALQUER BANCO AT&Eacute; O VENCIMENTO</td> <td class="vencimento2"><?php echo $dadosboleto["data_vencimento"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="cedente2">Cedente</td> <td class="ag_cod_cedente2">Ag&ecirc;ncia/C&oacute;digo cedente</td> </tr> <tr class="campos"> <td class="cedente2"><?php echo $dadosboleto["cedente"]?></td> <td class="ag_cod_cedente2"><?php echo $dadosboleto["agencia_codigo"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="data_doc">Data do documento</td> <td class="num_doc2">No. documento</td> <td class="especie_doc">Esp&eacute;cie doc.</td> <td class="aceite">Aceite</td> <td class="data_process">Data process.</td> <td class="nosso_numero2">Nosso n&uacute;mero</td> </tr> <tr class="campos"> <td class="data_doc"><?php echo $dadosboleto["data_documento"]?></td> <td class="num_doc2"><?php echo $dadosboleto["numero_documento"]?></td> <td class="especie_doc"><?php echo $dadosboleto["especie_doc"]?></td> <td class="aceite"><?php echo $dadosboleto["aceite"]?></td> <td class="data_process"><?php echo $dadosboleto["data_processamento"]?></td> <td class="nosso_numero2"><?php echo $dadosboleto["nosso_numero"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellPadding="0"> <tbody> <tr class="titulos"> <td class="reservado">Uso do banco</td> <td class="carteira">Carteira</td> <td class="especie2">Espécie</td> <td class="qtd2">Quantidade</td> <td class="xvalor">x Valor</td> <td class="valor_doc2">(=) Valor documento</td> </tr> <tr class="campos"> <td class="reservado">&nbsp;</td> <td class="carteira"><?php echo $dadosboleto["carteira"]?> <?php echo isset($dadosboleto["variacao_carteira"]) ? $dadosboleto["variacao_carteira"] : '&nbsp;' ?></td> <td class="especie2"><?php echo $dadosboleto["especie"]?></td> <td class="qtd2"><?php echo $dadosboleto["quantidade"]?></td> <td class="xvalor"><?php echo $dadosboleto["valor_unitario"]?></td> <td class="valor_doc2"><?php echo $dadosboleto["valor_boleto"]?></td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr><td class="last_line" rowspan="6"> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="instrucoes"> Instru&ccedil;&otilde;es (Texto de responsabilidade do cedente) </td> </tr> <tr class="campos"> <td class="instrucoes" rowspan="5"> <p><?php echo $dadosboleto["demonstrativo1"]; ?></p> <p><?php echo $dadosboleto["demonstrativo2"]; ?></p> <p><?php echo $dadosboleto["demonstrativo3"]; ?></p> <p><?php echo $dadosboleto["instrucoes1"]; ?></p> <p><?php echo $dadosboleto["instrucoes2"]; ?></p> <p><?php echo $dadosboleto["instrucoes3"]; ?></p> <p><?php echo $dadosboleto["instrucoes4"]; ?></p> </td> </tr> </tbody> </table> </td></tr> <tr><td> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="desconto2">(-) Desconto / Abatimento</td> </tr> <tr class="campos"> <td class="desconto2">&nbsp;</td> </tr> </tbody> </table> </td></tr> <tr><td> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="outras_deducoes2">(-) Outras dedu&ccedil;&otilde;es</td> </tr> <tr class="campos"> <td class="outras_deducoes2">&nbsp;</td> </tr> </tbody> </table> </td></tr> <tr><td> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="mora_multa2">(+) Mora / Multa</td> </tr> <tr class="campos"> <td class="mora_multa2">&nbsp;</td> </tr> </tbody> </table> </td></tr> <tr><td> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="outros_acrescimos2">(+) Outros Acr&eacute;scimos</td> </tr> <tr class="campos"> <td class="outros_acrescimos2">&nbsp;</td> </tr> </tbody> </table> </td></tr> <tr><td class="last_line"> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="valor_cobrado2">(=) Valor cobrado</td> </tr> <tr class="campos"> <td class="valor_cobrado2">&nbsp;</td> </tr> </tbody> </table> </td></tr> </tbody> </table> <table class="line" cellspacing="0" cellPadding="0"> <tbody> <tr class="titulos"> <td class="sacado2">Sacado</td> </tr> <tr class="campos"> <td class="sacado2"> <p><?php echo $dadosboleto["sacado"]?></p> <p><?php echo $dadosboleto["endereco1"]?></p> <p><?php echo $dadosboleto["endereco2"]?></p> </td> </tr> </tbody> </table> <table class="line" cellspacing="0" cellpadding="0"> <tbody> <tr class="titulos"> <td class="sacador_avalista" colspan="2">Sacador/Avalista</td> </tr> <tr class="campos"> <td class="sacador_avalista">&nbsp;</td> <td class="cod_baixa">C&oacute;d. baixa</td> </tr> </tbody> </table> <table cellspacing=0 cellpadding=0 width=666 border=0><TBODY><TR><TD width=666 align=right ><font style="font-size: 10px;">Autentica&ccedil;&atilde;o mec&acirc;nica - Ficha de Compensação</font></TD></tr></tbody></table> <div class="barcode"> <p><?php fbarcode($dadosboleto["codigo_barras"]); ?></p> </div> <div class="cut"> <p>Corte na linha pontilhada</p> </div> </div> </div> </body> </html>
  11. Boa tarde a todos. Estou precisando registrar os boletos no banco Bradesco. Porém não encontrei nada, referindo-se a assinatura que tenho que fazer com o certificado da empresa e transformar base64 antes de transmitir. Beleza, Base64 é tranquilo o problema mesmo é como assinar o Json com o certificado privado (PKCS#7) antes de transmitir para o Bradesco via Webservices. Alguém já fez isso ou algo parecido para me ajudar. Pode ser em Java ou Oracle (PL/SQL). Obrigado a todos pela atenção.
  12. Olá galera, tudo bem? Estou iniciando a configuração de um gateway de pagamento no whmcs utilizando o boleto padrão do sistema para emissão pelo banco itaú. Além dos dados bancários que irei inserir no formulário (anexo), existe alguma outra configuração? Estou usando a versão 7.1.2 General Release do WHMCS Desde já agradeço!
  13. Olá, gostaria de tirar uma dúvida. É possível gerar a linha digitável apenas com Javascript? Encontrei um repositório no github no qual gera em .svg o código de barras de acordo com a linha. Até ai tudo bem. https://github.com/guilhermearaujo/boleto.js/tree/master Meu código : <div style="width: 666px" id="boleto"></div> var number = '23793.13022 50831.414599 05006.305204 8 70010000002000'; new Boleto(number).toSVG('#boleto'); Ele gera perfeitamente com qualquer linha atribuída a variável 'number'. Então, estou desenvolvendo na plataforma salesforce, com visualforce pages. Não posso utilizar PHP, somente JS. Entrei o projeto boletophp, ele dá o norte e funções para gerar em PHP. Enfim, em JS é possível?
  14. Ola pessoal, gostaria de tirar uma duvida, alguem conhece algum sistema em php com sistema de cadastro de clientes e envio de pagamentos de boleto de cobrança mensal? Gostaria de um sistema onde eu possa agendar todo mês cobrança dos meus clientes, tipo todo dia 10 de cada mes enviar cobrança por email para a empresa A, integrando o boleto Bradesco! Enfim alguém sabe um bom sistema mas em php? Obrigado
  15. Prezados.. Estou precisando utilizar um boleto de arrecadação um pouco diferente do normal. No local da data convencional AAAAMMDD eu preciso enviar em formato Juliano AANNN Até onde entendi funcionaria da seguinte forma: Exemplo para o dia 02/02/2017 = 17032 AA = Ano com 2 dígitos = 17 NNN = Números corridos de dia do ano = 032 Exemplo para 31/12/2017 = 17365 AA = 17 NNN = 365 Até aqui tudo bem, porém, ao gerar o codigo de barras, o Banco do Brasil diz "DATA INVÁLIDA" Procurei por mais informações e o banco me passou mais alguns esclarecimentos que juro não conseguir entender. Segue-os abaixo: Alguém poderia me ajudar a traduzir essa explicação? Nesse link existe um documento do SEFIN de Rondônia que me traz na página 14, basicamente a mesma informação: Verificar a data de vencimento do DARE: AA – Ano no formato de 2 posições( se valor menor que 70 somar: AA + 2000 senão somar AA + 1900); JJJ – Converter a Data Juliana para dia/mês do vencimento.
  16. Gostaria de saber se há alguma forma de gerar o boleto pagseguro através da api e enviar pros clientes...
  17. srmacedo

    GERADOR DE BOLETOS

    Oi, estava vendo umas ferramentas por ai sobre gerador de boletos, alguém poderia me explicar como funciona para que após eu gerar o boleto via PHP eu consiga identificar quem pagou? Não é via pagseguro, lembrando...
  18. Pessoal, Feliz 2017 a todos! Com a nova modalidade de Boletos vigente, estou procurando material que me ajude na implementação do envio ao Banco via API/WEBSERVICE mas não estou encontrando nada. Com muita pesquisa cheguei nesses 2 links: http://www.suporte-cef.com.br/ http://www.caixa.gov.br/empresa/pagamentos-recebimentos/recebimentos/nova-cobranca-bancaria/Paginas/default.aspx Mas nenhum informa o processo de envio dos boletos gerados no site para registro na Caixa Econômica Federal. Alguém pode me ajudar? Carlos Rocha
  19. derlanoliver

    Boleto com Registro Bradesco

    Galera, estou tentando montar um sistema de remessa/retorno para um cliente no qual o banco dele é o Bradesco. Atualmente estou utilizando o repositório do Anderson Danilo ( repositório ).. Até então, tudo OK .. Consigo gerar o arquivo de remessa.. Só que quando fui homologar, a moça do banco me disse que estava faltando o código do cedente no arquivo.. Ai que mora o problema, eu consegui o código do cedente com o banco mas não estou conseguindo inserir no header do arquivo. Alguém que utiliza a classe de remessa do Anderson, conseguiu inserir o código do cedente no arquivo?
  20. A cobrança sem registro que era utilizada em todas as lojas virtuais, porque só se pagava pelo boleto quando o cliente pagava o boleto, acabou, agora só cobrança com registro, O grande problema pelo menos pra mim é que cada boleto impresso pelo cliente no Bradesco custaria quase 10 reais independente se ele vai pagar ou não. O que quem usa isto em loja virtual pensa ou já esta fazendo? Cordialmente Marcelo Eduardo
  21. Olá! Estou gerando boletos do banco do Brasil através de um sistema próprio. Ao gerar os boletos individualmente não obtive erros, porém ao aplicar o loop para gerar mais de um boleto, houve um erro com o código de barras e linha digitável: linha 86 function mod11(cadeia,limitesup,lflag) Já tentei ajustar de diversas formas, mas só consegui gerar os boletos sem código de barras / linha digitável. Segue código <% response.buffer=true %> <!--#include file="../Connections/ConnectionString.asp" --> <!-- #include file = "../include/generico_data.inc" --> <% 'Valida Acesso dim rsAcesso, sql sql = "select * from acesso_processo_usuario where id_processo = 16 and id_usuario = " & session("id_usuario") set rsAcesso = GetRS(sql) if rsAcesso.eof then response.write "Acesso Negado" response.end end if %> <% session.lcid = 1046 dim idPedido, valor, data_documento, data_vencimento,nome_sacado, endereco_sacado, endereco_sacado2,cedente, cpf_cnpj, agencia, dac_agencia,conta, dac_conta, carteira,layout_boleto,convenio, numero_documento,nosso_numero, instrucoes1,instrucoes2,instrucoes3,instrucoes4, instrucoes5, contrato, especie, especie_doc, aceite, a, fvencimento, valor_str, livre, dac_nosso_numero, codbar, mult, total, pos, nresto, ndig, dac, cmplivre, campo1, res, campo2,campo3,campo4, campo5, linha_digitavel, agencia_codigo, x98, quantidade, data_processamento, valor_unitario, x80, x171,x99,x3,x125,x126,x18,dvNosso_numero '================INFORMAÇÕES BANCÁRIAS============== cedente = "RAZÃO SOCIAL" cpf_cnpj = "00.000.000/0000-00" agencia = "0000" dac_agencia = "0" conta = "00000" dac_conta = "0" convenio = "0000000" carteira = "00" '================INSTRUÇÕES DO BOLETO============== instrucoes1 = "Após o vencimento multa de 2% + 0,1% de mora ao dia." instrucoes2 = "Protestar 03 dias úteis após o vencimento." instrucoes3 = "" instrucoes4 = "" instrucoes5 = "" '===================================================== '===========LOOP==========' dim id_lan, v_item For each item in Request.Form("chkBoleto") v_item = split(item,",") id_lan = v_item(0) Dim rsNumero, vr_tx_boleto sql = "select * from vw_ultimo_boleto" set rsNumero = GetRS(sql) idPedido = rsNumero("nr_documento") + 1 sql = "update lancamento set " sql = sql & " nr_documento = '" & idPedido & "'" sql = sql & " where id_lancamento = " & Request.Form("chkBoleto") call executecmd(sql) vr_tx_boleto = 0.0 dim rsTeste, id_parceiro sql = "select * from lancamento where id_lancamento = " & Request.Form("chkBoleto") set rsTeste = GetRS(sql) id_parceiro = rsTeste("id_parceiro") data_vencimento = rsTeste("dt_vencimento") Dim rsLancamento sql = "select * from vw_lancamento_boleto where id_lancamento = " & Request.Form("chkBoleto") set rsLancamento = GetRS(sql) valor = rsLancamento("vr_curso") + 0 + vr_tx_boleto - rsLancamento("vr_desconto") + rsTeste("vr_juros") + rsTeste("vr_multa") data_documento = date data_processamento = date() nome_sacado = rsLancamento("nome") & " - CPF:" & rsLancamento("cpf") endereco_sacado = rsLancamento("endereco") 'Evite mudar estas variaveis abaixo layout_boleto = "3" numero_documento = idPedido nosso_numero = idPedido dvNosso_numero = mod11(convenio &right("0000000000"&idPedido,10),9,0) contrato = "" especie = "R$" especie_doc = "DM" aceite = "N" function mod11(cadeia,limitesup,lflag) mult=1 + (len(cadeia) mod (limitesup-1)) if mult=1 then mult=limitesup end if total=0 for pos=1 to len(cadeia) total=total+(mid(cadeia,pos,1) * mult) mult=mult-1 if mult=1 then mult=limitesup end if Next nresto=(total mod 11) if lflag = 1 then mod11=nresto else if nresto=0 or nresto=1 or nresto=10 then ndig=1 else ndig=11 - nresto end if mod11=ndig end if end function function mod10(cadeia) mult=(len(cadeia) mod 2) mult=mult+1 total=0 for pos=1 to len(cadeia) res= mid(cadeia, pos, 1) * mult if res>9 then res=int(res/10) + (res mod 10) end if total=total+res if mult=2 then mult=1 else mult=2 end if next total=((10-(total mod 10)) mod 10 ) mod10=total end function function linhadigitavel(codigobarras) cmplivre=mid(codigobarras,20,25) campo1=left(codigobarras,4)&mid(cmplivre,1,5) campo1=campo1&mod10(campo1) campo1=mid(campo1,1,5)&"."&mid(campo1,6,5) campo2=mid(cmplivre,6,10) campo2=campo2&mod10(campo2) campo2=mid(campo2,1,5)&"."&mid(campo2,6,6) campo3=mid(cmplivre,16,10) campo3=campo3&mod10(campo3) campo3=mid(campo3,1,5)&"."&mid(campo3,6,6) campo4=mid(codigobarras,5,1) campo5=int(mid(codigobarras,6,14)) if campo5=0 then campo5="000" end if linhadigitavel=campo1&" "&campo2&" "&campo3&" "&campo4&" "&campo5 end function function fvenc(entra) fvenc = DateDiff("d", CDate("7/10/1997"), CDate(entra)) end function function formatar(valor, comp, ench, tipo) dim str str = valor if tipo = "v" then str = Ccur(str) str = formatnumber(str,2,-2,-2,-2) tipo = "e" :str = cstr(str) str = replace(str,",","") str = replace(str,".","") end if for a=len(str) to (comp - 1) if tipo = "e" then str = ench & str else str = str & ench end if next if tipo = "e" then str = left(str,comp) else str = right(str,comp) end if formatar = str end function function d1d2(entra) d1 = mod10(entra) Do d2 = mod11(entra & d1,7,1) if d2 = 1 then if d2 = 9 then d1 = 0 elseif d1 < 9 then d1 = d1 + 1 else d1 = 0 end if end if Loop while d2 = 1 if d2 > 0 then d2 = 11 - d2 end if d1d2 = Cstr(Cstr(entra) & Cstr(d1) & Cstr(d2)) end function function dv(entra) temp = Cint(mod11(entra,9,1)) if temp < 10 then dv = 11 - temp else dv = 1 end if if dv = 11 then dv = 0 if dv = 10 then dv = "X" dv = Cstr(dv) end function layout_boleto = Cstr(layout_boleto) conta = Cstr(formatar(conta,8,"0","e")) fvencimento = Cstr(fvenc(data_vencimento)) valor_str = Cstr(formatar(valor,10,"0","v")) agencia = Cstr(formatar(agencia,4,"0","e")) carteira = Cstr(formatar(carteira,2,"0","e")) if layout_boleto = "3" then convenio = formatar(convenio,7,"0","e") nosso_numero = formatar(nosso_numero,10,"0","e") livre = "000000" & convenio & nosso_numero & carteira dac_nosso_numero = "" nosso_numero = convenio & nosso_numero else Response.Write("ERRO ! <br> Selecione o layout do boleto inválido, use numero 3") Response.End() end if codbar = Cstr("0019" & fvencimento & valor_str & livre) dac = Cstr(mod11(codbar,9,0)) codbar = Cstr("0019" & dac & fvencimento & valor_str & livre) linha_digitavel = linhadigitavel(codbar) agencia_codigo = agencia &"-"& dac_agencia & "/" & conta &"-"& dac_conta valor = formatnumber(Ccur(valor),2,-2,-2,-2) %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Boleto BB</title> <meta http-equiv=Content-Type content="text/html;charset=windows-1252"> <meta content="MSHTML 6.00.2800.1400" name=GENERATOR> <style> .Titulo11{ font:11px Arial, Helvetica, sans-serif; } .campo{ font:10px Verdana, Arial, Helvetica, sans-serif; } .CampoTitulo{ font:bold 14px Arial, Helvetica, sans-serif; } .Normal{ font:12px Arial, Helvetica, sans-serif; } @media print { body * { visibility: hidden; } #printable, #printable * { visibility: visible; } #printable { position: fixed; left: 0; top: 0; } } </style> </head> <body bgcolor="White" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgproperties="fixed"> <br> <center><input type="button" name="imprimir" value="Imprimir" onclick="window.print();"> </center><br> <div id="printble"> <table border="0" cellPadding="0" cellSpacing="0" width="660"> <tr> <td class="Normal"> <div align="center"> <b>O pagamento deste boleto também poderá ser efetuado pelo Auto-Atendimento BB na Internet ou pelos Terminais de Auto-Atendimento.</b> </div> <p> <b>Instruções:</b><br> <ol> <li>Imprima em impressora jato de tinta (ink jet) ou laser em qualidade normal ou alta. Não use modo econômico.</li> <li>Utilize folha A4 (210 x 297mm) ou Carta (216 x 279mm) e margens mínimas à esquerda e à direita do formulário.</li> <li>Corte na linha indicada. Não rasure, risque, fure ou dobre a região onde se encontra o código de barras.</li> </ol> </p> </td> </tr> </table> <br> <div style="position:absolute;top:145px;left:5px;height:636px;width:670px;z-index:1;"> <img src="imagens_bb/bbformularioBoleto.gif" width="647" height="636" border="0" alt=""> </div> <div style="position:absolute;top:161px;left:7px;height:22px;width:96px;z-index:2;"> <img src="imagens_bb/bblogoBoleto.gif" width="150" height="22" border="0" alt=""> </div> <div style="position:absolute;top:444px;left:7px;height:22px;width:96px;z-index:2;"> <img src="imagens_bb/bblogoBoleto.gif" width="150" height="22" border="0" alt=""> </div> <div style="position:absolute;top:127px;left:7px;z-index:2;" class="Titulo11"> Corte na linha pontilhada </div> <div style="position:absolute;top:138px;left:5px;z-index:2;" class="Titulo11"> <img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt=""> </div> <div style="position:absolute;top:145px;left:549px;z-index:2;" class="Campo"> <b>Recibo do Sacado</b> </div> <div style="position:absolute;top:167px;left:163px;z-index:2;" class="CampoTitulo"> 001-9 </div> <div style="position:absolute;top:166px;left:210px;z-index:2;width:438px;text-align:right;" class="CampoTitulo"> <layer name="helpns" width=438px><%=linha_digitavel%></layer> </div> <div style="position:absolute;top:450px;left:163px;z-index:2;" class="CampoTitulo"> 001-9 </div> <div style="position:absolute;top:449px;left:210px;z-index:2;width:438px;text-align:right;" class="CampoTitulo"> <layer name="helpns" width=438px><%=linha_digitavel%></layer> </div> <div style="position:absolute;top:184px;left:15px;z-index:2;" class="Titulo11"> Cedente </div> <div style="position:absolute;top:184px;left:317px;z-index:2;" class="Titulo11"> Código do Cedente </div> <div style="position:absolute;top:184px;left:438px;z-index:2;" class="Titulo11"> Espécie </div> <div style="position:absolute;top:184px;left:480px;z-index:2;" class="Titulo11"> Quantidade </div> <div style="position:absolute;top:184px;left:536px;z-index:2;" class="Titulo11"> Nosso número </div> <div style="position:absolute;top:209px;left:15px;z-index:2;" class="Titulo11"> Número do documento </div> <div style="position:absolute;top:209px;left:135px;z-index:2;" class="Titulo11"> Contrato </div> <div style="position:absolute;top:209px;left:214px;z-index:2;" class="Titulo11"> CPF/CEI/CNPJ </div> <div style="position:absolute;top:209px;left:353px;z-index:2;" class="Titulo11"> Vencimento </div> <div style="position:absolute;top:209px;left:480px;z-index:2;" class="Titulo11"> Valor documento </div> <div style="position:absolute;top:234px;left:15px;z-index:2;" class="Titulo11"> (-)Desconto/Abatimento </div> <div style="position:absolute;top:234px;left:135px;z-index:2;" class="Titulo11"> (-)Outras opções </div> <div style="position:absolute;top:234px;left:251px;z-index:2;" class="Titulo11"> (+)Mora/Multa </div> <div style="position:absolute;top:234px;left:367px;z-index:2;" class="Titulo11"> (+)Outros acréscimos </div> <div style="position:absolute;top:234px;left:480px;z-index:2;" class="Titulo11"> (=)Valor cobrado </div> <div style="position:absolute;top:259px;left:15px;z-index:2;" class="Titulo11"> Sacado </div> <div style="position:absolute;top:284px;left:15px;z-index:2;" class="Titulo11"> Instruções </div> <div style="position:absolute;top:284px;left:574px;z-index:2;" class="Titulo11"> Autenticação Mecânica </div> <div style="position:absolute;top:415px;left:7px;z-index:2;" class="Titulo11"> Corte na linha pontilhada </div> <div style="position:absolute;top:426px;left:5px;z-index:2;" class="Titulo11"> <img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt=""> </div> <div style="position:absolute;top:467px;left:15px;z-index:2;" class="Titulo11"> Local de pagamento </div> <div style="position:absolute;top:467px;left:480px;z-index:2;" class="Titulo11"> Vencimento </div> <div style="position:absolute;top:492px;left:15px;z-index:2;" class="Titulo11"> Cedente </div> <div style="position:absolute;top:492px;left:480px;z-index:2;" class="Titulo11"> Agência/Código do cedente </div> <div style="position:absolute;top:517px;left:15px;z-index:2;" class="Titulo11"> Data do documento </div> <div style="position:absolute;top:517px;left:133px;z-index:2;" class="Titulo11"> Nº do documento </div> <div style="position:absolute;top:517px;left:295px;z-index:2;" class="Titulo11"> Espécie DOC </div> <div style="position:absolute;top:517px;left:364px;z-index:2;" class="Titulo11"> Aceite </div> <div style="position:absolute;top:517px;left:405px;z-index:2;" class="Titulo11"> Data process. </div> <div style="position:absolute;top:517px;left:480px;z-index:2;" class="Titulo11"> Nosso Número </div> <div style="position:absolute;top:542px;left:15px;z-index:2;" class="Titulo11"> Uso do Banco/Convênio </div> <div style="position:absolute;top:542px;left:133px;z-index:2;" class="Titulo11"> Carteira </div> <div style="position:absolute;top:542px;left:223px;z-index:2;" class="Titulo11"> Espécie </div> <div style="position:absolute;top:542px;left:283px;z-index:2;" class="Titulo11"> Quantidade </div> <div style="position:absolute;top:542px;left:405px;z-index:2;" class="Titulo11"> xValor </div> <div style="position:absolute;top:542px;left:480px;z-index:2;" class="Titulo11"> (=) Valor do documento </div> <div style="position:absolute;top:567px;left:15px;z-index:2;" class="Titulo11"> Instrucoes </div> <div style="position:absolute;top:567px;left:480px;z-index:2;" class="Titulo11"> (-) Desconto / Abatimento </div> <div style="position:absolute;top:592px;left:480px;z-index:2;" class="Titulo11"> (-) Outras deduções </div> <div style="position:absolute;top:618px;left:480px;z-index:2;" class="Titulo11"> (+) Mora / Multa </div> <div style="position:absolute;top:643px;left:480px;z-index:2;" class="Titulo11"> (+) Outros acréscimos </div> <div style="position:absolute;top:668px;left:480px;z-index:2;" class="Titulo11"> (=) Valor cobrado </div> <div style="position:absolute;top:573px;left:463px;z-index:2;" class="Titulo11"> 27 </div> <div style="position:absolute;top:620px;left:463px;z-index:2;" class="Titulo11"> 35 </div> <div style="position:absolute;top:596px;left:463px;z-index:2;" class="Titulo11"> 19 </div> <div style="position:absolute;top:693px;left:15px;z-index:2;" class="Titulo11"> Sacado </div> <div style="position:absolute;top:739px;left:480px;z-index:2;" class="Titulo11"> Cód. baixa </div> <div style="position:absolute;top:740px;left:15px;z-index:2;" class="Titulo11"> Sacador/Avalista </div> <div style="position:absolute;top:751px;left:470px;z-index:2;" class="Titulo11"> Autenticação mecânica - Ficha de Compensação </div> <div style="position:absolute;top:197px;left:15px;z-index:2;" class="Campo"> <%=cedente%> </div> <div style="position:absolute;top:197px;left:317px;z-index:2;width:120px;" class="Campo"> <%=agencia_codigo%> </div> <div style="position:absolute;top:197px;left:438px;z-index:2;width:28px;" class="Campo"> R$ </div> <div style="position:absolute;top:197px;left:480px;z-index:2;width:50px;" class="Campo"> 0001 </div> <div style="position:absolute;top:197px;left:531px;z-index:2;width:118px;text-align:right;" class="Campo"> <%=nosso_numero%> </div> <div style="position:absolute;top:222px;left:15px;z-index:2;width:110px;" class="Campo"> <%=right("0000000000"& numero_documento, 10)%> </div> <div style="position:absolute;top:222px;left:135px;z-index:2;width:70px;" class="Campo"> <%=contrato%> </div> <div style="position:absolute;top:222px;left:214px;z-index:2;width:125px;" class="Campo"> <%=cpf_cnpj%> </div> <div style="position:absolute;top:222px;left:353px;z-index:2;width:118px;" class="Campo"> <%=data_vencimento%> </div> <div style="position:absolute;top:222px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> <%=valor%> </div> <div style="position:absolute;top:247px;left:15px;z-index:2;width:108px;text-align:right;" class="Campo"></div> <div style="position:absolute;top:247px;left:133px;z-index:2;width:107px;text-align:right;" class="Campo"></div> <div style="position:absolute;top:247px;left:248px;z-index:2;width:108px;text-align:right;" class="Campo"></div> <div style="position:absolute;top:247px;left:361px;z-index:2;width:108px;text-align:right;" class="Campo"></div> <div style="position:absolute;top:247px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:272px;left:15px;z-index:2;" class="Campo"> <%=nome_sacado%> </div> <div style="position:absolute;top:312px;left:15px;z-index:2;width:498px;text-align:justify;" class="Campo"> <layer name="helpns" width=498px align="left"><%=instrucoes1%><br><%=instrucoes2%><br><%=instrucoes3%><br><%=instrucoes4%><br><%=instrucoes5%></layer> </div> <div style="position:absolute;top:480px;left:15px;z-index:2;" class="Campo"> Pagável em qualquer Banco até o vencimento </div> <div style="position:absolute;top:480px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> <%=data_vencimento%> </div> <div style="position:absolute;top:505px;left:15px;z-index:2;" class="Campo"> <%=cedente%> </div> <div style="position:absolute;top:505px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> <%=agencia_codigo%> </div> <div style="position:absolute;top:530px;left:15px;z-index:2;width:110px;" class="Campo"> <%=data_documento%> </div> <div style="position:absolute;top:530px;left:133px;z-index:2;width:160px;" class="Campo"> <%=right("0000000000"& numero_documento, 10)%> </div> <div style="position:absolute;top:530px;left:295px;z-index:2;width:60px;" class="Campo"> <%=especie_doc%> </div> <div style="position:absolute;top:530px;left:364px;z-index:2;width:35px;" class="Campo"> <%=aceite%> </div> <div style="position:absolute;top:530px;left:405px;z-index:2;width:60px;" class="Campo"> <%=data_processamento%> </div> <div style="position:absolute;top:530px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> <%=nosso_numero%> </div> <div style="position:absolute;top:556px;left:15px;z-index:2;" class="Campo"> </div> <div style="position:absolute;top:556px;left:133px;z-index:2;" class="Campo"> <%=carteira%> </div> <div style="position:absolute;top:556px;left:223px;z-index:2;" class="Campo"> <%=especie%> </div> <div style="position:absolute;top:556px;left:283px;z-index:2;" class="Campo"> </div> <div style="position:absolute;top:556px;left:405px;z-index:2;width:65px;text-align:right;" class="Campo"></div> <div style="position:absolute;top:556px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> <%=valor%> </div> <div style="position:absolute;top:580px;left:15px;z-index:2;width:430px;text-align:justify;" class="Campo"> <layer name="helpns" width=430px align="left"><%=instrucoes1%><br><%=instrucoes2%><br><%=instrucoes3%><br><%=instrucoes4%><br><%=instrucoes5%></layer> </div> <div style="position:absolute;top:580px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:605px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:631px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:656px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:581px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div> <div style="position:absolute;top:704px;left:15px;z-index:2;" class="Campo"> <%=nome_sacado%> </div> <div style="position:absolute;top:717px;left:15px;z-index:2;" class="Campo"> <%=endereco_sacado%> </div> <div style="position:absolute;top:830px;left:7px;z-index:2;" class="Titulo11"> Corte na linha pontilhada </div> <div style="position:absolute;top:827px;left:7px;z-index:2;" class="Titulo11"> <img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt=""> </div> <div style="position:absolute;top:760px;left:12px;height:70px;z-index:2;" class="Titulo11"> <table border=0 cellPadding=0 cellSpacing=0 width="666"> <tr> <td colspan="2"> <% next function fbarcode(valor_barras) Dim f, f1, f2, i Dim texto Const fino = 1 Const largo = 3 Const altura = 50 Dim BarCodes(99) if isempty(BarCodes(0)) then BarCodes(0) = "00110" BarCodes(1) = "10001" BarCodes(2) = "01001" BarCodes(3) = "11000" BarCodes(4) = "00101" BarCodes(5) = "10100" BarCodes(6) = "01100" BarCodes(7) = "00011" BarCodes(8) = "10010" BarCodes(9) = "01010" for f1 = 9 to 0 step -1 for f2 = 9 to 0 Step -1 f = f1 * 10 + f2 texto = "" for i = 1 To 5 texto = texto & mid(BarCodes(f1), i, 1) + mid(BarCodes(f2), i, 1) next BarCodes(f) = texto next next end if %> <img src=imagens_bb/p.gif width=<%=fino%> height=<%=altura%> border=0><img src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img src=imagens_bb/p.gif width=<%=fino%> height=<%=altura%> border=0><img src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img <% texto = valor_barras if len( texto ) mod 2 <> 0 then texto = "0" & texto end if do while len(texto) > 0 i = cint( left( texto, 2) ) texto = right( texto, len( texto ) - 2) f = BarCodes(i) for i = 1 to 10 step 2 if mid(f, i, 1) = "0" then f1 = fino else f1 = largo end if %> src=imagens_bb/p.gif width=<%=f1%> height=<%=altura%> border=0><img <% if mid(f, i + 1, 1) = "0" Then f2 = fino else f2 = largo end if %> src=imagens_bb/b.gif width=<%=f2%> height=<%=altura%> border=0><img <% next loop %> src=imagens_bb/p.gif width=<%=largo%> height=<%=altura%> border=0><img src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img src=imagens_bb/p.gif width=<%=1%> height=<%=altura%> border=0> <% end function %> <%=fbarcode(codbar)%> </td> </tr> </table> </div> </div> </body> </html> Alguém pode me ajudar? Obrigado!
  22. glauberportella

    Precisando de Beta Tester para homologar boletos

    Olá a todos, recentemente desenvolvi a API BoletoSinc (www.boletosinc.com.br) mas agora estou precisando de pessoas que possam se cadastrar como beta tester e ajudar na homologação do serviço de emissão de boleto. O ponto é que os bancos precisam homologar com contas reais (pelo menos é o que os gerentes me informam) e não tenho como criar conta em vários bancos para isso. Caso queiram cadastrar efetuem o cadastro no plano grátis e depois notifique que gostaria de abrir conta Beta Tester enviando e-mail para suporte@boletosinc.com.br. Obrigado a todos.
  23. carmelio

    digito DAC do boleto

    Boa tarde galera, estou com um problema ao gerar o código de um boleto, será que alguém pode me ajudar, o problema é o seguinte: Eu informo todos os dados para a geração do boleto, porém existe um código verificador (DAC) dos códigos que não batem de jeito nenhum, vou colocar os dados para vcs entenderem melhor. No boleto da Caixa o código de barras é 86680000002-2 02000703071-9 92015022500-0 00018211599-8 porém no que eu gero vem com o seguinte número: 86600000002-0 02000703071-9 92015022500-0 00018211599-8 este quarto número era para ser o DAC (Dígito de Auto-Conferência) que é um dígito de todos calculos, mas ele não gera de forma correta aí o verificador desta sequencia tb não sai certo. Já tentei várias coisas e não consegui, estou usando o módulo 11 da febraban. Se puderem me ajudar, agradeço desde ja.
  24. sacjamm

    Retorno Automático Banco Sicoob

    Olá amigos, Não sei se estou na área correta, pois sou novo no fórum. Amigos eu desenvolvi um sistema de envios de boleto por e-mail, e funciona perfeitinho, mais eu preciso colocar um sistema de retorno automático de boletos no meu sistema, para este sistema ficar um tanto completo. Eu gostaria de pedir a ajuda de vocês, para que possam me disponibilizar, me orientar, ou até mesmo me enviar este sistema de retorno automatico do boleto Sicoob, creio que se eu entender perfeitamente, como funciona esse sistema, eu consigo fazer os demais. Vale notar, que eu possuo as classes do Manoel Campos que está disponibilizada no GitHub. Então pode até ajudar. Mais por hora, só preciso da ajuda de vocês, e sendo assim, fico disponivel, pra colaborar e ajudar a todos com qualquer tipo de situação, desde colaboração com respostas úteis a doações para manter o fórum no ar. Pois bem sei que o fórum imasters, é um dos melhores fórum de scripts e soluções de desenvolvimento que já acessei. Desde já fico grato com a atenção e compreensão de todos. Aguardando retorno. Atenciosamente, Alisson Maciel
  25. Galera, o que tem de errado nesse meu select? $sql = mysql_query("SELECT c.*, b.* FROM clientes c, boleto b WHERE c.data_venc <= '$tres_dias' AND c.id_cli = b.id_cli AND b.situacao = 'Pendente'"); while ($linha = mysql_fetch_array($sql)){ $email = $linha['email']; echo '<p></p>'; echo 'Cliente ID: '.$linha['id_cli'].'<br />'; echo 'Cliente: '.$linha['nome'].'<br />'; echo 'E-mail: '.$linha['email'].'</br />'; echo 'Ativado: '.$linha['ativado'].'<br />'; echo 'Data do Vencimento: '.date('d/m/Y', strtotime($linha['data_venc'])).''; $message =" Olá ".$linha['nome']. "! O vencimento de sua fatura é no dia ".date('d/m/Y', strtotime($linha['data_venc'])). "! Clique aqui para pagar o seu boleto: ".$linha['link'].$linha['id_bol']." "; $subject = "Pagamento à Vencer"; $headers = 'From: XXXXXX <xxxxxx@hotmail.com>' . "\r\n"; mail($email, $subject, $message, $headers); sleep(2); } ?> Ele está enviando o e-mail corretamente, mas quando clico no link, ele exibe os dados do cliente do último registro. Onde estou errando?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.