====== [ER_005] Requisitos - Consulta de Pendências e Geração de Boletos ====== **Descrição**: Funcionalidade que permite ao usuário consultar pendências de multas vinculadas a um CPF ou CNPJ, visualizar as parcelas em aberto de cada pendência e gerar o boleto bancário correspondente, com redirecionamento ao site do Banco do Brasil para impressão. **Menu / Local de acesso**: Portal TCE-GO | Serviços | Consulta de Pendências e Geração de Boletos **Documento relacionado**: [[pres:gerti:gestao_de_ativos:integracao-bb| Integração com o Banco do Brasil — Emissão de Boletos: guia de uso e testes]] ===== Problema, Escopo e Fora de Escopo ===== **Problema**: A emissão de boletos de multa hoje ocorre em tela do site legado em ASP.NET MVC que exige, obrigatoriamente e em conjunto, número do processo, número do ofício, ano do ofício e CPF/CNPJ. Quem recebeu a notificação e não guardou o ofício não consegue localizar a própria pendência, e a lista de parcelas é apresentada em grade DevExpress dentro de um modal, sem responsividade e sem informação sobre situação de vencimento. A geração abre uma nova janela e transfere o usuário ao Banco do Brasil sem qualquer confirmação intermediária no portal. **Escopo**: * Consulta de pendências por CPF ou CNPJ, com validação do documento * Filtros avançados opcionais por número do processo, número e ano do ofício * Listagem das pendências em aberto com situação, valor total, vencimento e quantidade de parcelas * Detalhamento das parcelas de uma pendência, com seleção única e cálculo do valor a pagar * Geração do boleto pela API de Cobrança do Banco do Brasil (v2), incluindo segunda via * Prorrogação automática da data de vencimento de parcela vencida * Tela de confirmação com linha digitável copiável e acesso ao site do Banco do Brasil * Link do número do processo para o detalhamento do processo (RF-002) **Fora de escopo**: * Renderização ou download da imagem do boleto dentro do portal — a impressão ocorre no site do Banco do Brasil (RN11) * Consulta de situação de pagamento, baixa ou conciliação bancária * Parcelamento, renegociação ou alteração de valores de multa * Emissão de boleto para débitos que não sejam multa vinculada a ofício * Integração MPAG, desativada pelo Banco do Brasil em 31/12/2025 * Autenticação do usuário ou vínculo do boleto a uma conta * Tratamento do CNPJ alfanumérico (Instrução Normativa RFB nº 2.229/2024) na consulta de pendências, na validação do documento (RN01) e na base de dados do Tribunal — adiado por decisão de 2026-09-11, enquanto a estrutura do Tribunal afetada não for ajustada. O único ajuste admitido é o envio do documento do pagador ao Banco do Brasil como texto, conforme o contrato da API (RN17) ===== Atores ===== ^Nível^Perfil^Autenticação^Abrangência| |**PÚBLICO**|Cidadão, Jurisdicionado, Partes Processuais, Instituições|Não obrigatória|Consulta de pendências de multa vinculadas a CPF ou CNPJ e geração de boleto bancário via integração com o Banco do Brasil.| ===== Telas ===== ==== Tela 01 - Consulta de Pendências ==== Tela responsável por permitir a busca de pendências a partir do documento do interessado e, opcionalmente, de filtros avançados. ^Elemento^Tipo^Obrigatório^Valores Possíveis^Valor Padrão^Observação| |CPF/CNPJ|Campo Texto com máscara|Sim|CPF: XXX.XXX.XXX-XX \\ CNPJ: XX.XXX.XXX/XXXX-XX|Vazio|Máscara aplicada automaticamente conforme o comprimento digitado. O documento informado deve ser válido (RN01).| |Filtros Avançados (Opcional)|Seção expansível|Não|–|Recolhido|Exibido ao clicar em "Filtros Avançados (Opcional)". Permite informar Nº Processo, Nº Ofício e Ano Ofício em conjunto (RN02).| |Nº Processo|Campo Texto (somente números)|Não|Numérico, 15 dígitos|Vazio|Exibido apenas dentro dos filtros avançados. Deve conter exatamente 15 dígitos (RN03).| |Nº Ofício|Campo Texto (somente números)|Não|Numérico|Vazio|Exibido apenas dentro dos filtros avançados. Informado em conjunto com Ano Ofício (RN02).| |Ano Ofício|Campo Texto (somente números)|Não|Numérico, 4 dígitos|Vazio|Exibido apenas dentro dos filtros avançados. Informado em conjunto com Nº Ofício (RN02).| |Verificação de Segurança (Captcha)|Componente de Segurança|Sim|–|Vazio|Obrigatório para execução da busca (RN04). Pode ser atualizado pelo usuário.| |Botão "Buscar Pendências"|Botão|Sim|–|–|Executa a consulta de pendências conforme os critérios informados.| ==== Tela 02 - Pendências Encontradas ==== Tela responsável por exibir a lista de pendências identificadas para o documento informado. ^Elemento^Tipo^Obrigatório^Valores Possíveis^Valor Padrão^Observação| |Cabeçalho – Documento consultado|Texto|Sim|CPF ou CNPJ formatado|–|Exibe o documento utilizado na consulta.| |Mensagem informativa|Texto|Sim|–|–|Exibe a quantidade de pendências em aberto encontradas e instrução para o usuário clicar na pendência desejada.| |Número do Processo|Link clicável|Sim|15 dígitos|–|Redireciona o usuário para o **[[pres:gerti:gestao_de_ativos:portal:er_002#fluxo_02_-_visualizar_detalhamento_do_processo|ER_002: Fluxo 02 – Visualizar Detalhamento do Processo]]** em nova aba (RN05).| |Número do Ofício|Texto|Sim|Número do ofício|–|Exibido no card da pendência.| |Situação|Badge|Sim|Em Aberto; Vencido|–|Indica a situação atual da pendência (RN06).| |Valor Total|Moeda (R$)|Sim|Valor monetário|–|Valor total da multa vinculada ao ofício.| |Vencimento|Data (dd/MM/yyyy)|Sim|Data válida|–|Data de vencimento da multa.| |Parcelas|Numérico|Sim|Quantidade de parcelas|–|Quantidade total de parcelas do ofício.| |Link "Clique para ver detalhes e gerar boleto"|Link|Sim|–|–|Aciona o **[[#fluxo_03_-_detalhar_pendencia|Fluxo 03]]**.| |Link "Nova Consulta"|Link|Sim|–|–|Retorna à Tela 01 e limpa os resultados.| ==== Tela 03 - Detalhes da Pendência ==== Tela responsável por exibir as parcelas de uma pendência selecionada e permitir a geração do boleto. ^Elemento^Tipo^Obrigatório^Valores Possíveis^Valor Padrão^Observação| |Situação da Pendência|Badge|Sim|Em Aberto; Vencido|–|Situação geral da pendência (RN06).| |Número do Processo|Link clicável|Sim|15 dígitos|–|Redireciona o usuário para o **[[pres:gerti:gestao_de_ativos:portal:er_002#fluxo_02_-_visualizar_detalhamento_do_processo|ER_002: Fluxo 02 – Visualizar Detalhamento do Processo]]** em nova aba (RN05).| |Número do Ofício / Ano|Texto|Sim|Nº/Ano do ofício|–|Ex.: 00123/2024.| |Valor Total|Moeda (R$)|Sim|Valor monetário|–|Valor total da multa.| |Vencimento Geral|Data (dd/MM/yyyy)|Sim|Data válida|–|Data de vencimento geral da pendência.| |Lista de Parcelas|Seleção (Radio)|Sim|Parcelas disponíveis|–|Seleção única. Cada parcela exibe: número, valor, atualização monetária, vencimento e situação (RN07).| |Situação da Parcela|Badge|Sim|Em Aberto; Vencido|–|Indica a situação individual de cada parcela (RN06).| |Valor da Parcela (calculado)|Moeda (R$)|Sim|Valor monetário|–|Exibido no rodapé após a seleção de parcela. Calculado como: Valor da Parcela + Atualização Monetária + Tarifa Bancária (RN08, RN21). Abaixo do valor, o sistema exibe nota indicando o montante da tarifa incluída. Antes da seleção, exibe "—".| |Botão "Gerar Boleto"|Botão|Sim|–|–|Aciona o **[[#fluxo_04_-_gerar_boleto|Fluxo 04]]** para a parcela selecionada.| |Link "Voltar"|Link|Sim|–|–|Retorna à Tela 02.| ==== Tela 04 - Boleto Gerado com Sucesso ==== Tela responsável por confirmar a geração do boleto e exibir as informações para pagamento. ^Elemento^Tipo^Obrigatório^Valores Possíveis^Valor Padrão^Observação| |Mensagem de Confirmação|Texto|Sim|"Boleto Gerado com Sucesso!"|–|Confirma que o boleto foi registrado no sistema do Banco do Brasil.| |Beneficiário|Texto|Sim|Tribunal de Contas do Estado|–|CNPJ do TCE-GO.| |Pagador (Interessado)|Texto|Sim|Nome do interessado|–|CPF/CNPJ do interessado.| |Parcela|Texto|Sim|"1x"; "2x"; …; "Única"|–|Número da parcela que originou o boleto. Referência exibida junto de Vencimento da Parcela, distinta do Vencimento.| |Vencimento da Parcela|Data (dd/MM/yyyy)|Sim|Data válida|–|Data de vencimento original da parcela, sem prorrogação. Exibida apenas como referência.| |Número do Processo|Texto|Sim|15 dígitos|–|Processo vinculado ao boleto gerado.| |Vencimento|Data (dd/MM/yyyy)|Sim|Data válida|–|Data de vencimento efetiva do boleto, já considerada a prorrogação (RN09). Distinta do Vencimento da Parcela, exibido acima como referência.| |Valor|Moeda (R$)|Sim|Valor monetário|–|Valor total do boleto: Parcela + Atualização Monetária + Tarifa Bancária (RN08, RN21). Abaixo do valor, o sistema exibe nota indicando o montante da tarifa incluída.| |Linha Digitável|Texto com botão "Copiar"|Sim|Código numérico|–|Devolvida pela geração do boleto ou, na segunda via, pelo detalhamento do Banco do Brasil (RN10).| |Botão "Imprimir no site Banco do Brasil"|Botão com link externo|Sim|–|–|Redireciona o usuário ao site do Banco do Brasil para visualização e impressão do boleto (RN11).| |Instruções para Pagamento|Lista informativa|Sim|–|–|Exibe as instruções fixas de pagamento (RN12).| ===== Fluxos ===== ==== Fluxo 01 - Consultar Pendências ==== ^Passo^Ação^Regra^Tela| |01|O usuário acessa a funcionalidade "Consulta de Pendências e Geração de Boletos".| |Tela 01| |03|O usuário informa o CPF/CNPJ obrigatoriamente.|RN01|Tela 01| |03.1|Caso o CPF/CNPJ seja inválido, o sistema apresenta a mensagem de erro correspondente e interrompe a execução.|RN01| | |04|Opcionalmente, o usuário expande a seção "Filtros Avançados" e informa Nº Processo, Nº Ofício e Ano Ofício.|RN02, RN03|Tela 01| |05|O usuário informa o Captcha e aciona o botão "Buscar Pendências".|RN04| | |07|O sistema valida o Captcha informado.|RN04| | |07.1|Caso o Captcha seja inválido, o sistema apresenta a mensagem de erro e interrompe a execução.|RN04| | |09|O sistema consulta as pendências com base nos critérios informados.|RN13| | |09.1|Caso filtros avançados tenham sido informados, o sistema consulta a pendência específica correspondente ao Nº Processo, Nº Ofício e Ano Ofício.|RN02| | |09.2|Caso filtros avançados não tenham sido informados, o sistema retorna todas as pendências em aberto vinculadas ao CPF/CNPJ informado.|RN13| | |10|O sistema verifica se existem pendências com parcela não cancelada e com Data de Notificação preenchida.|RN14| | |10.1|Caso não existam pendências, o sistema executa o **[[#fluxo_02_-_pendencias_nao_encontradas|Fluxo 02]]**.| | | |11|O sistema exibe a Tela 02 com a lista de pendências encontradas.|RN06|Tela 02| ==== Fluxo 02 - Pendências Não Encontradas ==== ^Passo^Ação^Regra^Tela| |01|O sistema não localiza pendências para os critérios informados.|RN13, RN14|Tela 01| |02|O sistema apresenta a mensagem: "Nenhuma pendência encontrada."|RN13| | |03|O sistema permanece na Tela 01 permitindo nova tentativa.| |Tela 01| ==== Fluxo 03 - Detalhar Pendência ==== ^Passo^Ação^Regra^Tela| |01|O usuário clica em "Clique para ver detalhes e gerar boleto" em uma pendência da lista.| |Tela 02| |02|O sistema consulta as parcelas do ofício selecionado, ordenadas por data de vencimento.|RN14| | |03|O sistema exibe a Tela 03 com os dados da pendência e a lista de parcelas disponíveis.|RN07|Tela 03| |04|O usuário seleciona uma parcela.|RN07|Tela 03| |05|O sistema calcula e exibe o valor total da parcela selecionada: Valor da Parcela + Atualização Monetária + Tarifa Bancária, com nota indicando o montante da tarifa incluída.|RN08, RN21|Tela 03| |06|O usuário aciona o botão "Gerar Boleto".| | | |07|O sistema executa o **[[#fluxo_04_-_gerar_boleto|Fluxo 04]]**.| | | ==== Fluxo 04 - Gerar Boleto ==== ^Passo^Ação^Regra^Tela| |01|O sistema recebe a solicitação de geração de boleto para a parcela selecionada.| |Tela 03| |02|O sistema consulta os dados da boleta correspondente via ''TCE.Compartilhado → ServicoDeOficioWeb → GeraBoleta'' → ''RepositorioDeOficioWeb → ConsultaBoleta'' → view ''VWEB_BOLETA''.| | | |03|O sistema verifica a data de vencimento da parcela e, se houver, o novo vencimento de boleto emitido anteriormente.|RN09| | |03.1|Caso o vencimento esteja expirado e não haja novo vencimento vigente, o sistema emite novo título: incrementa a versão e o número do título, define o vencimento para 2 dias a partir da data atual e utiliza o valor atualizado (parcela + atualização monetária até a data atual + tarifa bancária).|RN08, RN09, RN22| | |03.2|Caso o vencimento original esteja expirado, mas o novo vencimento do título emitido anteriormente ainda esteja vigente, o sistema mantém esse título, sem emitir outro.|RN09| | |04|O sistema verifica se já existe boleto gerado para o número do título via integração com a API do Banco do Brasil.|RN17| | |04.1|Caso já exista boleto gerado para o número do título e o valor não tenha sido alterado, o sistema executa o **[[#fluxo_05_-_gerar_segunda_via_do_boleto|Fluxo 05]]**.|RN17| | |04.2|Caso não exista boleto gerado anteriormente, o sistema realiza a geração do boleto junto à API do Banco do Brasil.|RN17| | |05|O sistema envia os dados do boleto à API do Banco do Brasil (''POST https://api.bb.com.br/cobrancas/v2/boletos'').|RN17| | |06|O sistema salva o link de segunda via do boleto (''urlImagemBoleto'') retornado pelo Banco do Brasil na tabela ''PRO_URLIMAGEMBOLETO'' (campos: PROOFIC_ID, NUMERO_TITULO_CLIENTE, URL_IMAGEM_BOLETO).|RN18| | |07|O sistema registra o envio de e-mail de monitoramento interno com os dados do boleto gerado.|RN19| | |08|O sistema exibe a Tela 04 com as informações do boleto gerado: Beneficiário, Pagador, Parcela e Vencimento da Parcela (referência), Processo, Vencimento do boleto, Valor e a Linha Digitável devolvida na geração.|RN10|Tela 04| |08.1|Caso a API do Banco do Brasil retorne erro na geração, o sistema apresenta a mensagem: "Problema ao acessar endereço [URL] hospedado nos servidores do Banco do Brasil. Tente novamente mais tarde. Se o problema persistir entre em contato com o suporte do TCE-GO." e redireciona para a Tela 01.| | | ==== Fluxo 05 - Gerar Segunda Via do Boleto ==== ^Passo^Ação^Regra^Tela| |01|O sistema identifica que já existe boleto gerado para o número do título, dentro do vencimento original ou do novo vencimento vigente. O boleto existente não é alterado no Banco do Brasil.|RN09, RN17|Tela 03| |02|O sistema aciona o detalhamento do boleto na API do Banco do Brasil (''GET https://api.bb.com.br/cobrancas/v2/boletos/:id'') para obter o código da linha digitável.|RN10| | |02.1|O sistema utiliza como destino do botão de impressão o link de segunda via persistido ou, na falta dele, monta a URL de redirecionamento a partir da linha digitável e do número de inscrição do pagador.|RN11, RN18| | |03|O sistema registra o envio de e-mail de monitoramento interno com os dados do boleto.|RN19| | |04|O sistema exibe a Tela 04 com as informações da segunda via do boleto.|RN10|Tela 04| ===== RN – Regras de Negócio ===== **RN15 e RN16 não existem** — nunca foram atribuídos e não devem ser reutilizados. ^ID^Descrição^ |RN01|**Validação de CPF e CNPJ** – O CPF/CNPJ informado é obrigatório e deve ser válido. A máscara é aplicada automaticamente conforme o comprimento digitado (CPF: XXX.XXX.XXX-XX / CNPJ: XX.XXX.XXX/XXXX-XX). A validação ocorre conforme o comprimento: \\ – Até 11 dígitos: aplica validação de CPF → mensagem de erro: "CPF informado é inválido." \\ – Acima de 11 dígitos: aplica validação de CNPJ → mensagem de erro: "CNPJ informado é inválido." \\ Validação executada em: ''TCE.WebSites → BoletoController → ValidaCpfOuCnpj''.| |RN02|**Filtros Avançados Opcionais** – O usuário pode informar, opcionalmente, Nº Processo, Nº Ofício e Ano Ofício para obter uma pendência específica. Quando não informados, o sistema retorna todas as pendências em aberto vinculadas ao CPF/CNPJ.| |RN03|**Formato do Número do Processo** – O Nº Processo deve conter exatamente 15 dígitos numéricos. Exemplo: 202500047004104.| |RN04|**Captcha Obrigatório** – A busca de pendências somente poderá ser executada após a validação do Captcha de segurança. O campo é obrigatório.| |RN05|**Link para Detalhamento do Processo** – O número do processo exibido nas Telas 02 e 03 é um link clicável que abre em nova aba o **[[pres:gerti:gestao_de_ativos:portal:er_002#fluxo_02_-_visualizar_detalhamento_do_processo|ER_002: Fluxo 02 – Visualizar Detalhamento do Processo]]**.| |RN06|**Situação da Pendência e das Parcelas** – A situação é exibida como badge e pode assumir os valores: "Em Aberto" ou "Vencido". Aplica-se tanto ao nível da pendência (Tela 02) quanto ao nível de cada parcela (Tela 03).| |RN07|**Seleção Única de Parcela** – A seleção de parcela para geração de boleto é exclusiva (radio button). Somente uma parcela pode ser selecionada por vez. A consulta e exibição das parcelas seguem as regras definidas em RN14.| |RN08|**Cálculo do Valor Total da Parcela** – Ao selecionar uma parcela, o sistema calcula e exibe o valor total: Valor da Parcela + Atualização Monetária + Tarifa Bancária (RN21). A atualização monetária (''VALR_CORRECAO'', na view ''VWEB_PARCMULTAS'') é calculada pela função Oracle ''fweb_correcao_monet'', que aplica o cálculo do GCAR (''PCAR_CALCULO'') ao valor da parcela, do vencimento original até a data atual, somente para parcela vencida; nas demais, é zero. A atualização soma-se ao valor nominal do boleto enviado ao Banco do Brasil (''valorOriginal'', lido de ''VALOR_BOLETA''), e a tarifa é somada à parte. Ex.: parcela R$ 100,00 + atualização R$ 0,15 + tarifa R$ 1,87 = R$ 102,02. Este valor é o que será cobrado no boleto gerado e é replicado na Tela 04. A tela indica separadamente o montante da tarifa incluída.| |RN09|**Boleto de Parcela Vencida** – Quando o vencimento da parcela — ou o novo vencimento de boleto emitido anteriormente (''DATA_VENCNOVA_D'') — estiver expirado na data da geração, o sistema emite **novo título**: incrementa a versão do boleto (''NUMR_VERSBOLETA_N'' + 1) e o número do título (RN22), grava em ''DATA_VENCNOVA_D'', na tabela ''PRO_PARCMULTAS'', o novo vencimento — 2 (dois) dias a partir da data atual — e registra o boleto com o valor atualizado (RN08). \\ – Enquanto esse novo vencimento estiver vigente, nova solicitação para a mesma parcela devolve a segunda via do título dessa versão (Fluxo 05). \\ – Também é emitido novo título quando o valor da boleta mudou desde a última emissão (''VALOR_PARCELA_ANTIGO'' ≠ ''VALOR_BOLETA''). \\ – O título anterior **não é alterado nem baixado** no Banco do Brasil e permanece registrado no convênio, sem efeito de cobrança ao pagador: os boletos do TCE-GO não são enviados a protesto nem recebidos após o vencimento (RN12). Se o convênio tarifar a entrada do boleto, cada novo título não pago é custo do Tribunal. Comportamento **herdado do legado** e mantido na migração para a API; o tratamento do título anterior está descrito em **[[#melhorias_previstas|Melhorias Previstas — Melhoria 01]]**.| |RN10|**Linha Digitável** – Exibida na Tela 04 com botão de cópia para a área de transferência. Na geração, é obtida da própria resposta do registro do boleto (''POST https://api.bb.com.br/cobrancas/v2/boletos'', campo ''linhaDigitavel''). Na segunda via, é obtida pelo detalhamento do boleto (''GET https://api.bb.com.br/cobrancas/v2/boletos/:id'', campo ''codigoLinhaDigitavel''). Como o boleto existente nunca tem o vencimento alterado (RN09), a linha digitável da segunda via é a mesma devolvida na geração do título.| |RN11|**Redirecionamento para Impressão** – A imagem do boleto não é disponibilizada pela integração: a API de Cobrança devolve, no campo ''urlImagemBoleto'', o link de emissão da segunda via no site do Banco do Brasil. A Tela 04 apresenta o botão "Imprimir no site Banco do Brasil", que encaminha o usuário a esse link, persistido conforme RN18. Na falta de link persistido, o encaminhamento é para ''https://boleto.apps.bb.com.br/segunda-via'', com a linha digitável e o número de inscrição do pagador na URL.| |RN12|**Instruções para Pagamento** – As seguintes instruções são exibidas fixamente na Tela 04: \\ – "Este boleto pode ser pago até a data de vencimento, após o vencimento, o boleto não pode ser pago." \\ – "O pagamento pode ser efetuado via internet banking em qualquer banco ou casas lotéricas." \\ – "Guarde o comprovante de pagamento."| |RN13|**Consulta de Pendências** – A consulta de pendências é realizada via ''TCE.Compartilhado → ServicoDeOficioWeb → ConsulteSeExisteOficio'' → ''RepositorioDeOficioWeb → ConsulteSeExisteOficio'', que verifica na base de dados o ofício correspondente ao CPF/CNPJ e, quando informados, ao Nº Processo, Nº Ofício e Ano Ofício. Ofícios com situação "CANCELADO" não são retornados.| |RN14|**Consulta de Parcelas** – A consulta de parcelas é realizada via ''TCE.Compartilhado → ServicoDeOficioWeb → ConsulteParcelas'' → ''RepositorioDeOficioWeb → ConsulteParcelas''. As parcelas são exibidas ordenadas por data de vencimento em ordem crescente. Parcelas canceladas não devem ser retornadas. A exibição é paginada com 5 (cinco) parcelas por vez (RN20).| |RN17|**Integração com API de Cobrança do Banco do Brasil** – A geração e o gerenciamento de boletos utilizam a API de Cobrança v2, ativa desde 01/01/2026, em substituição à integração MPAG encerrada em 31/12/2025. Geração: ''POST /cobrancas/v2/boletos''; detalhamento: ''GET /cobrancas/v2/boletos/:id''. Autenticação por OAuth 2.0 com escopo de cobrança, usando ''clientId'' e ''clientSecret'' configurados em ''ApiBancoBrasilHelper''. A comunicação exige TLS 1.2. A existência de boleto anterior é verificada pelo detalhamento: retorno de sucesso indica boleto existente; o código de "número do título não encontrado" indica ausência. A alteração de boleto (''PATCH /cobrancas/v2/boletos/:id'') **não é utilizada** pela funcionalidade (RN09); pela API, só é aceita a partir de 30 minutos após a geração, admite uma alteração por chamada e não devolve a linha digitável. O número de inscrição do pagador é enviado como texto, conforme o contrato vigente da API (''OpenAPI_BB_Cobranças_v2.json'', versão 3.2.2).| |RN18|**Persistência da URL do Boleto** – Após geração bem-sucedida do boleto, o sistema salva a URL da imagem retornada pelo Banco do Brasil na tabela Oracle ''PRO_URLIMAGEMBOLETO'' (campos: PROOFIC_ID, NUMERO_TITULO_CLIENTE, URL_IMAGEM_BOLETO). Esta URL é consultada nas gerações de segunda via antes de acionar novamente a API do Banco do Brasil.| |RN19|**Monitoramento por E-mail** – A cada geração ou segunda via de boleto, o sistema envia automaticamente um e-mail de monitoramento interno para a lista de destinatários configurada em ''ApiBancoBrasilHelper'', a partir do remetente ''informatica@tce.go.gov.br'', com os dados do boleto gerado: data de vencimento, valor, nosso número, nome do pagador, CPF/CNPJ, Id do Ofício e código do processo.| |RN20|**Paginação de Parcelas** – A lista de parcelas exibida na Tela 03 é paginada com 5 (cinco) parcelas por página.| |RN21|**Mensagem e Tarifa do Boleto** – O boleto é emitido com a mensagem: "Multa pertinente ao processo [nº]. Após prazo definido pelo TCE-GO o valor será corrigido pelo IPCA Acumulado. Tarifa de cobrança bancária de R$ [valor]." A tarifa vem de ''VALR_TARIBANCARIA_N'' e compõe o valor da boleta. O título é emitido como duplicata de serviço, com aceite "A" e sem permissão de recebimento parcial.| |RN22|**Número do Título do Cliente** – Identificador do boleto junto ao Banco do Brasil, formado por "000" + número do convênio com 7 dígitos + 10 dígitos finais do número de controle interno do TCE-GO (''NUMR_PEDIDO'', na view ''VWEB_BOLETA''). É a chave usada para detalhamento e recuperação da URL da imagem. Na emissão de novo título (RN09), os 2 (dois) últimos dígitos do número de controle são incrementados em 1.| ===== Melhorias Previstas ===== ==== Melhoria 01 - Tratar o boleto anterior na geração de boleto de parcela vencida ==== **Comportamento atual (herdado do legado)**: quando o vencimento da parcela — ou o novo vencimento de boleto emitido anteriormente — está expirado, o sistema emite um **novo título** no Banco do Brasil, com vencimento em 2 dias a partir da data atual e valor atualizado (RN08, RN09). O título anterior **não é alterado nem baixado** e permanece registrado no convênio do Tribunal. **Origem**: comportamento do site legado anterior à API de Cobrança v2. Na migração para a API ([[https://projetos.tce.go.gov.br/issues/35881|#35881]]), decidiu-se mantê-lo: a alteração do título existente enfrentou resistência técnica, não estava claro se a data de vencimento e o valor nominal do boleto podiam ser alterados pela API — a especificação vigente confirma que ambos são alteráveis —, e o escopo da demanda era apenas migrar a integração. **Impacto atual**: sem efeito de cobrança ao pagador — os boletos do TCE-GO não são enviados a protesto nem recebidos após o vencimento (RN12). Cada nova emissão, porém, deixa um título anterior em aberto no convênio. **Custo a confirmar**: a tarifa repassada ao pagador (RN21) só é recuperada quando o boleto é pago. Se o contrato do convênio tarifar a entrada (registro) do boleto, cada título emitido e não pago é custo do Tribunal — e, no comportamento atual, uma mesma parcela vencida pode gerar vários títulos. **Melhoria proposta** — uma das alternativas: * **alterar o título existente** pela API (''PATCH /cobrancas/v2/boletos/:id''), atualizando a data de vencimento e, quando a atualização monetária mudar, o valor nominal; ou * **baixar o título anterior** (''POST /cobrancas/v2/boletos/:id/baixar'') ao emitir o novo. **Pontos a confirmar antes da implementação**: * **alterabilidade — confirmada na especificação da API** (''OpenAPI_BB_Cobranças_v2.json'', versão 3.2.2): o ''PATCH'' altera a data de vencimento (''"indicadorNovaDataVencimento": "S"'' com ''"alteracaoData": {"novaDataVencimento": "dd.mm.aaaa"}'') e o valor nominal (''"indicadorNovoValorNominal": "S"'' com ''"alteracaoValor": {"novoValorNominal": 0.00}''); os demais indicadores obrigatórios seguem com ''"N"''. Resta confirmar em homologação se as duas alterações podem ir na mesma chamada — a documentação do banco admite uma alteração por chamada, aceita só a partir de 30 minutos após a geração; * **ajustar o contrato de alteração do código existente**: o ''BoletoAlterar'' do ''TCE.Compartilhado'' e do site legado já tem ''indicadorNovoValorNominal'' e ''novoValorNominal'', mas serializa ''novoValorNominal'' na raiz do corpo, e não dentro de ''alteracaoValor'' como exige a especificação — reaproveitado sem ajuste, o banco não recebe o novo valor; * o desvio de alteração de vencimento já existe no código do site legado e do Catálogo de Serviços, mas está inalcançável desde a correção de 2025-12-22 (commit ''cf619de'', erro 500 relatado em [[https://projetos.tce.go.gov.br/issues/38054|#38054]]) — deve ser corrigido ou removido; * quais eventos o convênio tarifa (entrada, liquidação, baixa, alteração) — define o custo atual dos títulos não pagos e se alterar o título existente, que pode ter tarifa própria, custa menos que emitir novo; consultar o contrato ou os movimentos do convênio pela API (''POST /convenios/{id}/listar-retorno-movimento'', campo ''valorTarifa''); * priorização com a área de arrecadação. **Situação**: não iniciada. Não bloqueia a entrega do RF-005. ---- //Gerado com: documentar-funcionalidade-v2.md — projeção parcial do PRD 1.4: seções Problema, Escopo e Fora de Escopo e Restrições, Dependências e Impactos; RN08, RN10, RN11, RN17, RN21 e RN22; Telas 03 e 04; Fluxos 03, 04 e 05. Atualizada manualmente para o PRD 1.5: RN08, RN09, RN10, RN17 e RN22; Fluxos 04 e 05; seção Melhorias Previstas, a partir da melhoria registrada no § 22 do PRD. Não projetadas: Critérios de Aceite, Pendências e Dúvidas em Aberto, Histórico de Versões// \\ //Revisado por: @pramorim - Paulo Ricardo Amorim Silva//