Files
sigrhapf/Documents/sigfip/sigefp/ANALISE_ESPECIFICACAO_TESOURO.md
T
2026-05-19 11:45:46 +00:00

8.5 KiB

📊 Análise Comparativa: Especificação vs Implementação - Módulo Tesouro

Data: 2025-01-XX
Objetivo: Comparar especificação de requisitos com implementação atual e identificar gaps


📋 Resumo Executivo

Requisito Status Prioridade Complexidade
Hierarquia CUT Não implementado 🔴 Crítico Alta
Atributos de Conta (IBAN, SWIFT, etc.) Parcial 🔴 Crítico Baixa
Plano de Tesouraria (PT) Não implementado 🔴 Crítico Média
Retenção de Impostos Não implementado 🟡 Alta Média
Nivelamento Automático Não implementado 🟡 Alta Alta
Importação MT940/CAMT.053 ⚠️ Parcial 🟡 Média Média
Geração XML ISO 20022 Não implementado 🟡 Média Alta
Dashboard KPIs Não implementado 🟢 Baixa Baixa

🔍 Análise Detalhada

1. Arquitetura de Dados: Estrutura da CUT

O que temos:

  • CashAccount com campos básicos (code, name, type, accountNumber, branchCode)
  • Suporte a orgUnitId (vínculo com unidade orgânica)
  • Saldos (currentBalance, availableBalance)

O que falta (CRÍTICO):

1.1 Hierarquia Virtual de Contas

  • Campo parentAccountId para hierarquia
  • Tipo de conta: CUT Principal (BCEAO), Correspondente, Trânsito
  • Agregação automática de saldos hierárquicos

1.2 Atributos Obrigatórios

  • iban (IBAN da conta)
  • swiftCode (Código SWIFT)
  • accountingCode (Código Contabilístico - Classe 5)
  • accountType (Receita/Despesa/Mista)
  • overdraftLimit (Limite de descoberto)

Impacto: Sem hierarquia, não é possível consolidar saldos da CUT. Sem atributos, não há integração com sistemas bancários.


2. Processos Core

2.1 Gestão do Plano de Tesouraria (PT)

Especificação:

  • Criar planos mensais e semanais
  • Previsões de receita + cronograma de despesas
  • Validar se total de ordens do dia não excede teto aprovado

Status Atual:

  • Não implementado
  • Não há entidade TreasuryPlan
  • Não há validação de tetos diários

Impacto: Sem planejamento, não há controle preventivo de liquidez.


2.2 Execução de Pagamentos

Especificação:

  • Gatilho: Despesa "Liquidada e Pronta a Pagar"
  • Verificação de liquidez (subconta + CUT global)
  • Transferência Eletrónica (STAR/SICA) - XML ISO 20022
  • Pagamentos de Massa (folha de salário)
  • Assinatura Digital (múltiplos níveis)

Status Atual:

  • Verificação de liquidez básica (implementado)
  • Pagamentos de massa (via PayrollRun)
  • Aprovação hierárquica (implementado)
  • Geração XML ISO 20022 (não implementado)
  • Assinatura digital com certificados (não implementado)

Impacto: Sem XML ISO 20022, não há integração com STAR/SICA do BCEAO.


2.3 Arrecadação e Nivelamento

Especificação:

  • Integração com SYDONIA (Alfândegas) e CONTRIB (Impostos)
  • Monitorização de saldos em bancos comerciais
  • Regra de Ouro UEMOA: Alerta se saldo em Conta de Trânsito > 0 no fim do dia

Status Atual:

  • Não implementado
  • Não há integração com sistemas externos
  • Não há processo de nivelamento automático
  • Não há alertas de nivelamento pendente

Impacto: Sem nivelamento, não há conformidade com Regra de Ouro UEMOA.


3. Requisitos Técnicos

3.1 Conciliação Bancária

Especificação:

  • Importação automática MT940 ou CAMT.053
  • Matching automático (valor, data, referência)
  • Conciliação manual de exceções
  • Geração automática de lançamentos contabilísticos

Status Atual:

  • Estrutura básica de conciliação (implementado)
  • Matching básico (implementado)
  • ⚠️ Importação de extratos (parcial - apenas manual)
  • Importação automática MT940/CAMT.053 (não implementado)
  • Geração automática de lançamentos contabilísticos (não implementado)

Impacto: Sem importação automática, processo é manual e propenso a erros.


3.2 Integração com Contabilidade

Especificação:

  • Cada movimento gera lançamento automático
  • Débito: Classe 6/2 (Despesa)
  • Crédito: Classe 5 (Tesouraria)

