Nesse final de ano resolvemos (eu e o Rodrigo) fazer um plugin para gerar boletos em Rails. Antes de fazer, procuramos estudar o que existia. Testamos muito o ActsAsPayment do Kivanio. Mas encontramos algumas barreiras. A inicial é que precisávamos do plugin para o Itaú e o ActsAsPayment só tinha para o Banco do Brasil. Por isso, a primeira coisa foi submetermos uma alteração ao plugin existente para acrescentar o Itaú. Mas isso não parecia suficiente. O plugin é difícil de estender, falta um pouco de documentação e validações.
Por isso optamos por criar um plugin: o KillBill, que está disponível no GitHub. Ao criar esse plugin, fizemos mais algumas mudanças: a primeira foi usar a dupla Prawn / Barby para criar pdfs. Isso porque são 2 bilbiotecas em puro Ruby. Outra escolha foi colocar o código fonte da criação das imagens para o fundo do boleto e exemplos para que os testes pudessem ser executados sem ter que misturar com o seu código fonte, ou seja, você pode testar sem ter que alterar nenhum modelo ou controller da sua aplicação.
Além disso, você pode testar se o boleto é válido antes de enviar para a impressão. Isso facilita, em muito, o tratamento de erros. Para os testes, optamos pelo Rspec (até porque é o padrão aqui na Riopro).
O plugin também está tratando dos arquivos de retorno do Itaú e também é muito fácil de estender. Estamos conversando com o Kivanio para juntar os plugins em um só. Por isso esperamos que possam colaborar, até mesmo com críticas.
É isso, fazemos votos que todos tenham tido um ótimo natal e um tenham uma ótima virada de ano!
Otavio, sugiro publicar o plugin como uma Gem, em vez de um plugin, se possível.
Ola eduardo,
Obrigado pelo interesse. Ja estamos trabalhando para isso. Esperamos ter novidades em breve. De qualquer forma, se quiser colaborar, sera muito bem-vindo.
Abracos, otavio
o gloria, se isso der certo, vou poder mudar a aplicaçao de boletos para a rails!
Bacana Henrique, estamos torcendo por você.