Como colocar boletos no site da empresa para os clientes pegarem?

Bom dia gente… Quero saber como faço para colocar os boletos para os clientes baixarem no site da empresa (em java), perdemos muito tempo mandando boletos para todos por e-mail, queremos automatizar, uma coisa bem simples, colocar um campo para o cliente digitar o CNPJ dele a gerar o boleto dele do mês em PDF, alguém pode me ajudar nesse novo desafio??

da uma olhada no pdfBox tem o iText tbm mais esse é pago

Depende, pra gerar arquivo em pdf existem as API’s mencionadas acima, como você vai disponibilizar estes boletos para download vai depender também de como vai programar isto !
vai colocar em um webservice para cada cliente acessar com seu login ? disponibilizar em um
diretório remoto, dropbox, webmail, sei lá , ai você vai ver o melhor caminho, quanto aos boletos, houve recentes alterações pela FEBRABAN na emissão de boletos, obrigatóriedade
de boletos registrados ETC, da uma lida aqui https://portal.febraban.org.br/pagina/3150/1094/pt-br/servicos-novo-plataforma-boletos pra se interar melhor !

Ok, obrigado !!! Vou dar uma olhada…

Boa tarde, a principio queremos fazer algo mais simples possível, na página da empresa, o cliente vai digitar o CNPJ e vai gerar o boleto, seria um login sem senha, como no site do seguro de carro que pago por exemplo… O cliente no caso eu, pessoa física, digito o meu CPF e já gera o boleto em PDF, no caso da empresa o cliente vai entrar com o CNPJ, simples assim. Nada de muito complexo, justamente para facilitar… Ou se você tiver alguma sugestão de uma outra forma de fazer, aceito sugestões… No caso, o banco já nos manda o malote dos boletos, só queremos jogar no site para que
cada cliente pegue o seu e pronto, perdemos muito tempo enviando boletos e ainda não recebem, pagam atrasado… Obrigado.

sim, é viável e pratico a ideia, a implementação pode ter um pouco de trabalho mas não é impossível, acho que o trabalho maior vai ser você capturar da sua pagina o CNPJ/CPF, seu
sistema buscar pelo boleto correspondente e disponibilizar para o cliente já atualizado, hoje
como te disse com o registro dos boletos, você teria que ter um aplicativo de gestão que
em caso de boletos já vencidos, pega este boleto, faz a atualização do mesmo direto no banco e disponibilize para o cliente o mesmo boleto já atualizado, por isso mencionei lá em cima sobre o registro dos boletos,já que a sequencia numérica do mesmo não pode ser alterada, que é o que ocorre no caso de uma segunda via, por este motivo se faz necessário a atualização do boleto via API ou manualmente.