Status Atual:

  • Não implementado
  • Não há módulo de Contabilidade
  • Não há geração automática de lançamentos

Impacto: Sem integração contabilística, não há conformidade com Diretiva UEMOA.


4. Regras de Negócio

RN01 - Unidade de Caixa

Especificação: Nenhuma conta bancária do Estado pode existir fora da visibilidade do módulo Tesouro.

Status Atual:

  • ⚠️ Parcial
  • Contas registradas no sistema
  • Não há validação que todas as contas do Estado estão registradas
  • Não há processo de auditoria

Impacto: Risco de contas não registradas.


RN02 - Validação de Saldo

Especificação: Impedir ordens se não houver saldo suficiente na CUT, exceto com autorização de "Adiantamento do Banco Central".

Status Atual:

  • Validação básica de saldo (implementado)
  • Não considera hierarquia CUT (soma de subcontas)
  • Não há tratamento de "Adiantamento do Banco Central"

Impacto: Validação incompleta sem considerar CUT global.


RN03 - Retenção de Impostos

Especificação: Ao pagar fornecedor, reter automaticamente IVA/Imposto Industrial, gerando dois fluxos (líquido + imposto).

Status Atual:

  • Não implementado
  • Não há cálculo de retenção
  • Não há divisão de fluxos (líquido + imposto)

Impacto: Não há conformidade fiscal automática.


5. Segurança

Especificação: Autenticação Multifator (MFA) para todas as movimentações financeiras.

Status Atual:

  • Não implementado
  • Não há MFA
  • Aprovação hierárquica (implementado)

Impacto: Risco de segurança sem MFA.


6. Dashboard KPIs

Especificação:

  • Posição Global de Caixa (BCEAO + Bancos Comerciais)
  • Pipeline de Pagamentos (faturas liquidadas aguardando)
  • Rácio de Cobertura (Liquidez / Despesas Semanais)
  • Mapa de Nivelamento (bancos com saldo não transferido)

Status Atual:

  • Não implementado
  • Não há dashboard
  • Não há KPIs calculados

Impacto: Falta visibilidade gerencial.


🎯 Plano de Implementação

Fase 1: Crítico (Prioridade Alta)

  1. Hierarquia CUT

    • Adicionar parentAccountId em CashAccount
    • Adicionar accountCategory (CUT_PRINCIPAL, CORRESPONDENT, TRANSIT)
    • Implementar agregação de saldos hierárquicos
  2. Atributos de Conta

    • Adicionar iban, swiftCode, accountingCode, accountType, overdraftLimit
    • Atualizar DTOs e validações
  3. Plano de Tesouraria (PT)

    • Criar entidade TreasuryPlan
    • Criar TreasuryPlanService
    • Implementar validação de tetos diários em PaymentOrderService

Fase 2: Alta Prioridade

  1. Retenção de Impostos

    • Adicionar campos de retenção em PaymentOrder
    • Implementar cálculo automático
    • Criar dois fluxos (líquido + imposto)
  2. Nivelamento Automático

    • Criar processo de nivelamento
    • Implementar alertas de nivelamento pendente
    • Agendar job diário
  3. Importação MT940/CAMT.053

    • Criar parser para MT940
    • Criar parser para CAMT.053
    • Integrar com BankReconciliationService

Fase 3: Média Prioridade

  1. Geração XML ISO 20022

    • Criar gerador de XML ISO 20022
    • Integrar com STAR/SICA
    • Adicionar endpoint para download
  2. Dashboard KPIs

    • Criar TreasuryDashboardService
    • Implementar cálculos de KPIs
    • Criar frontend do dashboard
  3. Integração Contabilística

    • Criar módulo de Contabilidade (ou integração)
    • Implementar geração automática de lançamentos
    • Mapear para Plano de Contas UEMOA

📊 Matriz de Impacto vs Esforço

Requisito Impacto Esforço Prioridade
Hierarquia CUT 🔴 Alto 🔴 Alto 1
Atributos Conta 🔴 Alto 🟢 Baixo 1
Plano Tesouraria 🔴 Alto 🟡 Médio 1
Retenção Impostos 🟡 Médio 🟡 Médio 2
Nivelamento 🟡 Médio 🔴 Alto 2
Importação MT940 🟡 Médio 🟡 Médio 2
XML ISO 20022 🟡 Médio 🔴 Alto 3
Dashboard KPIs 🟢 Baixo 🟢 Baixo 3
Integração Contábil 🔴 Alto 🔴 Alto 3

Documento gerado em: 2025-01-XX
Versão: 1.0