← voltar

Plataforma multi-tenant para escritórios contábeis

Foco Contábil

do cadastro ao caixa

Multi-tenant · um workspace por escritório RBAC via Postgres RLS Lei 6.404 + CPC 26 pt-BR nativo

Planilha + WhatsApp + Calima

Operação manual fragmentada

  • Cadastro de cliente copiado da Receita à mão
  • Régua de cobrança feita em planilha + WhatsApp
  • NFS-e emitida uma a uma no portal da prefeitura
  • Balanço/DRE refeitos no Excel todo mês
  • Sem auditoria — quem alterou o quê, e quando?

Foco Contábil

Do CNPJ à DRE assinada — um pipeline só

  • CNPJ digita uma vez; Receita Federal preenche o resto
  • Contratos de honorários geram faturas no dia certo
  • Pix + Boleto via Asaas com régua de 3 toques
  • NFS-e emitida pelo web service da prefeitura
  • Balanço/DRE auto-construídos com citações da lei
  • Cada alteração registrada de forma indelével

O ciclo

Do CNPJ na Receita à DRE assinada

🏢
Cadastro
CNPJ → Receita Federal auto-preenche
📋
Contrato
Honorário mensal + reajuste IGPM/IPCA
💸
Fatura
Pix + Boleto Asaas no dia da competência
📨
Régua
3 toques: pré-venc · venc · pós-atraso
🧾
NFS-e
Web service prefeitura + certificado A1
📊
DRE
Lei 6.404 · CPC 26 · citações clicáveis

Cada etapa está integrada à próxima. O contrato gera a fatura, a fatura vira NFS-e, a NFS-e alimenta o balancete, o balancete monta o DRE — sem digitar duas vezes.

A plataforma em números

Construída pra escala desde o dia 0

Workspaces
Um por escritório, isolados via RLS
3
Perfis RBAC
Sysadmin · Sócio · Estagiário
7
Módulos granulares
Sócio libera o que cada Estagiário vê
100%
Auditável
Append-only · LGPD ready

Módulos

Tudo que um escritório precisa, no mesmo lugar

👥
Clientes
CNPJ/CPF · auto-fill Receita Federal · situação cadastral validada · endereço IBGE · histórico indelével.
📋
Contratos
Honorário mensal · reajuste IGPM/IPCA · 13º (simples/dezembro/nov+dez) · notas internas.
🧾
Serviços
LC 116/03 · código ISS municipal · CNAE · alíquotas + retenções IRRF/CSRF herdadas em contratos.
📅
Matriz mensal
Cliente × mês × status. Faturas auto-geradas. Pix/Boleto Asaas · pagamento manual como fallback.
💰
Adiantamentos
Recebimento antecipado · compensação FIFO automática contra faturas pendentes · Passivo Circulante.
🏛️
NFS-e
Web service prefeitura · certificado A1 cifrado no Vault · retentativa com backoff exponencial.
📊
Relatórios
Balancete · Balanço Patrimonial · DRE (mês/trim/ano) · plano de contas SPED + customizações por cliente.
🛡️
Auditoria
Histórico append-only de toda alteração financeira. Quem · o quê · quando · de onde (IP).

Multi-tenancy

Cada escritório no seu workspace

  • Cada firma vive num workspace isolado
  • Logo + razão social no topo, sempre à vista
  • Sócios convidam outros Sócios e Estagiários
  • Sysadmin gerencia workspaces sem entrar neles
  • Convite por link mágico de uso único

RLS Postgres

Isolamento aplicado no banco

  • Row-Level Security em toda tabela de negócio
  • Função is_in_workspace() com SECURITY DEFINER
  • Helpers no DB filtram antes mesmo de o SQL responder
  • Sysadmin tem short-circuit pra ver tudo, com auditoria
  • Nenhum bug no app pode vazar dado entre tenants

RBAC + módulos granulares

Acesso desenhado pro escritório real

Plataforma
🛡️ Sysadmin
Dono da plataforma. Cria workspaces, gerencia membros entre firmas, vê dados globalmente via RLS short-circuit. Não "entra" em workspace específico — opera de fora.
Workspace
🧑‍💼 Sócio
Vê tudo do seu workspace · cria/edita/arquiva · convida outros Sócios e Estagiários · libera módulos individualmente pra cada Estagiário · gerencia certificado A1.
Workspace
👤 Estagiário
Acesso por padrão só a Clientes. Cada módulo (Contratos, Serviços, Matriz, NFS-e, Adiantamentos, Relatórios) é liberado individualmente pelo Sócio. Operações de escrita restritas ao Sócio.

