GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

[RESOLVIDO] Stella - Boleto - Código do Cedente 03036


#1

Salve galera do GUJ, tudo bom?

Estou tentando gerar boleto para o Itaú através do Stella.

Seguindo o exemplo da wiki do Stella, meu código ficou: [code]final Datas datas = Datas.newDatas()
.withDocumento(this.getPayment().getBankBill().getDataDoDocumentoCalendar())
.withProcessamento(this.getPayment().getBankBill().getDataDeProcessamentoCalendar())
.withVencimento(this.getPayment().getBankBill().getDataDeVencimentoCalendar());

	final Emissor emissor = Emissor.newEmissor() //pessoa/empresa que gera o boleto
						            .withCedente("Meu cedente")
						            .withAgencia(5590)
						            .withContaCorrente(05734)
						            //.withNumeroConvenio(1207113) //código que identifica um emissor junto ao seu banco para associar seus boletos. Fornecido pelo banco ?
						            .withDigitoContaCorrente('4')
						            .withCarteira(175) //código informado pelo banco pra identificação do tipo do boleto
						            .withNossoNumero(this.getPayment().getBankBill().getNossoNumero()); //código que o cedente escolhe para manter controle sobre seus boletos. Esse valor serve para o cedente identificar quais boletos foram pagos ou não. Recomenda-se o uso de números sequênciais, na geração de diversos boletos, para facilitar a identificação dos boletos pagos
	
	final Sacado sacado = Sacado.newSacado() //pessoa/empresa que deve pagar o boleto
					            .withNome(this.getPayment().getPayer().getCompany().getName())
					            .withEndereco(this.getPayment().getPayer().getAddress().getLine1())
					            .withBairro(this.getPayment().getPayer().getAddress().getLine2())
					            .withCep(this.getPayment().getPayer().getAddress().getZip())
					            .withCidade(this.getPayment().getPayer().getAddress().getCity().getDescription()) 
					            .withUf(this.getPayment().getPayer().getAddress().getCity().getStateOrProvince().getDescription());
	
	final Banco banco = new Itau();
	
	final Boleto boleto = Boleto.newBoleto()
					            .withBanco(banco)
					            .withDatas(datas)
					            .withDescricoes("Assinatura por 12 meses.")
					            .withEmissor(emissor)
					            .withSacado(sacado)
					            .withValorBoleto(1)
					            .withNumeroDoDocumento("12563") //63090X0012563 - código informado pelo banco para identificação do cliente
					            .withInstrucoes("Após vencimento cobrar 0,30% de juros ao dia")
					            .withLocaisDePagamento("Pague nos bancos credenciados. Preferencialmente no Banco Itaú.");
	
	final BoletoGenerator gerador = new BoletoGenerator(boleto);  

	return gerador.toPDF();[/code] Não sei se estou fazendo algo de errado, mas ao imprimir o PDF, o código do cedente está aparecendo como sendo "03036-4", porém eu não configurei esse valor em lugar nenhum.

De acordo com o meu código, o código do cedente não deveria ser 05734?

Agradeço antecipadamente por qualquer dica.





#2

Olá Rogerio,

O problema é que vc está passando um octal no lugar de um inteiro ou long. O problema está no zero da frente:

.withContaCorrente(05734)

O correto é

.withContaCorrente(5734)

Quanto ao uso da lib, fica a sugestão abaixo…

Derivado de http://www.guj.com.br/java/228103-stella-boleto---problemas-e-evolucao-do-projeto

Para a geração de boletos tem também o Bopepo, que está em constante evolução, do projeto JRimum:

Além de gerar um boleto padrão sem esforço algum…

Se vc quiser personalizar o boleto, ele permite personalização através de templates PDFs.
Você pode usar o OpenOffice para desenhar o boleto e depois exportar para pdf. É simples.

Veja este vídeo de personalização de boletos com Bopepo:

[youtube]http://www.youtube.com/watch?v=0kRa2wprDdQ[/youtube]

Este vídeo mostra como gerar boletos personalizados através do componente Bopepo do Projeto JRimum. O vídeo foca num dos recursos mais interessantes, que é como adicionar campos dinâmicos, ou seja, campos que podem ter seus valores fornecidos em tempo de execução.
Ver tutoriais.

http://www.jrimum.org/bopepo/wiki/Componente/Documentacao/Tutoriais

Na versão mais atual já são suportados 20 bancos, é o mais completo atualmente, estamos só aguardando mais feedback do pessoal para lançar a versão final.

http://www.jrimum.org/bopepo/ticket/47

  • Banco do Brasil
  • Bradesco
  • #13 - Banco Real
  • #14 - Itaú
  • #15 - Unibanco
  • #17 - Safra
  • #18 - Mercantil
  • #19 - HSBC
  • #21 - Banrisul
  • #22 - Nossa Caixa S.A.
  • #24 - Banestes
  • #25 - BANCO SANTANDER S.A.
  • #38 - Banco J. Safra
  • #39 - Banco SICREDI
  • #40 - CEF
  • #48 - Banco Rural
  • #56 - Banco Intermedium
  • #57 - Banco do Nordeste do Brasil (BNB)

Se precisar de ajuda e tiver dúvidas, chega lá no grupo que o pessoal te ajuda.

Mais informações sobre o andamento do Projeto Bopepo … vc pode ver no Timeline.


#3

Olá gilmatryx, muito obrigado pela atenção e pelo retorno.

Realmente, isso corrigiu o código do cedente.

Ainda sobre o Stella, os atributos Emissor.numeroDoConvenio e Boleto.numeroDoDocumento são obrigatórios? Em caso positivo, alguém saberia dizer qual é o layout para esses atributos?

Pois mesmo corrigindo o código do cedente, o boleto emitido está acusando código de barras inválido no momento de efetuar o pagamento.

Opa! Vou dar uma olhada no Bopepo sim! Está em algum repositório Maven (não encontrei na wiki)?

Um abraço e muita paz.


#4

Rogerio, quanto aos detalhes do stella, eu não vou saber te responder.

Quanto ao maven do JRimum, vc encontra em:

http://jrimum.org/jrimum/wiki/Projeto/Download

E

http://www.blog.jrimum.org/2011/11/repositorio-maven.html

Qualquer dúvida, dá uma conferida no grupo:

https://groups.google.com/forum/?hl=pt#!forum/jrimum-community


#5

Olá gilmatryx, tudo bom?

Passei a utilizar o bopepo e funcionou na primeira.

Mais uma vez, muito obrigado pela ajuda e pela atenção.


#6

Olá Rogério, tudo bem :slight_smile:

Legal que deu certo! Mesmo que não tivesse dado, era só ir no nosso grupo que também ia dar :lol:

Já que foi útil, … :roll: … nós recentemente criamos a página do JRimum no facebook:

Se puder,… dá um like e ajuda a promover o projeto. Valeu!


#7

Recomendo o projeto Bopepo também.


#8

André,

Se puder então,… dá um like e ajuda a promover o projeto. Valeu!


#9