VM
VM
Vidal Machado
Contabilidade
Entrar no sistema
Acesso restrito à equipe
E-mail
Senha
{{ loginErro }}
Modo demonstração — Firebase ainda não configurado (veja o README). Acesso de teste:
tiago@vidalmachado.com.br · senha vidal123
Sistema Vidal Machado · uso interno
{{ screenTitle }}
{{ screenSub }}
{{ competenciaLabel }}
{{ userIni }}
{{ userNome }}
{{ userPapel }}
Clientes ativos
{{ kpi.ativos }}
{{ kpi.ativosSub }}
Faturamento recorrente
{{ kpi.mrr }}
MRR · honorários/mês
Ticket médio
{{ kpi.ticket }}
por cliente/mês
Dependência de cliente
{{ kpi.depPct }}
{{ kpi.depSub }}
Linha do tempo do mês — onde está o gargalo
Pico de trabalho do dia 1 ao 20. Fim de mês mais tranquilo.
Folha
Documentos
Impostos
Fech. de folha
1º–5º dia útil
Documentos
limite dia 5 · ideal 10
Impostos
dia 20
151015202530
Cobranças da semana
Documentos pendentes
{{ kpi.docsPend }}
Ver documentos →
Honorários a vencer
{{ kpi.honAVencer }}
Ver honorários →
Honorários vencidos
{{ kpi.honVencidos }}
Cobrar agora →
Cálculos rápidos
🧮
Rescisão trabalhista
Verbas, INSS, IRRF e multa FGTS — com PDF
🔁
Conversor OFX ⇆ PDF
Extratos bancários em segundos
Alertas inteligentes
{{ a.texto }}
{{ a.tag }}
Nenhum cliente cadastrado ainda
Cadastre o primeiro cliente para começar a operação.
Empresa CNPJ Regime Perfil Func. Honorário Cobr. Status
{{ c.nome }} {{ c.cnpj }} {{ c.regime }} {{ c.perfil }} {{ c.funcLabel }} {{ c.honFmt }} dia {{ c.dia }} {{ c.status }}
{{ col.title }}{{ col.count }}
{{ c.nome }}
{{ c.perfil }}{{ c.honFmt }}
Tabela de acessos dos clientesConfidencial — sócios e permissão Cofre
Razão social PorteCNPJ / CPF ResponsávelCPF resp. Senha GOV.brRG NascimentoSenha Prefeitura NIREIEIM Cód. acesso SNParcelamento E-mailWhatsApp HonorárioVenc.
{{ ar.nome }} {{ ar.porte }} {{ ar.cnpj }} {{ ar.resp }} {{ ar.cpf }} {{ ar.senhaGov }} {{ ar.rg }} {{ ar.nasc }} {{ ar.senhaPref }} {{ ar.nire }} {{ ar.ie }} {{ ar.im }} {{ ar.codigoSN }} {{ ar.parcelamento }} {{ ar.email }} {{ ar.fone }} {{ ar.hon }}{{ ar.dia }}
Clique em qualquer dado para copiar; clique no nome para abrir a ficha e ver os links do cliente. Use "Mostrar senhas" para revelar (a cópia funciona mesmo com a senha oculta).
Processos
{{ legKpi.total }}
Concluídos
{{ legKpi.concluidos }}
Etapas pendentes / em andamento
{{ legKpi.pendencias }}
Controle societário — clique numa célula para mudar o status
OK concluída · P pendente · EA em andamento · D dispensada
{{ legAutoInfo }}
Nenhum processo cadastrado
Cadastre aberturas, alterações, baixas e inscrições estaduais e acompanhe cada etapa por órgão.
Cliente Processo Tipo % {{ lg.nome }}
{{ eh.abr }}
{{ lr.cliente }} {{ lr.processo }} {{ lr.tipo }} {{ lr.pct }}
{{ ce.txt }}
Recebidos
{{ docKpi.recebidos }}
Pendentes
{{ docKpi.pendentes }}
Em atraso
{{ docKpi.atrasados }}
Régua de cobrança — enviada pela Luna no WhatsApp
{{ reguaInfoLabel }}
1
Dia 1 · Pedido
Solicitação dos documentos
5
Dia 5 · Reforço
Lembrete amigável
10
Dia 10 · Atraso
Aviso de pendência
Mensagem da etapa atual (edite em Configurações → Luna)
"{{ lunaT.d1 }}"
Matriz cliente × documento — {{ competenciaLabel }}
Cliente OFX Extrato PDF Rel. vendas Rel. despesas Func.
{{ r.nome }} {{ cell.label }} {{ r.conversao }}
{{ dropTitle }}
Arraste o arquivo aqui ou selecione no seu computador
Lendo o arquivo e extraindo transações…
{{ error }}
Arquivo
{{ fileName }}
Banco / Conta
{{ result.banco }} · {{ result.conta }}
Período
{{ result.periodo }}
Transações
{{ result.count }}
Créditos
{{ result.creditosFmt }}
Débitos
{{ result.debitosFmt }}
Saldo final
{{ result.saldoFmt }}
Transações extraídas
DataHistóricoTipoValor
{{ r.dateStr }} {{ r.memo }} {{ r.typeLabel }} {{ r.valorFmt }}
OFX → PDF lê os blocos de transação e monta um extrato formatado — 100% no navegador, nenhum dado sai do computador. PDF → OFX extrai o texto do PDF e reconhece linhas com data + valor; como cada banco tem um layout diferente, revise as transações antes de importar no sistema fiscal. Use Carregar exemplo para ver o formato ideal.
Dados da rescisão
Verbas rescisórias CLT com INSS e IRRF
Registro em carteira (CLT)?
Sem registro: calcula as mesmas verbas, porém sem INSS, IRRF e FGTS.
Salário base (R$/mês) *
Admissão *
Afastamento *
Se o aviso for trabalhado, o afastamento é o último dia do aviso.
Motivo da rescisão
Aviso prévio
Vale para dispensa sem justa causa, acordo e pedido de demissão. 30 dias + 3 por ano completo (máx. 90).
Férias vencidas
Dependentes (IRRF)
Saldo do FGTS (R$)
Fim previsto (experiência)
{{ rcErro }}
Preencha os dados e calcule
O detalhamento das verbas, descontos e FGTS aparece aqui.
{{ rc.motivoLabel }}
{{ rc.info }}
Proventos
{{ p.label }}{{ p.valor }}
Total de vencimentos{{ rc.totProv }}
Descontos
{{ d.label }}{{ d.valor }}
Total de descontos{{ rc.totDesc }}
Líquido a receber {{ rc.liquido }}
FGTS (pago na conta vinculada — fora do líquido)
{{ f.label }}{{ f.valor }}
Observações
• {{ n.t }}
Checklist de entregas — {{ competenciaLabel }}
{{ e.prazo }}
{{ e.titulo }}
Responsável: {{ e.resp }} · {{ e.janela }}
{{ e.status }}
Clientes com folha este mês
{{ f.nome }} {{ f.func }} func. {{ f.status }}
Folhas de ponto — {{ compLabel }}
Envie a foto do cartão de ponto de cada cliente. A IA lê o cartão manuscrito (empregado, quinzena e a grade de horários) e o resultado abre numa tela de conferência com a foto ao lado — você ajusta o que precisar e aprova. As horas normais e extras são calculadas na hora.
Nenhuma folha de ponto enviada nesta competência
{{ fp.cliente }}
{{ fp.sub }}
{{ fp.status }}
{{ fp.erro }}
🏦 Banco de horas — saldo por colaborador
Saldo acumulado de cada colaborador, atualizado toda vez que uma folha é aprovada com apuração em banco de horas. Crédito e débito valem 1×1 dentro do prazo (CLT art. 59 §2º); o que sobrar no vencimento — ou na rescisão — vira hora extra e é pago com adicional.
Nenhum colaborador com banco de horas ainda
Na conferência da folha, escolha Apuração: banco de horas e aprove — o saldo aparece aqui.
Colaborador Empresa Atualizado Compensar até Saldo
{{ b.nome }} {{ b.empresa }} {{ b.comp }} {{ b.vence }} {{ b.saldo }}
Recebíveis do mês
{{ honKpi.total }}
Recebido
{{ honKpi.recebido }}
{{ honKpi.recebidoPct }}
Inadimplência
{{ honKpi.inad }}
{{ honKpi.inadSub }}
Cobrança humanizada pela Luna
WhatsApp · sem custo por disparo. Substitui o Asaas automático, "bruto" e caro.
"{{ lunaT.cobranca }}"
Painel de inadimplência
Juros de mora 1% a.m. + multa de 2% aplicáveis automaticamente ao valor em atraso.
{{ iv.nome }}
{{ iv.sub }}
Nenhum honorário vencido neste momento 🎉
Honorários · {{ competenciaLabel }}
Nenhuma cobrança nesta competência
Clique em "Gerar cobranças" para criar os honorários do mês a partir dos clientes ativos.
ClienteValorVenc.SituaçãoBoleto / PIX (Asaas)
{{ h.nome }} {{ h.valor }} {{ h.venc }} {{ h.sit }}
Abrir boleto / PIX →
WhatsApp da Vidal — número vinculado por QR code
{{ wcxLabel }}
⏳ {{ wcxProg.label }} {{ wcxProg.pct }}
O QR aparece aqui sozinho — deixe esta tela aberta.
Desconectando o número…
QR code do WhatsApp
Como vincular o número do escritório:
1. Abra o WhatsApp no celular do número da Vidal
2. Toque em ⋮ → Dispositivos conectados
3. Toque em Conectar dispositivo e aponte para este QR
O QR expira rápido — se não der tempo, clique em Conectar de novo.
Como funciona: com o número vinculado por QR, a régua, as cobranças e o inbox usam esse número — e o Agente IA responde os clientes conforme o modo configurado. Sem o QR, os envios usam a API oficial da Meta (Configurações → Integrações).
Conversas
Mensagens enviadas · Luna + equipe
{{ tr.nome }}{{ tr.hora }}
{{ tr.prev }}
{{ selThreadNome }}
{{ selThreadSub }}
Cliente da casa {{ convLeadLabel }}
✋ Conversa assumida por {{ convAssumidaPor }} — o Agente IA fica em silêncio neste contato até ser devolvida.
↩ {{ m.replyTexto }}
📎 {{ m.anexoNome }}
{{ m.texto }}
{{ m.reacoesTxt }}
{{ m.meta }}
↩ Respondendo: {{ replyPendTxt }}
📎 {{ anexoPendNome }}
Gravando… {{ audioTempo }}
Nenhuma mensagem enviada ainda
Cadastre o WhatsApp dos clientes e use a régua (tela Documentos) ou as cobranças (Honorários) — os envios aparecem aqui.
1Lead "Ganho" no funil
2Contrato gerado do modelo (dados do CRM)
3Assinatura (Autentique) + pagamento → cliente no CRM
Modelos de contrato
💡 {{ docxDica }}
Nenhum modelo configurado. Dê um nome e suba o arquivo do contrato-padrão (até 700 KB). Depois é só enviar para os clientes.
{{ m.nome }}
{{ m.arq }}
Contratos enviados · {{ ctrKpi.total }} no total · {{ ctrKpi.assinados }} assinados
Nenhum contrato enviado ainda
Clique em "Enviar novo contrato", escolha o cliente e o modelo. Ele aparece no Portal do Cliente para leitura e assinatura.
{{ c.cliente }}
{{ c.modelo }} · {{ c.quando }}
{{ c.status }}
Leads
{{ funilKpi.total }}
Em negociação
{{ funilKpi.emNegociacao }}
Ganhos
{{ funilKpi.ganhos }}
Perdidos
{{ funilKpi.perdidos }}
⚠ {{ orfaosMsg }}
{{ col.title }}{{ col.count }}
{{ l.empresa }}
{{ l.contato }}
{{ l.origem }}{{ l.valorFmt }}
✓ Virou cliente
Nenhum lead no funil
Cadastre um lead, importe um CSV (empresa;contato;fone;email;origem;valor) ou traga os clientes em Prospecção do CRM.
VM
Portal do Cliente
A área onde cada cliente envia documentos, lança despesas e paga boletos
📄 Documentos do mês
O cliente envia extratos e relatórios — o status entra direto na matriz do escritório.
🧾 Lançar despesas
Despesas do mês registradas pelo próprio cliente, prontas para o fechamento.
💳 Boletos
Honorários com link de pagamento PIX/boleto direto do Asaas.
Como dar acesso a um cliente: abra a ficha do cliente → aba Acessos → "Acesso ao Portal do Cliente" → informe e-mail e senha inicial. O endereço do portal é {{ portalUrl }}.
Usuários
{{ u.ini }}
{{ u.nome }}
{{ u.email }}
{{ u.papel }}
Adicionar usuário
Permissões deste usuário (Sócios têm tudo; Configurações é só de Sócios)
{{ userErro }}
Integrações
Chaves visíveis só para Sócios
Cole as credenciais de cada serviço. As integrações passam a operar nas próximas fases (cobranças, contratos e WhatsApp).
FFirebase · banco de dados e login
{{ intgChipLabel.firebase }}
{{ firebaseDesc }}
AAsaas · boletos, PIX e cobranças
{{ intgChipLabel.asaas }}
A conta da Vidal Machado já existe. Gere a chave em Asaas → Configurações → Integração → API e cole abaixo.
Registra https://vidal.kesassessoria.com.br/webhook/asaas no Asaas — pagamentos dão baixa sozinhos, sem o botão Sincronizar.
AuAutentique · assinatura de contratos
{{ intgChipLabel.autentique }}
Usado no envio de contratos para assinatura eletrônica. Gere o token em Autentique → Configurações → API.
DGoogle Drive · documentos recorrentes dos clientes
{{ intgChipLabel.drive }}
{{ driveDesc }}
WhatsApp Cloud API (oficial) · Luna
{{ intgChipLabel.whatsapp }}
Versão com a API oficial da Meta. Para receber as respostas dos clientes no inbox, configure no Meta Business → WhatsApp → Configuration: Callback URL = https://vidal.kesassessoria.com.br/webhook/whatsapp e o Verify token definido no servidor (WHATSAPP_VERIFY_TOKEN). A instância atual (AtendZappy/Evolution) segue em paralelo.
Luna — mensagens automáticas
Variáveis: {cliente} · {mes} · {pendencias} · {portal} · {link} · {venc} · {valor}
Dia 1 · pedido dos documentos
Dia 5 · reforço
Dia 10 · aviso de atraso
Cobrança de honorários (com link)
⏰ Cobranças automáticas — todo dia às 9h
O motor roda sozinho às 9h e envia pelo WhatsApp vinculado, usando os textos da Luna acima. Honorários do mês: link de pagamento no dia 1º (emita as cobranças no Asaas antes). Sem duplicar envios no mesmo dia.
Honorários vencidos · cobrar a cada
dias
Documentos · começa no dia
Repete a cada
dias
Até o dia (prazo)
{{ autoResumo }}
Permissões por usuário
Configurações: só Sócios · Cofre: exige permissão
{{ pu.nome }}{{ pu.papel }}
{{ ch.label }}
MóduloTiago (Sócio)Mari (Sócia)Funcionário
{{ p.mod }}
{{ leadModalTitulo }}
Empresa / Lead *
Contato
WhatsApp
E-mail
Origem
Valor estimado (R$/mês)
Etapa
Observações
{{ leadErro }}
{{ modalTitulo }}
Nome / Razão social *
CNPJ / CPF
Regime
WhatsApp (com DDD)
Porte
Responsável (sócio/titular)
CPF do responsável
E-mail
Endereço completo (usado nos contratos)
Perfil
Etapa CRM
Status
Honorário (R$/mês)
Dia de vencimento
Nº funcionários
Documentos exigidos todo mês
{{ formErro }}
{{ ficha.nome }}
{{ ficha.cnpj }} · {{ ficha.regime }}
{{ ficha.perfil }}{{ ficha.status }}Saúde: {{ ficha.saude }}
Honorário
{{ ficha.honFmt }}
Vencimento
dia {{ ficha.dia }}
Funcionários
{{ ficha.funcLabel }}
Aderência ao ICP
{{ ficha.icp }}
CNPJ / CPF · Porte
{{ fichaCnpjPorte }}
Responsável
{{ fichaResp }}
CPF do responsável
{{ fichaCpf }}
E-mail
{{ fichaEmail }}
{{ h.txt }}
{{ h.data }}
Documentos de {{ competenciaLabel }} — anexe, baixe ou marque o recebimento
{{ d.doc }}
{{ d.arqNome }}
{{ d.label }}
Documentos recorrentes do Google Drive — cartão CNPJ, contrato social, inscrição estadual
{{ driveMsg }}
{{ dv.nome }}
{{ dv.quando }}
Nenhuma cobrança gerada para {{ competenciaLabel }}. Gere na tela Honorários.
{{ fc.titulo }}
{{ fc.sub }}
{{ fc.sit }}
Prestação de serviços contábeis
Assinado · vigente
Assinado
🕐 Histórico de folhas de ponto
Todas as folhas desta empresa, por data de envio (todas as competências).
Nenhuma folha de ponto registrada para esta empresa
{{ ff.quando }} · {{ ff.compLbl }} · {{ ff.origem }}
{{ ff.func }}{{ ff.resumo }}
{{ ff.status }}
Cofre de Acessos
Sócios + permissão Cofre
{{ aceAtualizado }}
Links do cliente — clique para abrir em nova guia
Senha GOV.br
Senha Prefeitura / NFS-e
RG do responsável
Data de nascimento
NIRE
Inscrição estadual (IE)
Inscrição municipal (IM)
Código de acesso SN
Parcelamentos (e-CAC, PGFN…)
Observações
Links / portais do cliente (um por linha)
Depois de salvar, cada link vira um botão que abre em nova guia (aqui em cima).
Portais oficiais — abrem em nova guia
Acesso ao Portal do Cliente
{{ portalEmail }}
Acesso ativo · {{ portalUrl }}
Criado
Crie o login que o cliente usará em {{ portalUrl }} para enviar documentos e pagar boletos.
{{ portalErro }}
🤖 Agente IA do WhatsApp
Como a IA responde os clientes · as automações ficam no botão ⚡ Automações
⚙ Comportamento
Quando o agente responde
Limite/dia
Atendimento — início
Atendimento — fim
No modo "Fora do horário", o agente só responde antes do início e depois do fim do expediente (e nos fins de semana).
Prompt do agente (personalidade e regras)
📚 Regras da empresa (base de conhecimento)
Base de conhecimento do escritório
Cole o que a IA precisa saber: honorários, prazos, documentos exigidos, endereço, horário, perguntas frequentes. Ela consulta isto antes de responder e não inventa além do que está escrito. ({{ agBaseLen }})
Exemplo de resposta ✍ (opcional)
Cole uma resposta real bem dada. A IA imita o tamanho e o tom — inclusive mandar várias mensagens curtas em vez de textão. Separe as mensagens com uma linha contendo apenas |||
🧪 Testar o agente (nada vai para o WhatsApp)
Escreva como se fosse um cliente e veja como o agente
responde com o prompt em edição (sem salvar).
{{ t.texto }}
agente digitando…
⚡ Automações do WhatsApp
Respostas prontas, escritas por você — não passam pela IA e não têm custo
Estas mensagens são enviadas exatamente como você escrever e funcionam mesmo com o Agente IA desligado. Deixe um campo vazio para não enviar aquela mensagem.
👋 Mensagem de boas-vindas
Enviada uma única vez, quando um contato novo chama pela primeira vez.
🌙 Resposta fora do horário
Enviada quando chega mensagem fora do expediente (o horário é o configurado no Agente IA).
Palavras (vírgula)Resposta pronta
Nenhuma regra ainda — adicione a primeira abaixo.
✍ Modelo com preenchimento automático
Nome do modelo *
Texto do contrato *
Campos preenchidos automaticamente
No envio, cada variável vira o dado do cliente escolhido. Clique para copiar:
{{ mtxErro }}
⚙ Funis & etapas
Personalize as etapas de cada funil (arraste os leads entre elas no kanban). O tipo Ganho/Perdido define os números do painel. Renomear uma etapa não move os leads antigos — eles aparecem no aviso amarelo para reposicionar.
{{ funisErro }}
⚠ Desconectar o WhatsApp da Vidal?
Você está prestes a desligar o número {{ wcxNumeroTxt }} do sistema. Isso não é automático de desfazer:
  • as mensagens param de entrar e de sair — cliente que escrever não aparece no Atendimento;
  • a Luna e as automações deixam de responder;
  • os disparos em massa e as cobranças automáticas ficam parados;
  • para voltar, alguém precisa estar com o celular na mão e escanear um QR code novo.
