📘 Financeiro
O módulo Financeiro reúne os cadastros bancários e os processos usados para preparar, consultar, conferir e retornar pagamentos, além de operações com conta-salário, cheques, processos de conta e integrações financeiras. As telas atendem usuários autorizados das áreas de folha, financeiro, administração bancária e QA, com permissões específicas para visualizar, salvar, gerar, processar, baixar, conferir ou cancelar registros.
📄 1 - Submenus
-
Cadastrar Agências Bancárias
Mantém banco, número e dígito, nome, endereço, contatos e situação das agências bancárias utilizadas nos demais fluxos financeiros.
⤷ Saiba Mais -
Cadastrar Convênios Bancários
Configura convênios da empresa com instituições financeiras, incluindo conta, layout bancário, modalidades de pagamento e parâmetros de operação.
⤷ Saiba Mais -
Efetivar Contas
Pesquisa contas-salário pendentes, permite selecionar empregados e gera o arquivo de efetivação conforme as regras do banco e as permissões do usuário.
⤷ Saiba Mais -
Download Arquivo Pagamento
Pesquisa arquivos por banco, períodos, lote, tipo de operação e situação, disponibilizando as ações permitidas de download, nova geração ou transmissão.
⤷ Saiba Mais -
Conferência dos Arquivos de Pagamento
Lista arquivos gerados e permite registrar a situação de conferência, considerando filtros de banco, períodos, lote e status.
⤷ Saiba Mais -
Leitura do Arquivo de Retorno
Recebe arquivos de retorno bancário, inicia o processamento e apresenta o resumo dos registros, valores, códigos de retorno e situação da solicitação.
⤷ Saiba Mais -
Consulta e Abertura de Arquivo Pagamento
Consulta pagamentos por filtros organizacionais e financeiros. Quando acessada comConsultaPagamento.aspx?tipo=financeiro, a tela ativa o contexto financeiro e direciona a abertura de lote para o mesmo contexto.
⤷ Saiba Mais -
Cheques
Agrupa o cadastro de séries e faixas numéricas de cheques e o cancelamento de cheques vinculados a folha, benefício, pensão ou RPA.
⤷ Saiba Mais -
Integração Financeira
Filtra lançamentos e gera integrações em formatos habilitados para o cliente, com acompanhamento das solicitações assíncronas.
⤷ Saiba Mais -
Processos de Conta
Reúne a geração, o download e a leitura de retorno de arquivos associados à abertura de conta, conta-salário e liberação de cartão para empregados.
⤷ Saiba Mais -
Geração de Arquivo para Liberação do Cartão
Seleciona banco, processo, convênio e empregados para iniciar a geração do arquivo correspondente ao processo de conta configurado.
🔍 2 - Visão Técnica
As telas foram implementadas em ASP.NET Web Forms e herdam de BasePageWebFoPag. O markup usa controles Employer:*, UpdatePanel, grids, componentes de busca e grupos de validação; os code-behinds mantêm filtros e seleções no ViewState, carregam permissões do usuário e acionam classes da camada Employer.Plataforma.BLL.
Cadastros e conferências executam operações a partir de eventos da página, enquanto geração de arquivos, leitura de retornos e integrações podem chamar ProcessoAssincrono.IniciarAtividade(...) e expor o acompanhamento por SolicitacoesAssincronas. O comportamento concreto depende de parâmetros da empresa, banco, convênio, tipo de processo, layout e permissões atribuídas ao usuário.
2.1 🧾 Banco de Dados
Estrutura das Tabelas
A revisão confirmou as tabelas employer.TAB_Arquivo_Gerado, employer.TAB_Arquivo_Gerado_Lote, employer.TAB_Arquivo_Gerado_Empregado e employer.CRD_Retorno. Os exemplos abaixo são consultas somente leitura e usam a competência derivada da data de pagamento.
2.2 Exemplos de Consultas
1. Arquivos de pagamento gerados por período
USE PLATAFORMA_EMPLOYER;
DECLARE @Idf_Empresa INT = 1;
DECLARE @Idf_Arquivo_Gerado INT = NULL;
DECLARE @DataPagamentoInicial DATE = '2026-01-01';
DECLARE @DataPagamentoFinal DATE = '2026-08-31';
DECLARE @DataGeracaoInicial DATE = NULL;
DECLARE @DataGeracaoFinal DATE = NULL;
SELECT TOP (100)
AG.Idf_Arquivo_Gerado, AG.Num_Sequencia, AG.Idf_Empresa,
AG.Dta_Pagamento, AG.Dta_Geracao, AG.Dta_Retorno, AG.Nme_Arquivo,
AG.Idf_Forma_Pagamento, AG.Idf_Banco, AG.Idf_Conta_Empresa,
AG.Idf_Convenio_Bancario, AG.Idf_Status_Conferencia_Arquivo,
AG.Dta_Conferencia, AG.Idf_Status_Geracao_Arquivo,
AG.Des_Protocolo_Geracao_Arquivo, AG.Flg_Pagamento_TEDPays
FROM employer.TAB_Arquivo_Gerado AS AG
WHERE AG.Idf_Empresa = @Idf_Empresa
AND (@Idf_Arquivo_Gerado IS NULL OR AG.Idf_Arquivo_Gerado = @Idf_Arquivo_Gerado)
AND (@DataPagamentoInicial IS NULL OR AG.Dta_Pagamento >= @DataPagamentoInicial)
AND (@DataPagamentoFinal IS NULL OR AG.Dta_Pagamento < DATEADD(DAY, 1, @DataPagamentoFinal))
AND (@DataGeracaoInicial IS NULL OR AG.Dta_Geracao >= @DataGeracaoInicial)
AND (@DataGeracaoFinal IS NULL OR AG.Dta_Geracao < DATEADD(DAY, 1, @DataGeracaoFinal))
ORDER BY AG.Dta_Pagamento DESC, AG.Dta_Geracao DESC, AG.Idf_Arquivo_Gerado DESC;
2. Resumo dos arquivos de pagamento por competência
USE PLATAFORMA_EMPLOYER;
DECLARE @Idf_Empresa INT = 1;
DECLARE @CompetenciaInicial INT = 202601;
DECLARE @CompetenciaFinal INT = 202608;
SELECT
AG.Idf_Empresa,
YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) AS Competencia,
COUNT(*) AS TotalArquivos,
SUM(CASE WHEN AG.Dta_Retorno IS NULL THEN 1 ELSE 0 END) AS AguardandoRetorno,
SUM(CASE WHEN AG.Dta_Retorno IS NOT NULL AND AG.Dta_Conferencia IS NULL THEN 1 ELSE 0 END) AS AguardandoConferencia,
SUM(CASE WHEN AG.Dta_Conferencia IS NOT NULL THEN 1 ELSE 0 END) AS Conferidos,
MIN(AG.Dta_Pagamento) AS PrimeiroPagamento,
MAX(AG.Dta_Pagamento) AS UltimoPagamento
FROM employer.TAB_Arquivo_Gerado AS AG
WHERE AG.Idf_Empresa = @Idf_Empresa
AND YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) BETWEEN @CompetenciaInicial AND @CompetenciaFinal
GROUP BY AG.Idf_Empresa, YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento)
ORDER BY Competencia DESC;
3. Arquivos de pagamento pendentes de retorno ou conferência
USE PLATAFORMA_EMPLOYER;
DECLARE @Idf_Empresa INT = 1;
DECLARE @Idf_Arquivo_Gerado INT = NULL;
DECLARE @NomeArquivo NVARCHAR(100) = NULL;
DECLARE @CompetenciaInicial INT = 202601;
DECLARE @CompetenciaFinal INT = 202608;
SELECT TOP (200)
AG.Idf_Arquivo_Gerado, AG.Num_Sequencia, AG.Idf_Empresa,
YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) AS Competencia,
AG.Dta_Pagamento, AG.Dta_Geracao, AG.Dta_Retorno, AG.Nme_Arquivo,
AG.Idf_Banco, AG.Idf_Conta_Empresa, AG.Idf_Convenio_Bancario,
AG.Idf_Status_Geracao_Arquivo, AG.Idf_Status_Conferencia_Arquivo,
AG.Dta_Conferencia,
CASE WHEN AG.Dta_Retorno IS NULL THEN 'Aguardando retorno' ELSE 'Retorno recebido' END AS SituacaoRetorno,
CASE WHEN AG.Dta_Conferencia IS NULL THEN 'Aguardando conferência' ELSE 'Conferido' END AS SituacaoConferencia
FROM employer.TAB_Arquivo_Gerado AS AG
WHERE AG.Idf_Empresa = @Idf_Empresa
AND (@Idf_Arquivo_Gerado IS NULL OR AG.Idf_Arquivo_Gerado = @Idf_Arquivo_Gerado)
AND (@NomeArquivo IS NULL OR AG.Nme_Arquivo LIKE N'%' + @NomeArquivo + N'%')
AND YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) BETWEEN @CompetenciaInicial AND @CompetenciaFinal
AND (AG.Dta_Retorno IS NULL OR AG.Dta_Conferencia IS NULL)
ORDER BY AG.Dta_Pagamento DESC, AG.Dta_Geracao DESC, AG.Idf_Arquivo_Gerado DESC;
4. Arquivos com retorno registrado sem conteúdo de retorno
USE PLATAFORMA_EMPLOYER;
DECLARE @Idf_Empresa INT = 1;
DECLARE @Idf_Arquivo_Gerado INT = NULL;
DECLARE @CompetenciaInicial INT = 202601;
DECLARE @CompetenciaFinal INT = 202608;
SELECT TOP (200)
AG.Idf_Arquivo_Gerado, AG.Num_Sequencia, AG.Idf_Empresa,
YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) AS Competencia,
AG.Dta_Pagamento, AG.Dta_Geracao, AG.Dta_Retorno, AG.Nme_Arquivo,
AG.X_Arq_Retorno, AG.Idf_Banco, AG.Idf_Conta_Empresa,
AG.Idf_Convenio_Bancario, AG.Idf_Status_Geracao_Arquivo,
AG.Idf_Status_Conferencia_Arquivo, AG.Dta_Conferencia
FROM employer.TAB_Arquivo_Gerado AS AG
WHERE AG.Idf_Empresa = @Idf_Empresa
AND (@Idf_Arquivo_Gerado IS NULL OR AG.Idf_Arquivo_Gerado = @Idf_Arquivo_Gerado)
AND YEAR(AG.Dta_Pagamento) * 100 + MONTH(AG.Dta_Pagamento) BETWEEN @CompetenciaInicial AND @CompetenciaFinal
AND AG.Dta_Retorno IS NOT NULL
AND (AG.X_Arq_Retorno IS NULL OR LTRIM(RTRIM(AG.X_Arq_Retorno)) = '')
ORDER BY AG.Dta_Retorno DESC, AG.Dta_Pagamento DESC, AG.Idf_Arquivo_Gerado DESC;
5. Retornos bancários por período
USE PLATAFORMA_EMPLOYER;
DECLARE @Idf_Retorno INT = NULL;
DECLARE @Idf_Conta_Empresa INT = NULL;
DECLARE @DataMovimentoInicial DATE = '2026-01-01';
DECLARE @DataMovimentoFinal DATE = '2026-08-31';
SELECT TOP (100)
R.Idf_Retorno, R.Idf_Remessa, R.Idf_Conta_Empresa, R.Dta_Movimento,
R.Qtd_Reservada, R.Qtd_Nao_Reservada,
CASE WHEN R.Arq_Retorno IS NULL THEN 'Sem arquivo armazenado' ELSE 'Arquivo armazenado' END AS SituacaoArquivoRetorno,
R.Ctl_Inicio, R.Ctl_Fim
FROM employer.CRD_Retorno AS R
WHERE (@Idf_Retorno IS NULL OR R.Idf_Retorno = @Idf_Retorno)
AND (@Idf_Conta_Empresa IS NULL OR R.Idf_Conta_Empresa = @Idf_Conta_Empresa)
AND (@DataMovimentoInicial IS NULL OR R.Dta_Movimento >= @DataMovimentoInicial)
AND (@DataMovimentoFinal IS NULL OR R.Dta_Movimento < DATEADD(DAY, 1, @DataMovimentoFinal))
ORDER BY R.Dta_Movimento DESC, R.Idf_Retorno DESC;
💻 3 - Código Fonte
O escopo foi confirmado a partir das treze telas indicadas para o módulo, sempre considerando o arquivo .aspx e o respectivo code-behind .aspx.cs.
3.1 - Arquivos, classes e estruturas
AgenciaCadastro.aspx/AgenciaCadastro.aspx.cs— classeAgenciaCadastro; cadastro, pesquisa e manutenção de agências bancárias.ConvenioBancarioCadastro.aspx/ConvenioBancarioCadastro.aspx.cs— classeConvenioBancarioCadastro; convênios por empresa, conta, layout, tipo de conta e modalidades DOC, TED, transferência, depósito e Pix quando habilitadas.EfetivacaoContaSalarioGerar.aspx/EfetivacaoContaSalarioGerar.aspx.cs— classeEfetivacaoContaSalarioGerar; seleção de contas pendentes e geração de arquivo de efetivação.DownloadArquivoPagamento.aspx/DownloadArquivoPagamento.aspx.cs— classeDownloadArquivoPagamento; pesquisa, seleção, download, nova geração e transmissão de arquivos conforme configuração e permissão.ConferenciaArquivoPagamento.aspx/ConferenciaArquivoPagamento.aspx.cs— classeConferenciaArquivoPagamento; pesquisa e atualização da situação de conferência dos arquivos.LeituraRetornoPagamento.aspx/LeituraRetornoPagamento.aspx.cs— classeLeituraRetornoPagamento; upload, processamento de retorno e apresentação do resumo e da solicitação assíncrona.ConsultaPagamento.aspx/ConsultaPagamento.aspx.cs— classeConsultaPagamento; consulta e abertura de pagamentos, incluindo a variante?tipo=financeiro.ChequeSerieCadastro.aspx/ChequeSerieCadastro.aspx.cs— classeChequeSerieCadastro; cadastro de série e intervalo numérico por banco, conta e filial.ChequeCancelamento.aspx/ChequeCancelamento.aspx.cs— classeChequeCancelamento; pesquisa e cancelamento de cheques de folha, benefício, pensão ou RPA.AberturaContaEmpregado.aspx/AberturaContaEmpregado.aspx.cs— classeAberturaContaEmpregado; seleção de processo e empregados para geração de arquivo de conta ou liberação de cartão.AberturaContaEmpregadoDownload.aspx/AberturaContaEmpregadoDownload.aspx.cs— classeAberturaContaEmpregadoDownload; pesquisa e download dos arquivos de conta gerados.AberturaContaEmpregadoArquivoRetorno.aspx/AberturaContaEmpregadoArquivoRetorno.aspx.cs— classeAberturaContaEmpregadoArquivoRetorno; upload, processamento e consulta dos registros retornados para processos de conta.IntegracaoFinanceiraCliente.aspx/IntegracaoFinanceiraCliente.aspx.cs— classeIntegracaoFinanceiraCliente; geração de integrações em formatos como RM, Datasul, DealerNet, Oracle, SAP e variações específicas habilitadas no ambiente.
3.2 - Principais métodos e fluxo de execução
Inicializar()— configura permissões, parâmetros, componentes, listas, filtros e grids de cada tela.ConfigurarPermissoesTela()— carrega categorias de permissão específicas e redireciona, desabilita ou oculta ações quando o usuário não possui a autorização exigida.Salvar()emAgenciaCadastro,ConvenioBancarioCadastro,ChequeSerieCadastroeConferenciaArquivoPagamento— valida os dados da tela e encaminha a inclusão ou atualização para os objetos de negócio correspondentes.GerarArquivoEfetivacao(...)— valida a seleção de contas pendentes e prepara o arquivo de efetivação de conta-salário.PesquisarArquivosGeradosParaDownload()eCarregarGridViewArquivosGerados()— aplicam filtros e apresentam arquivos disponíveis nos fluxos de pagamento e de processos de conta.ProcessarArquivoRetorno()— valida o upload e inicia o tratamento de retorno de pagamento ou de processo de conta, conforme a tela e o plugin configurado.ConfigurarEstrutura()emConsultaPagamento— reconheceRequest.QueryString["tipo"] == "financeiro", ajusta o contexto da tela e define a navegação para abertura de lote financeiro.CancelarCheques()— processa os cheques selecionados depois da pesquisa e das validações da modalidade escolhida.Gerar()emIntegracaoFinanceiraCliente— monta os parâmetros do formato selecionado e inicia o plugin de integração financeira correspondente.ProcessoAssincrono.IniciarAtividade(...)— agenda trabalhos de geração, retorno ou integração; o acompanhamento é atualizado pelos componentes de solicitações assíncronas.
🏗️ 4 - Layered Architecture em C#
- Apresentação: páginas
.aspx, code-behind, controlesEmployer:*, componentes de upload e pesquisa,UpdatePanel, grids e estado mantido emViewState. - Aplicação e negócio: classes de
Employer.Plataforma.BLL, parâmetros da empresa, enumeradores, validações de permissão e regras específicas de banco, convênio, pagamento, cheque e processo de conta. - Processamento assíncrono:
Employer.PlataformaServices.ProcessosAssincronos, plugins carregados por metadados e o componenteSolicitacoesAssincronaspara acompanhar atividades iniciadas pelas telas. - Acesso a dados: ocorre de forma indireta por objetos e métodos da BLL observados no code-behind. A camada física, os repositórios e os objetos de banco serão detalhados após a revisão do ambiente de dados.
- Integrações externas: layouts bancários, arquivos de remessa e retorno, formatos de integração financeira e recursos de criptografia são escolhidos conforme parâmetros e configurações vigentes no cliente.
🧪 5 - Sugestões de Cenários de Teste e Validações (QA)
5.1 - Interface e componentes
- Validar campos obrigatórios, formatos, limites e mensagens nos cadastros de agência, convênio e série de cheque.
- Exercitar filtros com intervalo de datas válido, data inicial posterior à final, lote inexistente e combinações sem resultado.
- Conferir seleção individual, seleção em massa, mudança de página do grid e manutenção da seleção no
ViewState. - Testar upload sem arquivo, extensão não aceita, arquivo vazio, arquivo duplicado e múltiplos arquivos quando o componente permitir.
- Validar o estado dos botões de download, geração, processamento, conferência e cancelamento conforme a linha selecionada e a situação do registro.
- Comparar a navegação de
ConsultaPagamento.aspxcom e sem?tipo=financeiro, incluindo o retorno ao menu e a abertura do lote correto.
5.2 - Regras de negócio
- Cadastrar agência com banco e número já utilizados e verificar a mensagem retornada pela regra de negócio.
- Exercitar convênios com diferentes tipos de conta, layouts e modalidades de pagamento, incluindo campos condicionais de DOC, TED, transferência, depósito e Pix.
- Gerar efetivação com nenhuma conta selecionada, com registros válidos e com registros que produzam ocorrências na grade de erros.
- Conferir a transição entre situações de arquivo de pagamento e o comportamento para registros pendentes, atendidos ou cancelados.
- Processar retorno com registros aceitos e rejeitados e comparar totais, códigos, descrições e situações exibidas no resumo.
- Cadastrar série de cheque com intervalos inválidos ou sobrepostos e cancelar cheques nas modalidades folha, benefício, pensão e RPA.
- Exercitar processos de conta por banco e tipo de processo, verificando os campos de tipo de conta, conta da empresa, agência e convênio habilitados em cada configuração.
- Gerar cada formato de integração financeira disponível para o perfil e conferir o arquivo ou a solicitação produzida no acompanhamento assíncrono.
5.3 - Permissões, concorrência e casos de borda
- Acessar cada tela sem permissão de visualização e validar o redirecionamento para acesso negado.
- Manter a permissão de consulta e retirar permissões de salvar, baixar, gerar novamente, transmitir, processar, conferir ou cancelar, verificando cada ação isoladamente.
- Testar ações protegidas por senha master com credencial válida, inválida e cancelamento do modal.
- Disparar duas solicitações equivalentes em sequência e observar como o ambiente identifica ou processa possíveis duplicidades.
- Tentar baixar um arquivo cujo conteúdo ainda não esteja disponível ou cuja geração tenha falhado.
- Processar lotes grandes, paginação extensa e seleção em várias páginas, observando tempo de resposta, totalizadores e recuperação após falha.
- Alterar parâmetros ou permissões entre a abertura da tela e a confirmação da ação e verificar a revalidação executada no servidor.
- Confirmar que arquivos de pagamento, conta e retorno sejam expostos somente ao usuário, empresa e contexto autorizados.
⚖️ 6 - Embasamento Legal e Regras de RH
Pagamento de salários por depósito bancário
- Fundamento: os arts. 464 e 465 da Consolidação das Leis do Trabalho tratam do recibo de pagamento e do pagamento por depósito em conta bancária.
- Relação com o módulo: os fluxos de arquivos de pagamento, consulta, retorno e conta-salário apoiam a operação financeira da folha; a validação jurídica do processo completo depende também das práticas e dos comprovantes adotados pela empresa.
Conta-salário e portabilidade salarial
- Fundamento: a Resolução CMN nº 5.058/2022 disciplina os serviços de pagamento de salários pelas instituições financeiras, define conta-salário e prevê portabilidade salarial. Em 31/08/2026, a norma permanece vigente; a Resolução CMN nº 5.299/2026 prevê sua revogação total a partir de 01/07/2027.
- Relação com o módulo: cadastro de convênios, efetivação de contas e processos de abertura e retorno devem ser revisados quando houver mudança regulatória ou alteração do layout exigido pela instituição financeira.
Emissão e cancelamento de cheques
- Fundamento: a Lei nº 7.357/1985 dispõe sobre requisitos, apresentação, pagamento, oposição, revogação e demais regras relacionadas ao cheque.
- Relação com o módulo: cadastro de série, controle de numeração e cancelamento são controles operacionais do sistema; a decisão sobre sustação, contraordem ou validade do título exige análise do caso e dos procedimentos bancários aplicáveis.
Proteção de dados pessoais
- Fundamento: a Lei nº 13.709/2018, Lei Geral de Proteção de Dados Pessoais, disciplina operações de tratamento de dados pessoais.
- Relação com o módulo: cadastros bancários, arquivos de pagamento, contas, retornos e integrações podem conter identificadores e dados financeiros de empregados; acesso, download, transmissão, retenção e descarte devem seguir as políticas de privacidade e segurança aprovadas pela organização.
As referências acima orientam a revisão funcional e de QA e não substituem análise jurídica, normativa ou bancária específica do cliente.
📌 Status: Concluído
👤 Responsável: Equipe de QA