Cada Estagiário tem um conjunto próprio de módulos liberados. O Sócio toggla na tela Configurações → Usuários e a mudança vale no próximo carregamento.

Cadastro automático

CNPJ digita uma vez. Sistema preenche o resto.

01
Cole o CNPJ na tela de novo cliente. A API da Receita Federal retorna razão social, nome fantasia, CNAE principal, endereço completo, data de abertura e situação cadastral em ~500ms.
02
Situação "Baixada", "Inapta" ou "Suspensa" → cadastro bloqueado com alerta impeditivo. Só CNPJs "Ativos" entram no sistema.
03
API indisponível? Permite cadastro manual com flag needs_review=true pro Sócio revisar quando a Receita voltar. Resiliência sobre disponibilidade de terceiros.

Onboarding em massa + pausa reversível

Migre um escritório inteiro em minutos

JSON base
📥 Gerar template
Em Clientes → Gerar JSON base, baixe o esqueleto com todos os campos vazios (""). Preencha um cliente por entrada — Excel-export, planilha do escritório, à mão.
Import com validação
📤 Importar JSON
Cada linha passa por validação Zod. Clientes "ativos" entram, "baixados/inaptos/suspensos" são pulados com motivo claro. Workspace é inferido do ator — nada cruza tenants.
Pausa reversível
⏸️ Pausar cliente
Pause um cliente sem arquivar. A Matriz Mensal deixa de gerar faturas até você reativar. Inspirado no pause do amazing-school — perfeito para sabbáticos, disputas e suspensões temporárias.
📋
Balancete por JSON também
O mesmo padrão (gerar template, preencher offline, re-importar) vale para o balancete mensal. Acelera o setup de um cliente novo sem dependência de ERP intermediário.

Faturamento + cobrança

Pix + Boleto via Asaas, régua de 3 toques

🗓️
Cron mensal
Todo dia 1, varre contratos ativos e gera faturas pendentes pro mês. Idempotente — roda quantas vezes precisar.
💳
Asaas integration
Boleto + Pix gerados pelo cliente na hora que ele entra na fatura. Webhook devolve "paid" e atualiza o saldo.
📧
Régua de 3 toques
T-5: aviso de vencimento próximo. T0: fatura vence hoje. T+5: aviso de inadimplência.
📬
E-mail + Telegram
E-mail é o canal universal. Telegram opcional via opt-in com chat_id — sem custo por mensagem.
💰
Adiantamentos FIFO
Cliente paga adiantado? Sistema aplica automaticamente nas próximas faturas pendentes, do mais antigo pro mais novo.
🔁
Marcação manual
Fallback do webhook: Sócio clica numa célula da matriz e alterna o status. Toda mudança vai pro audit log.

NFS-e nativa

Web service da prefeitura — não portal manual

  • Integração direta com Oxy/IPM em Foz do Iguaçu
  • Outras prefeituras: arquitetura plugável por provider
  • Certificado A1 (.pfx) cifrado em Supabase Vault
  • Fila com retentativa por backoff exponencial
  • XML assinado XAdES antes do envio

Falha? Manual.

Quando o web service cai, o trabalho não para

  • 5 tentativas com backoff (1m · 5m · 30m · 2h · 12h)
  • Após esgotar → status manual_required
  • Sócio recebe alerta no painel + Telegram
  • Emite manualmente no portal e marca como issued
  • Próximo retry volta automático no dia seguinte

Relatórios contábeis

Balanço e DRE com fundamentação legal