Para confirmar, escreva DESCONECTAR abaixo:
Enviar novo contrato
Cliente *
Modelo de contrato *
{{ ctrErro }}
{{ legModalTitulo }}
Cliente *
Nº do processo
Tipo
{{ legErro }}
Conferência da folha de ponto
{{ fpConfCliente }} — confira a leitura da IA com a foto ao lado, ajuste e aprove
Cartão de ponto Cartão de ponto — 2ª parte
⚠ {{ fpPendTxt }}
Empresa *
Funcionário(a) *
Função
Quinzena
Mês
Ano
⏱ Horário de trabalho do colaborador *
Regime
Entrada
Saída
Intervalo
Tolerância (min)
= jornada de {{ fpJornadaLabel }}/dia
Apuração
Saldo anterior
Prazo para compensar
No banco de horas crédito e débito valem 1×1, sem adicional (CLT art. 59 §2º). O saldo positivo que sobrar no fim do prazo — ou na rescisão — vira hora extra e é pago com adicional.
Obrigatório — a jornada NÃO é deduzida: escolha o regime (8h, 6h, 12x36) ou informe entrada/saída/intervalo. Tudo que o colaborador trabalhar além da jornada no dia conta como hora extra. Tolerância: variações de até N min na entrada e N na saída (2×N no dia, padrão 5) não contam como extra nem como falta.
Previsto no mês
{{ fpApMesPrevisto }}
Trabalhado
{{ fpApMesTrabalhado }}
Saldo do mês
{{ fpApMesSaldo }}
Banco anterior
{{ fpBancoAnterior }}
+
Este mês
{{ fpBancoMes }}
=
Acumulado
{{ fpBancoAcum }}
{{ fpBancoVence }}
{{ fpAlertaTxt }}
Por semana (segunda a domingo)
Semana Previsto Trabalhado Saldo
{{ w.label }} {{ w.previstoTxt }} {{ w.trabalhadoTxt }} {{ w.saldoTxt }}
Dia Tipo Manhã E / S Tarde E / S Extra E / S Horas
{{ d.dia }} {{ d.horas }}
{{ d.avisoTxt }}
{{ fpTotResumo }}
{{ fpTotHoras }}
📣 Disparo em massa
Ritmo seguro anti-bloqueio · pelo número conectado
⚠ O WhatsApp não está conectado — conecte o número antes de disparar.
Envia para vários contatos no ritmo seguro: por padrão 1 a cada 10 minutos, no máximo 30 por dia (o resto continua sozinho no dia seguinte). Pode anexar uma foto e usar {{ varNome }} para personalizar. Quem responder cai na conversa normal do inbox.
Nome do disparo
Quando enviar
Usar um modelo salvo
Mensagem
foto {{ dpFotoNome }}
Máximo por dia
Espaço entre envios (min)
Quem recebe
Público
🏢 Funil de clientes
🎯 Funil comercial
🎯 {{ dpTotalAlvos }} destinatário(s) com WhatsApp {{ dpRitmoLabel }}
{{ dpExemploNomes }}
⚠ Confirma o envio para {{ dpTotalAlvos }} contato(s)? Mensagens em massa indesejadas podem gerar denúncias — envie só para quem espera seu contato.
Disparos criados
Nenhum disparo ainda
{{ d.nome }} {{ d.statusLabel }} {{ d.progresso }}
{{ d.resumo }}
💰 Calcular horas extras
{{ fpCalcNome }}
Salário mensal (R$) *
Horas extras (H:MM)
Adicional (%)
Divisor mensal
Regras (Cálculo Exato): valor da hora = salário ÷ divisor (220 = jornada de 44h/semana; use 200 p/ 40h). Hora extra = valor da hora × (1 + adicional%). 50% em dias úteis, 100% em domingos e feriados.
Dias úteis no mês
Domingos + feriados
DSR = (valor das extras ÷ dias úteis) × (domingos + feriados)
Valor da hora normal{{ fpCalcR.hora }}
Valor da hora extra ({{ fpCalcR.percLabel }}){{ fpCalcR.horaExtra }}
Extras ({{ fpCalcR.horasLabel }}){{ fpCalcR.extras }}
DSR{{ fpCalcR.dsr }}
TOTAL a pagar de extras{{ fpCalcR.total }}
Salário e regras ficam guardados no colaborador desta empresa — não precisa cadastrar de novo na próxima folha.
{{ toast }}