DETETIVE.NET LTDA Sistema de Geração de Boletos Bancários - GERABOLETO Manual de Uso e Contrato de Licença www.divulgue.com/geraboleto O que é o GERABOLETO? O GERABOLETO é um sistema de geração de boletos em sites e aplicações WEB. Cuidadosamente desenvolvido e exaustivamente testado, o GERABOLETO lhe permitirá oferecer em seus sistemas uma das formas de pagamento mais práticas e seguras utilizadas na internet. Atualmente disponível para as tecnologias ASP E PHP, o GERABOLETO é a maneira mais simples e eficiente emitir boletos através de seu site, seja ele de e-commerce, cadastro de clientes, assinaturas, planos de mensalidades, intranets, extranets, etc. É imprescindível a leitura deste documento antes de se iniciar a instalação do GERABOLETO em sua aplicação. O objetivo deste documento é lhe oferecer informações sobre como configurar o sistema, adaptando-o para seu projeto, bem como lhe esclarecer algumas questões a respeito da licença de uso do produto. Licença de Uso A cópia do GERABOLETO que acompanha este documento está licenciada apenas para uso e deverá ser utilizada apenas em sua aplicação, não sendo permitida a revenda da mesma, estando essa ação sujeita às penas prevista em lei. A DETETIVE.NET não se responsabiliza por quaisquer prejuízos causados pelo uso GERABOLETO, bem como por imperícia ou alterações inadequadas no código fonte do mesmo. Caso você necessite de uma licença para a revenda do GERABOLETO, entre em contato conosco. Padrões Bancários e FEBRABAN A cópia do GERABOLETO que você está recebendo já está configurada para trabalhar de acordo com as especificações do seu banco, bem como as normas e padrões FEBRABAN(Federação Brasileira das Associações de Bancos). Cabe a você, comprador, apenas a adaptação do GERABOLETO a sua aplicação. Sistema para geração de boletos Os dados que vêm previamente setados no GERABOLETO devem ser substituídos pelos seus dados. Estes dados podem vir de um Banco de Dados ou Mesmo de um Formulário WEB, como será explicado posteriormente. Principais campos de um boleto bancário 1. Código do Banco É composto do código do banco, mais o dígito. 2. Linha digitável É a representação numérica do código de barras. A linha digitável é baseada no valor do código de barras, mas não é o mesmo número. Ela serve, para o pagamento do boleto via internet e também é utilizada quando o código de barras esta danificado. 3. Vencimento Data de vencimento do boleto 4. Agência código cedente Este campo varia conforme o banco, mas em geral é composto pelo numero da carteira, agencia, conta e digito dependendo do banco pode ser: agencia+conta ou mesmo carteira+agencia+conta, cada banco tem um padrão. 5. Nosso Número Este campo também varia conforme o banco, mas você deve dar uma atenção especial a ele, porque quando o boleto é pago em geral é esse numero que aparece no seu extrato, assim você tem como identificar o boleto pago. Portanto esse numero, deve ser diferente para cada boleto emitido, e não podendo haver duplicidades. Alguns bancos fornecem uma faixa de números que o cliente pode trabalhar, outros já deixam a critério do cliente. 6. Valor do Documento Este campo contem o valor do documento, com duas casas decimais e virgula como separador decimal. 7. Código de Barras São código de barras, que através de sua espessura representam "0" ou "1" em binário. No total o código de barras é composto por 44 dígitos numéricos, que representam o valor, data de vencimento entre outras informações do boleto, a composição e disposição desses números variam de banco pra banco, podendo conter o numero da agencia, conta corrente, código do cliente, etc. 8. Carteira Contem o código da carteira, que esta sendo utilizada. Isto também muda de banco para banco, mais adiante darei detalhes de qual é a mais indicada para pagamentos via internet e o porque. 9. Sacado Sacado é quem paga o boleto. Este campo contem, os dados da pessoa que ira pagar o boleto, nome endereço etc.. 10. Data do Documento Data em que o boleto foi gerado ou emitido, no caso de segunda via por internet. 11. Cedente Cedente é quem emitiu o boleto. Este campo contem o nome de quem emitiu o boleto, em geral o titular da conta. Podendo ser pessoa física ou jurídica, mas isso depende do banco. Antes de começar a emitir boletos... 1. Para que você possa emitir boletos, você precisa que a sua conta esteja devidamente habilitada para cobrança bancaria via boletos. Dessa forma você estará garantindo que os valores correspondentes aos boletos pagos serão devidamente creditados em sua conta. 2. Para solicitar a habilitação da sua conta para o recebimento de pagamentos de boletos, informe-se junto a seu banco ou gerente da sua agência sobre os procedimentos a serem adotados. Caso você já emita boletos na carteira escolhida, essa solicitação não é necessária. 3. Antes de colocar o GERABOLETO em produção, emita alguns boletos de teste de baixo valor. Esse procedimento é importante para que você tenha certeza de ter configurado corretamente o GERABOLETO para trabalhar com sua aplicação. Tente pagar um boleto de baixo valor já emitido pela sua aplicação. Confira se o valor pago foi devidamente creditado em sua conta. Como adaptar o GERABOLETO para sua aplicação? 1. Para configurar o GERABOLETO é recomendável se ter um pouco de conhecimento da tecnologia correspondente à versão do GERABOLETO que você está adquirindo(ASP ou PHP). Caso você não se sinta seguro para realizar essa configuração, peça ajuda de um técnico ou alguém que esteja mais familiarizado com a tecnologia do que você.Realizamos este serviço mediante pagamento de nova taxa, sendo esta de instalação e configuração. Entre em contato conosco via [email protected] 2. Você deverá editar o arquivo geraboleto-nome-do-banco.asp ou geraboleto-nome-do-banco.php. Neste arquivo são atribuídos os dados que compõem o boleto. 3. Abra esse arquivo em um editor de sua preferência. 4. No inicio deste arquivo você encontrará um resumo da licença e termo de uso. 5. Logo em seguida estão as variáveis que irão receber os valores do boleto a ser gerado. Diferentes formas de atribuição dos valores a essas variáveis serão detalhadamente descritas posteriormente, para cada tecnologia(ASP ou PHP). Formatação de data e valor no sistema do GERABOLETO O GERABOLETO trabalha com os seguintes formatos: 1. Data = DD/MM/AAAA (ex.: 15/01/2004) 2. Valor = 9,99 (Utilizar virgula como separador decimal, não utilize ponto nem R$ - ex.: 1500,00 - 39,67 – 0,89 ) ATENÇÃO Não ultrapasse a quantidade máxima de dígitos quando especificada. Isso lhe garantirá a não violação dos padrões de seu banco e do padrão FEBRABAN. Exemplo parcial da estrutura do script PHP: $entra["data_vencimento"] $entra["valor"] $entra["nosso_numero"] = "01/05/2003"; = "22,50"; = "58"; // Data de Vencimento do Boleto (DD/MM/AAAA) // Valor do Boleto // Nosso Número O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. ASP: data_vencimento valor nosso_numero = "28/9/2003" = "1,00" = "547" ' Data de Vencimento ' Valor do Boleto ' Nosso numero O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. Nos dois exemplos acima, foram atribuídos valores estáticos, ou seja, constantes. Agora é preciso substituir esses dados pelos dados do seu sistema. Esses podem ser: o resultado de uma consulta a banco de dados, um formulário via POST ou GET, ou uma URL. Script – dados vindos a partir de uma base de dados Assumimos aqui que você já tem uma base de dados com os seguintes campos: data_vencimento, valor e nosso_numero. ATENÇÃO O nosso_numero é o código que lhe permite identificar qual boleto foi pago, portanto ele não poderá se repetir nunca. Além disso, a emissão de boletos com o nosso número igual poderá implicar em problemas com o seu banco e fará com que você tenha dificuldades em identificar de qual cliente era o boleto pago. É importante que os dados do sacado fiquem fixos(constantes). Isso lhe garante que o dinheiro referente ao boleto emitido será corretamente creditado em sua conta. O código dentro do script ficaria da seguinte forma: PHP Dados vindos a partir de um banco de dados Mysql $r $rs $entra["data_vencimento"] $entra["valor"] $entra["nosso_numero"] = mysql_query($sql); = mysql_fetch_array($sql); = $rs[“data_vencimento”]; = $rs[“valor_boleto”]; = $rs[“nosso_numero”]; // Criação do recordset contendo os dados para o boleto. // Array do recordset contendo os dados para o boleto. // Data no formato DD/MM/AAAA // Valor no Formato 9,99 // número que não se repete – sequencial por exemplo O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. ASP Dados vindos a partir de um banco de dados Access Set Rs = Server.CreateObject(“ADODB.Recordset”) Rs.open sql, conexao data_vencimento = Rs(“data_vencimento”) valor = Rs(“valor”) nosso_numero = Rs(“nossso_numero”) O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. Script – Dados vindos de um formulário POST Assumimos aqui que você já tem um formulário POST com os seguintes campos: data_vencimento, valor e nosso_numero (atenção: o nosso_numero é o código que lhe permite identificar qual boleto foi pago, portanto ele não poderá se repetir nunca). O código dentro do script ficaria da seguinte forma: PHP $entra["data_vencimento"] $entra["valor"] $entra["nosso_numero"] = $_POST[“data_vencimento”]; = $_POST[“valor_boleto”]; = $_POST[“nosso_numero”]; // Data no formato DD/MM/AAAA // Valor no Formato 1,00 (Virgula) // número que não se repete O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. ASP data_vencimento valor nosso_numero = Request.form(“data_vencimento”) = Request.form(“valor”) = Request.form(“nossso_numero”) O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. Script – Dados vindos de um formulário GET Assumimos aqui que você já tem um formulário GET ou URL com os seguintes campos: data_vencimento, valor e nosso_numero (atenção: o nosso_numero é o código que lhe permite identificar qual boleto foi pago, portanto ele não poderá se repetir nunca). PHP $entra["data_vencimento"] $entra["valor"] $entra["nosso_numero"] = $_GET[“data_vencimento”]; = $_GET[“valor_boleto”]; = $_GET[“nosso_numero”]; // Data no formato DD/MM/AAAA // Valor no Formato 1,00 (Virgula) // número que não se repete O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. ASP data_vencimento = Request.QueryString(“data_vencimento”) valor = Request.QueryString (“valor”) nosso_numero = Request.QueryString (“nossso_numero”) O restante do código segue a mesma estrutura, exceto os dados do sacado (emissor do boleto) que podem e devem ficar fixos (da mesma forma que consta no script), assim evita-se erros. Finalizando... Esperamos que agora tenham sido esclarecidas todas as suas dúvidas a respeito de como o GERABOLETO se integra a seu site ou sistema. A forma como os dados são facilmente atribuídos permite uma flexibilidade muito grande com relação à fonte de dados para a emissão do boleto. O GERABOLETO se adapta a seus sistema ou site, não o contrário. Atenciosamente, Equipe de desenvolvimento GERABOLETO www.divulgue.com/geraboleto Detetive.net ltda. www.detetive.net Conheça também: Divulgue! Líder absoluto em cadastro em sites de busca. www.divulgue.com