Gerando Boletos em seu Site Asp.Net C#

Irei repassar a experiência que tive em gerar boletos bancários através de um componente free Boleto.net, onde é feita a geração da imagem do boleto e seu receptivo código de barras.

Boleto.Net é um componente desenvolvido em C# e ASP.NET e contempla as seguintes funcionalidades:

Primeiramente baixe a DLL do componete no site http://boletonet.codeplex.com/, que está na versão 2.0 e crie um projeto novo com referência a essa DLL, conforme mostra a Figura 1.

Figura 1. Novo Projeto

Crie um novo WebForm ou poder ser no seu Default.aspx mesmo e coloque dois paineis, um chamado pnl_dados e o outro logo abaixo, chamado pnl_boleto.

Dentro do painel pnl_dados coloque alguns Edits como txtSacado, txtVencimento, txtEndereco, txtBairro, txtCidade, txtCEP, txtUF e txtValor e suas labels, conforme a Figura 2.

Figura 2. Inserção de edits

Agora crie também um button, "Visualizar Boleto" e coloque o código abaixo:

using BoletoNet;     //referência ao componente Boleto.Net protected void Button1_Click(object sender, EventArgs e)     {                  string vencimento = txtVencimento.Text;         String valorBoleto = txtValor.Text;         String numeroDocumento = "B20005446";         //cedente         String cedente_codigo = "1111111";         String cedente_nossoNumeroBoleto = "22222222";         String cedente_cpfCnpj = "123.456.789-01";         String cedente_nome = "PAULO FREIRE - FOUR FREIRES INF.";         String cedente_agencia = "1000";         String cedente_conta = "22507";         String cedente_digitoConta = "6";         //sacado         String sacado_cpfCnpj = "000.000.000-00";         String sacado_nome = txtSacado.Text;         String sacado_endereco = txtEndereco.Text;         String sacado_bairro = txtBairro.Text;         String sacado_cidade = txtCidade.Text;         String sacado_cep = txtCEP.Text;         String sacado_uf = txtUF.Text;         Cedente cedente = new Cedente(cedente_cpfCnpj, cedente_nome, cedente_agencia, cedente_conta, cedente_digitoConta);         cedente.Codigo = Convert.ToInt32(cedente_codigo);         Boleto boleto = new Boleto(Convert.ToDateTime(vencimento), Convert.ToDouble(valorBoleto), "109", cedente_nossoNumeroBoleto, cedente);         boleto.NumeroDocumento = numeroDocumento;         Sacado sacado = new Sacado(sacado_cpfCnpj, sacado_nome);         boleto.Sacado = sacado;         boleto.Sacado.Endereco.End = sacado_endereco;         boleto.Sacado.Endereco.Bairro = sacado_bairro;         boleto.Sacado.Endereco.Cidade = sacado_cidade;         boleto.Sacado.Endereco.CEP = sacado_cep;         boleto.Sacado.Endereco.UF = sacado_uf;         Instrucao_Itau instrucao = new Instrucao_Itau();         instrucao.Descricao = "Não Receber após o vencimento";         boleto.Instrucoes.Add(instrucao);         EspecieDocumento_Itau especie = new EspecieDocumento_Itau(99);         boleto.EspecieDocumento = especie;         BoletoBancario boleto_bancario = new BoletoBancario();         boleto_bancario.CodigoBanco = 341;         boleto_bancario.Boleto = boleto;         boleto_bancario.MostrarCodigoCarteira = true;         boleto_bancario.Boleto.Valida();         boleto_bancario.MostrarComprovanteEntrega = true;         pnl_dados.Visible = false;         pnl_boleto.Controls.Add(boleto_bancario);         }

Nesse exemplo gero uma imagem do boleto Itaú, todavia existem outros bancos para se trabalhar com esse componente.

Artigos relacionados