📑
Plano de contas SPED
Plano de Contas Referencial da Receita Federal já carregado. Cada cliente pode customizar contas adicionais.
📥
Balancete por JSON
Baixe JSON base com todas as contas vazias. Preencha em pt-BR (1.234,56) e re-importe. Vazio = conta não existe.
⚖️
Balanço Patrimonial
Ativo / Passivo / PL conforme Lei 6.404/76 art. 178. Citações clicáveis para o Planalto.
Lei 6.404/76 art. 178 · CPC 26
📈
DRE Mês/Trim/Ano
Apuração por competência, conforme Lei 6.404/76 art. 187. Toggle entre janela do mês, trimestre, ano (YTD).
Lei 6.404/76 art. 187 · CPC 26
📚
Fundamentação clicável
Cada linha do relatório linka para Planalto, CPC, IAS 1, IFRS 18 — auditor consegue rastrear a base legal em 1 clique.
📤
Export Calima (em breve)
TXT/CSV no formato Calima/Domínio/Alterdata pra alimentar o ERP fiscal do escritório — sem digitar.

Stack técnica

Boring tech, escolhida pra durar

Frontend
Next.js 16 + React 19
App Router · Server Actions · Server Components · Tailwind v4 · TypeScript strict.
Backend
Supabase
Postgres 16 · Auth · Storage · RLS policies · custom JWT hook injetando app_role.
Segurança
RLS + audit_log
Row-Level Security em toda tabela de negócio · trigger de imutabilidade no audit_log · SQL sanitization.
Integrações
Asaas · Receita · Prefeitura
Asaas (Pix+Boleto) · API CNPJ.ws (Receita) · Oxy/IPM (NFS-e) · Telegram Bot · SendGrid (e-mail).
Deploy
Vercel + Supabase
Deploy em git push · cron jobs via GitHub Actions · zero infra pra manter.
Observabilidade
Logs estruturados
Logger custom · cron_runs table · status visível no painel admin · webhook deduplication.

Roadmap

O que está pronto e o que vem a seguir

✅ M1.1–M1.2 · ENTREGUE
Cadastros + Contratos
Clientes via Receita · Serviços com regras fiscais · Contratos recorrentes · audit log indelével.
✅ M1.3 · ENTREGUE
Faturamento + Asaas
Matriz mensal · Pix+Boleto Asaas · régua 3 toques (e-mail+Telegram) · webhook idempotente.
🚧 M1.3.1 · EM CONSTRUÇÃO
NFS-e Oxy/IPM wiring
XSD da prefeitura · XAdES signer · upload de A1 via UI (hoje via Supabase Studio).
✅ M2.A · ENTREGUE
Adiantamentos + Recibo
Adiantamento como Passivo Circulante · compensação FIFO · recibo PDF profissional A4.
✅ M2.5 · ENTREGUE
Multi-tenant + Relatórios
Workspaces · RBAC granular · Balancete · Balanço · DRE · plano de contas SPED.
✅ M2.6 · ENTREGUE
Convite + Workspace UX
Magic link sem SMTP · sync profile↔workspace · pausa reversível de cliente · import JSON em lote.
✅ M2.7 · R1 ACESSIBILIDADE
WCAG 2.2 AA
3 paletas (Original · Cividis · Alto Contraste) · TTS pt-BR via Edge Neural (Antônio masculino real) · font scale · reduced motion · status badges com ícone+texto+cor.
✅ M2.7 · R2 PORTAL CLIENTE
Portal do Cliente
Novo role cliente · rotas /portal/* read-only · sócio atribui quais CNPJs cada cliente vê · perfil próprio (foto, cidade, senha) · histórico completo de competências.
✅ M2.7 · R3 LANÇAMENTOS
Partida dobrada
Diário com D=C validado por trigger Postgres · imutabilidade (cancel + reversal) · balancete materializado automaticamente · razão UI · auto-hook fatura paga → D Caixa / C Receita.
📋 M2.B · PLANEJADO
Conciliação OFX
Import de extrato bancário · matching automático com faturas · diferenças vão pra revisão.
📋 M2.C · PLANEJADO
Clientes eventuais + OS
Ordem de Serviço pra trabalhos avulsos (abertura, IRPF, alterações contratuais) — sem contrato recorrente.
📋 M2.D · PLANEJADO
Exportador Calima
TXT/CSV no layout Calima/Domínio/Alterdata pra alimentar o ERP fiscal sem digitar manualmente.
💭 FUTURO
Mais prefeituras
Beyond Foz: Curitiba, Cascavel, São Paulo, Rio. Arquitetura plugável de provider já preparada.

Conheça por dentro

do cadastro
ao caixa.

Entre como Natasha Mel (Sócia) ou Renata Sampaio (Estagiária) — contas demo · 100% fictícias