Estou com uma situação onde um cliente utiliza a carteira 31 no banco do brasil, com um convênio de 6 posições.
Com essa carteira, pelo o que vi, a responsabilidade de emissão e distribuição fica a cargo do banco e hoje ao tentar realizar uma reimpressão utilizando o ACBr com essa configuração, o número bancário está ficando incorreto.
No número bancário que o banco nos devolveu no retorno, não há na composição o convênio da conta mas somente o sequencial elaborado pelo próprio banco.
Convênio: 036125
Número gerado pelo banco: 06154886502-9
Número gerado pelo componente na reimpressão: 03612561548-6
Analisando, vi que quando for convênio de 5 a 6 dígitos, ele sempre vai tentar adicionar o convênio no nosso número, sem considerar carteira ou responsável pela emissão.
No manual de emissão de boleto do banco, não localizei nenhuma regra que sugerisse utilizar o número bancário por inteiro, sem o convênio, no entanto, localizei uma implementação semelhante a essa em um componente de boletos criado em c#, este utilizado em um projeto antigo aqui na empresa.
Não seria o caso de realizar uma tratativa no método FormataNossoNumero para essa carteira, visto que já existe tratamento semelhante para a carteira 16 e 18?
Lembrando também que na geração da remessa existe tratativas específicas para as carteiras 11, 31, 51, 12, 15, 17, onde o responsável pela emissão é diferente de tbCliEmite
Localizei alguns tópicos relacionados, acredito que esse abaixo foi um problema bem parecido.