Manual do Sistema

Capítulo 1

Bem-vindo à SolarOrbita

A SolarOrbita centraliza toda a gestão do seu negócio de energia solar — do primeiro contato com o cliente até o pagamento final. Com transparência total e controle em cada etapa, você acompanha o ciclo completo do projeto numa única plataforma multi-tenant SaaS.

  • Centralização total: do lead ao recebível, costurado por projeto_id
  • Dimensionamento automático: consumo → potência via HSP → qtd de módulos
  • Multi-tenant com RBAC de 8 níveis (0-7) e isolamento por organizacao_id
  • Internacionalização: PT-BR/EN-US, câmbio travado, Stripe/Asaas por país

Mapa do Sistema — Módulos

Conheça os módulos disponíveis na barra lateral e o que cada um faz:

Dashboard

Visão executiva com cascata de estados, KPIs em tempo real e BI integrado.

Clientes · CRM

Gestão de leads, funil de vendas Kanban e clientes com código CLI-2026-XXXX.

Propostas

Criação com dimensionamento automático, preços ocultos, FDI 1.0-1.5 e snapshot de cotação.

Simulador

Simulação rápida de dimensionamento e retorno financeiro sem criar proposta.

Departamento Técnico

Hierarquia Técnica→Prestador→Funcionário, OS, catálogo de equipamentos e prestadores.

Ordens de Serviço

5 processos (Engenharia, Compras, Instalação, Vistoria Pré/Pós) e Kanban de estados.

Contratos & Administrativo

Gestão de contratos, conferência de documentos e liberação de OS.

Compras & Estoque

OC nasce da cascata do aceite, gate financeiro, entrada de estoque e fornecedores.

Financeiro

10 abas: lançamentos, DRE, fluxo de caixa, balanço, conciliação, régua de cobrança.

Mensagens

Chat interno vinculado a projeto/OS/proposta com badges de não-lidas.

Relatórios

Comercial, Financeiro, Marketing e Exportação com visões departamentais.

Usuários

Cadastro direto, níveis 0-7, ID MS-XXXX imutável e log de auditoria.

Convites

Convite obrigatório com token, Admin Geral, expiração 7d, permissões antes do envio.

Configurações

Dados da empresa, regime fiscal (Simples/Presumido/Real), BDI e logo white-label.

Suporte

Tickets TKT-2026-XXXX, SLA automático, prioridades e tradução bidirecional bilíngue.

Debug de Admin

Scanner de anomalias cross-tenant, correção 1-clique e monitoramento (super-admin).

Manual do Sistema

SolarOrbita — Guia Completo da Plataforma

SolarOrbita · Português

Capítulo 1

Bem-vindo à SolarOrbita

A SolarOrbita centraliza toda a gestão do seu negócio de energia solar — do primeiro contato com o cliente até o pagamento final. Com transparência total e controle em cada etapa, você acompanha o ciclo completo do projeto numa única plataforma multi-tenant SaaS.

  • Centralização total: do lead ao recebível, costurado por projeto_id
  • Dimensionamento automático: consumo → potência via HSP → qtd de módulos
  • Multi-tenant com RBAC de 8 níveis (0-7) e isolamento por organizacao_id
  • Internacionalização: PT-BR/EN-US, câmbio travado, Stripe/Asaas por país

Mapa do Sistema — Módulos

Conheça os módulos disponíveis na barra lateral e o que cada um faz:

Dashboard

Visão executiva com cascata de estados, KPIs em tempo real e BI integrado.

Clientes · CRM

Gestão de leads, funil de vendas Kanban e clientes com código CLI-2026-XXXX.

Propostas

Criação com dimensionamento automático, preços ocultos, FDI 1.0-1.5 e snapshot de cotação.

Simulador

Simulação rápida de dimensionamento e retorno financeiro sem criar proposta.

Departamento Técnico

Hierarquia Técnica→Prestador→Funcionário, OS, catálogo de equipamentos e prestadores.

Ordens de Serviço

5 processos (Engenharia, Compras, Instalação, Vistoria Pré/Pós) e Kanban de estados.

Contratos & Administrativo

Gestão de contratos, conferência de documentos e liberação de OS.

Compras & Estoque

OC nasce da cascata do aceite, gate financeiro, entrada de estoque e fornecedores.

Financeiro

10 abas: lançamentos, DRE, fluxo de caixa, balanço, conciliação, régua de cobrança.

Mensagens

Chat interno vinculado a projeto/OS/proposta com badges de não-lidas.

Relatórios

Comercial, Financeiro, Marketing e Exportação com visões departamentais.

Usuários

Cadastro direto, níveis 0-7, ID MS-XXXX imutável e log de auditoria.

Convites

Convite obrigatório com token, Admin Geral, expiração 7d, permissões antes do envio.

Configurações

Dados da empresa, regime fiscal (Simples/Presumido/Real), BDI e logo white-label.

Suporte

Tickets TKT-2026-XXXX, SLA automático, prioridades e tradução bidirecional bilíngue.

Debug de Admin

Scanner de anomalias cross-tenant, correção 1-clique e monitoramento (super-admin).

Capítulo 1B

Agentes de IA que automatizam a jornada comercial

O Ecossistema Orbita é o conjunto de agentes de IA que automatizam a jornada do lead ao recebível. Cada agente é especialista em uma etapa do ciclo e se conecta ao SolarOrbita para ler e gravar dados no banco do tenant, sempre respeitando o isolamento multi-tenant (RLS por organizacao_id).

Objetivo

Apresentar os 5 agentes do ecossistema e como cada um se conecta ao SolarOrbita.

Os 5 Agentes

1

Marketing Orbita

Captação de leads via Instagram e e-mail. Gera plano de marketing, calendário editorial e conteúdo. Escreve no SolarOrbita via PlanoMarketing, ConteudoMarketing e CanalCaptacao.

2

Vendas Orbita

Qualificação e nurturing de leads. Acompanha o funil, dispara follow-ups pela régua e mantém o lead aquecido. Atua sobre Cliente/Lead, ReguaFollowup e FollowupEnviado.

3

Valentina (Agente Executiva)

Criação de propostas e contratos. A Valentina busca contatos no Agendor via API e chama a função backend criarLeadsAgendor para criar/atualizar leads no CRM. A partir dos dados do cliente, gera a Proposta e o Contrato.

4

Finanças Orbita

Cobrança, conciliação Asaas e DRE. Gera cobranças via gateway, concilia recebimentos e alimenta o DRE do tenant. Atua sobre LancamentoFinanceiro e CobrancaAsaas.

5

Sentinela LGPD

Segurança e compliance. Monitora acessos, registra requisições LGPD e garante o isolamento multi-tenant (RLS por organizacao_id). Atua sobre RegistroLGPD e SecurityLog.

Fluxo Comercial Completo

A jornada automatizada do lead ao recebível:

Marketing Orbita (captação)
Vendas Orbita (nurturing)
Valentina (proposta + contrato)
Finanças Orbita (cobrança + DRE)

Sincronização

Cada agente se conecta ao SolarOrbita:

  • Marketing Orbita: Escreve em PlanoMarketing / ConteudoMarketing / CanalCaptacao
  • Vendas Orbita: Atua em Cliente/Lead + ReguaFollowup + FollowupEnviado
  • Valentina: Chama criarLeadsAgendor (Agendor → CRM) e gera Proposta/Contrato
  • Finanças Orbita: Atua em LancamentoFinanceiro + CobrancaAsaas + DRE
  • Sentinela LGPD: Monitora RegistroLGPD + SecurityLog + isolamento RLS
Capítulo 2

Como a empresa nova entra no sistema

O onboarding é o momento em que uma nova empresa se cadastra na plataforma. O primeiro usuário criado vira automaticamente o Admin Geral do tenant, com poder total para convidar a equipe e definir papéis.

Objetivo

Explicar o cadastro da empresa e como o primeiro usuário se torna Admin Geral automaticamente.

Onde fica

Tela de cadastro acessível via landing page ou link direto.

Abrir /cadastro-trial

Passo a passo

1

Acessar o cadastro

A empresa acessa a tela de cadastro (cadastro-trial) via landing page ou link direto. O país é detectado pelo navegador, definindo idioma e moeda.

2

Dados da empresa

Preenche: razão social, CNPJ (ou equivalente do país), e-mail do responsável, telefone. Esses dados criam a organização (tenant).

3

Primeiro usuário

O e-mail do responsável cria o primeiro usuário do tenant. Ele ainda não é admin — é um usuário comum aguardando o primeiro login.

4

Primeiro login → Admin Geral

No primeiro login, o sistema promove automaticamente esse usuário a Admin Geral (Nível 1). Ele ganha poder total sobre o tenant.

5

Convidar equipe

Como Admin Geral, ele acessa "Usuários" e cadastra membros diretamente ou envia convites com token. Cada convite define o papel (role) e nível de acesso.

6

Definir papéis

O Admin Geral define quem é admin, vendedor, técnico, financeiro ou operacional. Os papéis controlam o acesso a cada módulo via RBAC de 8 níveis.

Sincronização

O onboarding é o ponto de partida do tenant:

  • Organização: Cria o tenant com plano Trial e status "Trial"
  • Usuários: O primeiro usuário vira Admin Geral e pode convidar a equipe
  • Catálogo: O tenant começa com catálogo vazio — o Admin cadastra os produtos
  • Financeiro SaaS: Inicia o trial de 14 dias e a régua de cobrança
Capítulo 3

A cascata de estados em tempo real

O Dashboard é o painel executivo que consolida toda a operação numa única visão. A cascata de estados mostra exatamente onde cada projeto está no ciclo: Lead → Proposta → Validação Técnica → Aceite → Contrato → OS → Homologação → Recebível.

Objetivo

Acompanhar KPIs em tempo real e visualizar a cascata de estados de todos os projetos do tenant.

Onde fica na sidebar

Item "Dashboard" no topo da barra lateral.

Abrir /dashboard

KPIs e Cascata de Estados

1

KPIs principais

Propostas geradas, OS em andamento, recebido no mês, a receber. Cada KPI é clicável e leva à lista filtrada.

2

Cascata de estados

O tracker "Fluxo Integrado" mostra cada projeto navegando pelas etapas: Proposta → Validação → Contrato → OS → OC → Estoque → Instalação → Vistoria → Homologação → Recebível.

3

Tracker integrado

O FluxoIntegradoTracker mostra o progresso de cada projeto_id em uma barra horizontal com as etapas concluídas (verde) e pendentes (cinza).

4

BI integrado

Seções de BI com funil de conversão, evolução mensal, projeção de receita e alertas de negócio — alimentados pela função dadosRelatorioBI.

5

Abas departamentais

Filtros rápidos por departamento: CRM, Técnico, OS, Compras, Estoque e Financeiro — cada um com KPIs específicos.

Sincronização

O Dashboard conecta dados de todos os departamentos:

  • CRM: Leads, propostas e conversão
  • Técnico: OS em andamento e validações pendentes
  • Financeiro: Recebidos, a receber e fluxo de caixa
  • Compras: OCs aguardando aprovação e estoque baixo
Capítulo 4

O ponto de partida — agora com código CLI-2026-XXXX

O cadastro de clientes é onde a jornada começa. Ao cadastrar um cliente, ele entra automaticamente no funil CRM na etapa "Em Contato" e recebe um código sequencial CLI-2026-XXXX imutável.

Objetivo

Registrar e organizar clientes no CRM, gerando funil de vendas e código CLI imutável para rastreabilidade.

Onde fica na sidebar

Item "Clientes · CRM" na barra lateral.

Abrir /clientes

Passo a passo

1

Acesse o CRM

Clique em "Clientes · CRM" na barra lateral. Você verá o funil Kanban e a lista de clientes.

2

Novo Lead

Clique no botão "Novo Lead" ou "Novo Cliente" no topo da página.

3

Campos obrigatórios

Preencha: nome, e-mail, telefone, cidade e estado. Esses dados são mínimos para iniciar o relacionamento.

4

Código CLI-2026-XXXX

Ao salvar, o sistema gera automaticamente um código sequencial CLI-2026-XXXX (ex: CLI-2026-0001). Este código é imutável e vincula o cliente a todas as etapas do ciclo.

5

Entrada no funil

O cliente entra automaticamente no funil Kanban na etapa "Em Contato". Arraste o card pelas etapas conforme avança: Em Contato → Negociação → Proposta → Fechado.

6

Dados de consumo (opcional)

Se disponível, informe a UC (Unidade Consumidora) e o consumo mensal. Isso acelera o dimensionamento automático na proposta.

Sincronização

O cliente cadastrado alimenta todo o ciclo:

  • Propostas: O cliente recebe propostas técnicas vinculadas ao seu perfil e código CLI
  • Técnica: Seus dados de consumo alimentam o dimensionamento automático
  • Financeiro: Após fechamento, gera recebíveis vinculados ao cliente
  • CRM Kanban: O funil rastreia a jornada comercial do lead ao fechamento
Capítulo 5

Dimensionamento automático, preços ocultos e snapshot imutável

A proposta é o coração da operação. O dimensionamento é automático (consumo → potência via HSP → qtd de módulos), os preços ficam ocultos durante a seleção de equipamentos (só aparecem no resumo final), o FDI é mantido entre 1.0 e 1.5, e a cotação é travada em um snapshot imutável no envio.

Objetivo

Criar propostas técnicas com dimensionamento automático, preços ocultos na seleção, FDI controlado, parâmetros comerciais/BDI antes do fiscal e snapshot de cotação imutável.

Onde fica na sidebar

Item "Propostas" → "Nova Proposta" na barra lateral.

Abrir /nova-proposta

Passo a passo

1

Dados do cliente

Selecione o cliente (vinculado ao CRM) ou crie um novo. Informe cidade, estado e grupo tarifário. A irradiância é obtida automaticamente da capital do estado.

2

Consumo de energia

Informe o consumo mensal (12 meses ou média). O sistema usa fallback entre consumo anual/mensal para o cálculo.

3

Dimensionamento automático

O sistema calcula automaticamente: potência necessária (kWp) = consumo_anual_kWh / (HSP × 365 × 1/perdas), e qtd de módulos = potência / potência_unitária (arredondado para cima). O rótulo de "Qtd. de Módulos" indica se é automático ou manual.

4

FDI 1.0–1.5

O Fator de Dimensionamento do Inversor (FDI) é automaticamente sugerido com base na faixa ABNT NBR 16149 (0.75x–1.30x) e mantido entre 1.0 e 1.5 como gate impeditivo.

5

Seleção de equipamentos (preços ocultos)

Escolha módulos, inversores, acessórios, baterias, fixação, projeto e frete do catálogo. Os preços unitários ficam OCULTOS durante a seleção — só aparecem no resumo final.

6

Parâmetros comerciais/BDI

Antes do fiscal, configure: BDI Material, BDI Serviço, Comissão, Financeiro, Desconto. Estes parâmetros comerciais são exibidos no resumo antes dos dados fiscais.

7

Parâmetros fiscais

Revise impostos (Simples/Presumido/Real), ICMS, PIS, COFINS. O toggle "aplica_fiscal" define se os tributos são incluídos no valor total — congelado no snapshot imutável.

8

Snapshot de cotação

Ao enviar a proposta, a cotação é TRAVADA (cotacao_travada_proposta) e os parâmetros fiscais são congelados (parametros_fiscais_snapshot). Nada muda após o envio, protegendo contra variações.

9

Enviar para validação

Ao enviar, a proposta entra no estado "aguardando_tecnico" e vai para a fila do engenheiro. A cascata (Contrato + OS + Recebíveis) só dispara no aceite do cliente.

Gate de Validação Técnica

A proposta passa OBRIGATORIAMENTE por validação técnica antes de chegar ao cliente. Sem aprovação do engenheiro, nada avança.

RascunhoAguardando ValidaçãoAprovada TécnicoEnviadaAceita

Sincronização

A proposta é o nó central do ciclo:

  • Catálogo: Equipamentos do catálogo multi-tenant (snapshot no momento da proposta)
  • Técnica: Vai para validação do engenheiro (gate obrigatório)
  • Contratos: Aceite gera contrato automaticamente (cascata pelo projeto_id)
  • Financeiro: Aceite gera recebíveis/parcelas automaticamente (cascata)
  • Snapshot: Cotação e parâmetros fiscais congelados — imutáveis após o envio
Capítulo 6

Simulação rápida sem criar proposta

O Simulador permite calcular dimensionamento e retorno financeiro rapidamente, sem precisar criar uma proposta formal. Ideal para atendimento rápido de clientes e pré-venda.

Objetivo

Simular dimensionamento solar e retorno financeiro (payback, ROI) de forma rápida, sem criar proposta.

Onde fica na sidebar

Item "Simulador" na barra lateral.

Abrir /simulador

Passo a passo

1

Dados do cliente

Informe nome, cidade e estado. A irradiância solar é obtida automaticamente da capital do estado.

2

Consumo

Digite o consumo mensal médio (kWh) ou os 12 meses. O sistema aceita fallback entre anual e mensal.

3

Equipamentos

Selecione módulo e inversor do catálogo. O dimensionamento é calculado automaticamente.

4

Resultados

O sistema mostra: potência do sistema (kWp), qtd de módulos, geração anual (kWh), área ocupada, payback, ROI 10/25 anos e economia anual.

5

Converter em proposta

Se o cliente aceitar, você pode converter a simulação em uma proposta formal com um clique — os dados são pré-preenchidos.

Sincronização

O simulador é a porta de entrada para propostas:

  • Propostas: Simulação pode ser convertida em proposta formal
  • Catálogo: Usa os mesmos equipamentos do catálogo do tenant
  • CRM: Pode ser vinculado a um lead existente
Capítulo 7

Hierarquia Técnica → Prestador → Funcionário

O Departamento Técnico é o guardião da qualidade. Toda proposta passa por validação técnica. A hierarquia é: Engenheiro/Técnico → Prestador Terceirizado → Funcionário do Terceirizado. Fotos de instalação e fechamento de OS com kwp real são registados em campo.

Objetivo

Validar propostas tecnicamente, gerenciar prestadores e seus funcionários, executar OS em campo com fotos e checklists.

Onde fica na sidebar

Item "Depto. Técnico" na barra lateral — com sub-módulos: Propostas, OS, Kanban, Calendário, Catálogo, Prestadores.

Abrir /departamento-tecnico

Passo a passo

1

Fila de validação

Acesse "Depto. Técnico" → "Propostas". Filtre por "Aguardando Validação". Confira dimensionamento, FDI (1.0-1.5), compatibilidade elétrica (Voc, Isc) e projeto financeiro.

2

Aprovar ou reprovar

Aprove ("aprovada_tecnico") para liberar o envio ao cliente, ou solicite revisão ("reprovada_tecnico") com observações.

3

Cadastro de prestador

Em "Prestadores", cadastre empresas terceirizadas: razão social, CNPJ, contato, especialidade (Instalação, Manutenção, Vistoria) e área de atuação.

4

Hierarquia: Prestador → Funcionário

Cada prestador pode indicar funcionários (técnicos de campo) que executarão as OS. A OS vincula: terceirizado_id (empresa) + funcionario_terceirizado_id (pessoa que executa).

5

Atribuir OS

Quando uma OS é gerada (cascata do contrato assinado), o engenheiro atribui ao prestador, que atribui ao funcionário. O prestador pode questionar via chat da OS antes de aceitar.

6

Execução em campo

No campo, o funcionário reporta: check-in, fotos de pré e pós-instalação, checklists (materiais, vistoria pré/pós), observações técnicas e km rodado. Tudo registado em tempo real.

7

Fechar OS

Ao concluir, o funcionário/prestador fecha a OS. O status muda para "Concluída" com o kwp real do sistema instalado. O fechamento dispara o retorno ao financeiro (pagamento do prestador).

Sincronização

O departamento técnico protege toda a operação:

  • Propostas: Gate de validação obrigatório antes do envio ao cliente
  • OS: Recebe OS da cascata do contrato e executa em campo
  • Compras: Confere materiais e valida estoque
  • Financeiro: Fechamento de OS gera ordem de pagamento do prestador
Capítulo 8

5 processos, Kanban de estados e kwp real

A Ordem de Serviço percorre 5 processos: Engenharia, Compras, Instalação, Vistoria Pré e Vistoria Concessionária. O Kanban mostra todos os estados: Criada → Liberada → Em Execução → Aguardando Vistoria → Homologação → Concluída. Cada OS carrega o kwp real do sistema instalado.

Objetivo

Gerenciar o ciclo completo da OS, desde a criação (cascata do contrato) até a homologação, com 5 processos, Kanban de estados e kwp real.

Onde fica na sidebar

Item "Ordens de Serviço" na barra lateral.

Abrir /ordens-servico

5 Processos da OS

1

1. Engenharia

A OS nasce da cascata do contrato assinado. O engenheiro define escopo, cronograma, checklist de materiais e atribui ao prestador/funcionário.

2

2. Compras

A OC é gerada automaticamente com snapshot dos equipamentos. O estoque é verificado. Se faltar material, a OC vai para "aguardando_liberacao" até o gate financeiro.

3

3. Instalação

O prestador/funcionário executa em campo: check-in, fotos pré/pós, checklists (materiais, vistoria pré/pós), observações e km rodado.

4

4. Vistoria Pré

Antes de ligar o sistema, o técnico faz a vistoria pré-instalação (checklist_vistoria_pre): estrutura, cabeamento, aterramento, inversor.

5

5. Vistoria Concessionária

Após a instalação, o sistema é submetido à vistoria da concessionária (protocolo_concessionaria) e à homologação. O status muda para "Homologação" e depois "Concluída".

Kanban de Estados da OS

A OS percorre estados sequenciais visíveis no Kanban do Departamento Técnico:

CriadaLiberadaEm ExecuçãoAguardando VistoriaVistoria ConcessionáriaHomologaçãoConcluída

Sincronização

A OS é a ponte entre contrato e financeiro:

  • Contrato: OS gerada automaticamente na cascata do contrato assinado
  • Compras: OC gerada automaticamente com snapshot de equipamentos
  • Técnica: Atribuída ao prestador → funcionário para execução
  • Financeiro: Fechamento gera ordem de pagamento do prestador (valor_servico)
  • kwp real: A OS carrega a potência real do sistema instalado (não a estimada)
Capítulo 9

Do aceite à assinatura, com conferência obrigatória

O contrato é gerado automaticamente no aceite da proposta, mas passa por conferência administrativa obrigatória antes de ir para assinatura do cliente.

Objetivo

Gerar contratos automaticamente e garantir a conferência de documentos antes da assinatura.

Onde fica na sidebar

Item "Contratos" no grupo "Administrativo" da barra lateral.

Abrir /contratos

Passo a passo

1

Contrato automático

O aceite da proposta gera o contrato automaticamente (cascata). Ele aparece com status "Aguardando Documentos".

2

Conferência de documentos

O administrativo acessa "Contratos", abre o contrato e confere os documentos do cliente (identidade, comprovante, etc.).

3

Liberação para assinatura

Após conferência, libere o contrato. Um link de assinatura é gerado e enviado ao cliente.

4

Assinatura do cliente

O cliente assina via gov.br, Clicksign, ou impresso + foto. O PDF assinado é anexado ao contrato.

5

Geração de OS

Após a assinatura do cliente, a Ordem de Serviço é gerada automaticamente e vai para o departamento técnico.

Sincronização

O contrato costura o ciclo entre comercial e operacional:

  • Propostas: Gerado automaticamente no aceite (cascata), vinculado pelo projeto_id
  • Técnica: Assinatura gera a OS automaticamente
  • Financeiro: Recebíveis vinculados ao contrato
Capítulo 10

OC nasce da cascata, gate financeiro e entrada de estoque

A Ordem de Compra (OC) nasce automaticamente da cascata do aceite da proposta. O fornecedor é selecionado via dropdown, a OC passa por um gate financeiro (Aguardando Liberação → Aprovada) e, ao ser entregue, registra a entrada no estoque.

Objetivo

Gerenciar ordens de compra, fornecedores e estoque, com OC automática da cascata, gate financeiro e entrada de estoque.

Onde fica na sidebar

Item "Compras" na barra lateral.

Abrir /compras

Passo a passo

1

OC automática da cascata

Quando o contrato é liberado/assinado, a OC é gerada automaticamente com snapshot dos equipamentos da proposta. Ela nasce no status "aguardando_liberacao".

2

Seleção de fornecedor

Na OC, selecione o fornecedor via dropdown (apenas fornecedores ativos do tenant). O fornecedor_nome é preenchido automaticamente.

3

Gate financeiro

A OC passa pelo gate financeiro: "Aguardando Liberação" → "Aprovada" (ou "Rejeitada"). Só o Financeiro/Admin pode aprovar. A função gateOrdemCompra valida o fluxo.

4

Confirmação e trânsito

Após aprovação, a OC vai para "confirmado" e depois "em_transito". O campo estoque_verificado indica se o estoque foi conferido.

5

Entrada de estoque

Quando a OC é marcada como "entregue", a entrada no estoque é registrada automaticamente (função registrarEntradaEstoque). O flag estoque_entrada_registrada garante idempotência — a entrada só acontece uma vez.

6

Cadastro de fornecedores

Na aba "Fornecedores", cadastre: razão social, CNPJ, contato, materiais fornecidos (módulos, inversores, estruturas) e observações.

Fluxo da OC

A OC percorre estados sequenciais com gate financeiro obrigatório:

aguardando_liberacaopendenteconfirmadoem_transitoentregue

Sincronização

A OC conecta propostas ao estoque:

  • Proposta/Contrato: OC gerada automaticamente com snapshot de equipamentos da proposta
  • Financeiro: Gate financeiro aprova antes da compra
  • Estoque: Entrada registrada automaticamente na entrega (idempotente)
  • Fornecedores: Dropdown de fornecedores ativos do tenant
Capítulo 11

Chat interno vinculado a projeto/OS/proposta

O módulo de Mensagens é o chat interno da equipe. As mensagens podem ser vinculadas a uma OS, projeto ou proposta, criando threads de equipe. Badges de não-lidas em tempo real mantêm todos sincronizados.

Objetivo

Comunicar internamente com threads vinculadas a entidades do ciclo (OS, projeto, proposta).

Onde fica na sidebar

Item "Mensagens" na barra lateral.

Abrir /mensagens

Passo a passo

1

Mensagem direta

Envie mensagens privadas entre membros da equipe. O remetente e destinatário veem a conversa.

2

Thread de equipe (visibilidade "equipe")

Marque a mensagem como visibilidade "equipe" para que toda a organização veja. Ideal para threads de OS/projeto/proposta.

3

Vincular a OS/Projeto/Proposta

Ao preencher os_id, projeto_id ou proposta_id, a mensagem fica vinculada à entidade. Acesse a OS/proposta e veja a thread no contexto.

4

Tipos de mensagem

Categorize: Geral, Cobrança, Falta de Material, Vistoria, NF Solicitada, Interno.

5

Badges de não-lidas

O badge no sidebar e no topbar mostra mensagens não-lidas em tempo real. A função marcarMensagensLidas atualiza o status via backend.

Sincronização

As mensagens conectam a equipe no contexto do ciclo:

  • OS: Thread de equipe vinculada à OS (visibilidade "equipe")
  • Proposta: Comentários internos vinculados à proposta
  • Projeto: Mensagens vinculadas ao projeto_id
  • Realtime: Badges de não-lidas atualizados em tempo real via subscrição
Capítulo 12

Comercial, Financeiro, Marketing e Exportação

O módulo de Relatórios consolida BI comercial, financeiro e marketing com visões departamentais, ranking de vendedores, previsão de faturamento e exportação para Excel.

Objetivo

Analisar funil, financeiro, origem de leads e exportar dados para Excel.

Onde fica na sidebar

Item "Relatórios" na barra lateral.

Abrir /relatorios

Visões disponíveis

1

BI Comercial

Funil de conversão, propostas por status, ranking de vendedores, conversão por origem do lead e previsão de faturamento.

2

BI Financeiro

DRE, fluxo de caixa projetado, margem de lucro por projeto, conciliação bancária com IA e métricas por projeto.

3

BI Marketing

Origem de leads (landing, indicação, anúncio, evento), ROI por canal de aquisição e conversão por origem.

4

Cockpit CEO

Visão executiva com paleta grafite/navy e detalhes dourados, tabelas densas tipo Power BI para o super-admin.

5

Exportação

Exporte qualquer relatório para Excel com um clique. A função exportarLancamentosCSV gera CSV estruturado.

Sincronização

Os relatórios cruzam dados de todos os módulos:

  • CRM: Funil, conversão e origem de leads
  • Financeiro: DRE, fluxo de caixa e margem por projeto
  • Marketing: ROI por canal e conversão por origem
  • Exportação: Excel/CSV para análise externa
Capítulo 13

10 abas, DRE, fluxo de caixa e motor contrato→lançamento

O Financeiro é o módulo mais completo da plataforma. São 10 abas que cobrem desde lançamentos manuais até DRE, fluxo de caixa projetado, balanço patrimonial, conciliação bancária com IA, régua de cobrança, métricas por projeto e pagamento a prestadores. O motor automático contrato→lançamento gera recebíveis no aceite.

Objetivo

Gerenciar toda a vida financeira do tenant: lançamentos, DRE, fluxo de caixa, balanço, conciliação, cobrança, margem e pagamentos.

Onde fica na sidebar

Item "Financeiro" na barra lateral.

Abrir /financeiro

As 10 abas do Financeiro

1

1. Lançamentos

CRUD de LancamentoFinanceiro (receita/despesa). Campos: tipo, categoria, valor, competência mês/ano, centro de custo, conta contábil.

2

2. DRE

Demonstração do Resultado do Exercício. Consolida receitas, deduções, custos e despesas por competência. Gráficos de evolução mensal.

3

3. Fluxo de Caixa Projetado

Projeção de recebimentos e pagamentos por período, com base nos lançamentos "a_receber" e "a_pagar" e nas parcelas do contrato.

4

4. Balanço Patrimonial

Ativos, passivos e patrimônio líquido. Inclui gestão de PatrimonioAtivo (veículos, equipamentos, imóveis).

5

5. Conciliação Bancária (IA)

A IA cruza lançamentos com extratos bancários, identificando discrepâncias e sugerindo matches.

6

6. Régua de Cobrança

Cobrança de cliente final via Asaas (boleto/PIX/cartão). Motor de juros/multa para parcelas vencidas. Régua SaaS controla o acesso do tenant.

7

7. Métricas por Projeto

Receita, custo e margem de lucro por projeto_id. Rastreabilidade financeira completa do ciclo Proposta→Contrato→OS→Recebível.

8

8. Margem de Lucro

Relatório de margem por projeto e por mês, com breakdown de custos (materiais, mão de obra, terceiros).

9

9. Relatório Mensal de Gestão

Consolidação mensal: receita, despesa, resultado, KPIs financeiros e comparativo com meses anteriores.

10

10. Faturamento & Despesas

Visão de faturamento realizado vs. previsto e controle de despesas fixas/variáveis por centro de custo.

Motor Contrato → Lançamento

O motor automático gera lançamentos financeiros a partir do contrato:

Proposta Aceita
Cascata Disparada
Contrato Criado
gerarLancamentosContrato
LancamentoFinanceiro (a_receber)
Parcelas Vinculadas
Baixa no Recebimento

Sincronização

O financeiro é o destino final do ciclo comercial:

  • Motor contrato→lançamento: Aceite da proposta → contrato → LancamentoFinanceiro automático (idempotente)
  • OS → Pagamento: Fechamento de OS com valor_servico gera LancamentoFinanceiro (a_pagar) para o prestador
  • DRE: Consolida receitas e despesas por competência
  • Fluxo de Caixa: Projeção baseada em a_receber + a_pagar + parcelas
  • Conciliação IA: Cruza lançamentos com extratos bancários
  • Régua SaaS: Controla acesso do tenant (bloqueio D+15)
Capítulo 14

Cadastro direto, níveis 0-7 e ID MS-XXXX imutável

O módulo de Usuários permite cadastrar membros diretamente (sem convite) ou via convite. Cada membro recebe um ID sequencial MS-XXXX imutável (ex: MS-0001). Os níveis de acesso RBAC vão de 0 (Super Admin) a 7 (Terceirizado). Toda alteração é registrada no log de auditoria.

Objetivo

Cadastrar membros, definir níveis de acesso (0-7), gerar IDs MS-XXXX imutáveis e manter log de auditoria.

Onde fica na sidebar

Item "Usuários" na barra lateral.

Abrir /usuarios

Passo a passo

1

Aba Usuários

Visão unificada: Cadastrados + Convidados + Usuários logados, sem duplicidade (merge por email).

2

Cadastro direto

O Admin Geral pode cadastrar membros diretamente: nome, e-mail, telefone, cargo, departamento, role. O membro recebe status "cadastrado_direto" e fica aguardando o 1º login.

3

ID MS-XXXX imutável

Ao cadastrar, o sistema gera um ID sequencial MS-XXXX (ex: MS-0001). Este ID é a chave de referência para TODOS os processos (propostas, OS, contratos, histórico). Nunca muda.

4

Níveis de acesso (0-7)

0=Super Admin Órbita, 1=Admin Geral, 2=Técnico Admin, 3=Gerente Vendas, 4=Vendedor, 5=Financeiro, 6=Operacional/Técnico, 7=Terceirizado. Os níveis controlam o acesso a cada módulo.

5

Merge no 1º login

Quando o membro faz o 1º login (via convite ou cadastro direto), o sistema faz o merge com o User de auth. O status muda para "ativo" e user_id é preenchido.

6

Log de auditoria

Toda alteração (criar, editar, ativar/desativar, excluir) é registrada em LogAuditoriaMembro com: código_membro, admin_id, ação, alterações (JSON) e timestamp.

7

Blindagem do backend

Toda edição de membros passa pela função gerenciarMembro (service role), que valida: nome do membro ≠ razão_social da organização, e impede rebaixamento do último Admin Geral (Nível 1).

Sincronização

Os usuários são governados por RBAC e auditoria:

  • RBAC: 8 níveis (0-7) controlam acesso a cada módulo e ação
  • MS-XXXX: ID imutável vincula o membro a propostas, OS e contratos
  • Auditoria: LogAuditoriaMembro registra toda alteração (quem, o quê, quando)
  • Backend: gerenciarMembro (service role) blinda contra corrupção de dados
Capítulo 15

Token obrigatório, Admin Geral, 7d e permissões antes do envio

O acesso ao tenant é permitido exclusivamente via fluxo de ConviteOrganizacao. Só o Admin Geral (Nível 1) pode convidar. O convite tem token, expira em 7 dias, e as permissões são definidas antes do envio (imutáveis após).

Objetivo

Convidar usuários para o tenant com token, expiração de 7d e permissões definidas antes do envio.

Onde fica na sidebar

Item "Convites" na barra lateral.

Abrir /convites

Passo a passo

1

Apenas Admin Geral convida

Só usuários com nível Admin Geral (1) podem gerar/enviar convites. Outros níveis não veem a opção.

2

Definir permissões antes do envio

Antes de enviar, o Admin escolhe: papel_rbac (ex: "Gerente Vendas"), role (ex: "gerente"). Estas permissões são IMUTÁVEIS após o envio.

3

Token e expiração

O sistema gera um convite com token único e data_expiracao = data_convite + 7 dias. O status começa como "pendente".

4

Envio do convite

O e-mail é enviado ao convidado com o link de acesso. O campo convidado_por registra quem enviou (trilha de auditoria).

5

1º login do convidado

Quando o convidado faz o 1º login, o convite é consumido (status "consumido"). O usuário é vinculado ao tenant com o papel definido no convite.

6

Expiração e cancelamento

Após 7 dias sem login, o convite expira (status "expirado"). O Admin pode cancelar convites pendentes (status "cancelado").

7

Reenvio

O Admin pode reenviar um convite, o que renova a data_expiracao (+7 dias) e atualiza o status para "pendente".

Regras de Segurança

O fluxo de convites é blindado:

pendenteconsumidoexpiradocancelado

Sincronização

O convite é a única porta de entrada no tenant:

  • Acesso: Exclusivamente via ConviteOrganizacao — sem cadastro direto de usuários
  • RBAC: Papel definido no convite é imutável após o envio
  • Segurança: Expiração 7d + token único + trilha de auditoria
  • Merge: 1º login → merge com User de auth → MembroOrg "ativo"
Capítulo 16

Dados da empresa, regime fiscal, BDI e logo white-label

O módulo de Configurações centraliza: dados da empresa, regime tributário (Simples Nacional, Lucro Presumido ou Lucro Real), alíquotas e BDI, e a logo white-label por tenant (persistida via função backend dedicada).

Objetivo

Configurar dados da empresa, regime fiscal, parâmetros BDI e logo white-label.

Onde fica na sidebar

Item "Configurações" na barra lateral.

Abrir /configuracoes

Passo a passo

1

Dados da empresa

Razão social, CNPJ, telefone, e-mail do responsável, endereço. Estes dados aparecem nas propostas e contratos.

2

Regime tributário

Escolha: Simples Nacional (DAS unificado), Lucro Presumido (PIS 0.65% + COFINS 3%) ou Lucro Real (não-cumulativo). As alíquotas são usadas no cálculo de propostas.

3

Parâmetros fiscais

Configure: ICMS %, PIS %, COFINS %, ISS %, IRPJ/CSLL %, margem de venda %, frete %, outros encargos %.

4

BDI e parâmetros comerciais

BDI Material %, BDI Serviço %, Comissão do vendedor %, Financeiro %, Desconto %. Estes parâmetros são exibidos no resumo da proposta antes dos dados fiscais.

5

Toggle fiscal/comercial

Dois toggles independentes: "ativo" (parâmetros fiscais) e "comerciais_ativos" (BDI/comissão). Permitem incluir ou não tributos no valor total.

6

Logo white-label

Upload da logo do tenant. Persistida via função backend salvarLogoOrganizacao (service role) para isolamento. A logo substitui a marca SolarOrbita em todo o app.

7

Painéis de configuração

Abas: Auditoria, Segurança, Funis, Notificações e Permissões — cada um com controles específicos para o Admin Geral.

Sincronização

As configurações alimentam todo o sistema:

  • Propostas: Regime fiscal e BDI usados no cálculo automático (snapshot imutável no envio)
  • White-label: Logo substitui a marca SolarOrbita em todo o app
  • Financeiro: Alíquotas usadas no DRE e nos lançamentos
  • Auditoria: Painel de auditoria registra mudanças de configuração
Capítulo 17

Tickets TKT-2026-XXXX, SLA automático e bidirecional bilíngue

O módulo de Suporte é o sistema de tickets bidirecional com SLA automático. Cada ticket recebe um código TKT-2026-XXXX. As prioridades definem o SLA (Urgente 4h, Alta 24h, Média 72h, Baixa 7d). A tradução é bidirecional e bilíngue: cliente escreve em EN/FR, equipe vê em PT-BR, e vice-versa.

Objetivo

Gerenciar tickets de suporte com SLA automático, prioridades e tradução bidirecional bilíngue.

Onde fica na sidebar

Item "Suporte" na barra lateral (visão da equipe) e "Painel de Suporte" para o super-admin.

Abrir /suporte

Passo a passo

1

Abrir ticket

Clique em "Novo Ticket". Informe: título, categoria (Financeiro, Técnico, Proposta, Acesso, Outro), prioridade (Urgente, Alta, Média, Baixa), origem (Interno/Cliente) e descrição.

2

Código TKT-2026-XXXX

Ao criar, o sistema gera automaticamente o código sequencial TKT-2026-XXXX (ex: TKT-2026-0001). Imutável e vinculado ao tenant.

3

SLA automático

O SLA é calculado na criação: Urgente 4h, Alta 24h, Média 72h, Baixa 7d. O campo sla_prazo armazena o deadline. A função verificarSlaTickets marca sla_estourado=true quando o prazo vence.

4

Atribuir responsável

Na conversa do ticket, atribua um responsável pelo atendimento. O status muda para "Em Atendimento".

5

Thread de mensagens

A conversa é uma thread de MensagemTicket. Equipe e cliente trocam mensagens. Badge de não-lidas em tempo real.

6

Tradução bidirecional bilíngue

Quando o cliente escreve em EN/FR, a mensagem é traduzida para PT-BR (mensagem_traduzida_pt) para a equipe. Quando a equipe responde em PT-BR, a mensagem é traduzida para o idioma do cliente (mensagem_traduzida). Badge "Tradução PT-BR" aparece na thread.

7

Resolver e fechar

Mude o status para "Resolvido" ou "Fechado". A data_resolucao é registrada e o tempo médio de resolução é calculado nos KPIs.

SLA por Prioridade

O SLA é calculado automaticamente na criação do ticket:

Urgente 4hAlta 24hMédia 72hBaixa 7d

Sincronização

O suporte integra tenant, SLA e i18n:

  • SLA: verificarSlaTickets marca tickets estourados (roda automaticamente ao abrir a tela)
  • i18n: Tradução bidirecional: cliente EN/FR ↔ equipe PT-BR
  • Health Score: Tickets com SLA estourado afetam o health score do tenant
  • Super-Admin: Painel de Suporte global consolida tickets de todos os tenants
Capítulo 19

Cada cliente tem seu próprio catálogo

No modelo SaaS multi-tenant, cada cliente começa com o catálogo VAZIO e cadastra os próprios produtos. O catálogo é isolado por organização — nenhum tenant vê os produtos de outro.

Objetivo

Cadastrar produtos manualmente ou via importador PDF com IA e supervisão técnica obrigatória.

Onde fica na sidebar

Item "Depto. Técnico" → "Catálogo" ou "Catálogo de Equipamentos".

Abrir /departamento-tecnico/catalogo

Passo a passo

1

Catálogo vazio no onboarding

Cada tenant novo começa com catálogo vazio. O Admin Geral ou técnico cadastra os produtos da sua empresa.

2

Cadastro manual

Acesse "Depto. Técnico" → "Catálogo" e clique em "Novo Produto". Preencha: nome, marca, modelo, potência, preço, especificações técnicas.

3

Categorias

Cadastre módulos, inversores, baterias, acessórios, fixações, projetos e fretes — cada um com seus campos específicos.

4

Importador via PDF (IA)

Envie um PDF do catálogo do fabricante. A IA extrai os produtos automaticamente (marca, modelo, potência, preço).

5

Supervisão técnica obrigatória

Após a extração, o técnico REVISA os dados extraídos antes de gravar no banco. Nenhum produto entra no catálogo sem revisão humana.

6

Catálogo multi-tenant

O catálogo é isolado por organizacao_id. As propostas só usam produtos do catálogo do próprio tenant.

Sincronização

O catálogo alimenta as propostas e é isolado por tenant:

  • Propostas: As propostas selecionam equipamentos do catálogo da própria organização
  • Multi-tenant: Catálogo isolado por organizacao_id — nenhum tenant vê produtos de outro
  • Importação PDF: IA extrai + técnico revisa = dados confiáveis no catálogo
Capítulo 20

PT-BR/EN-US, detecção por navegador, câmbio travado e Stripe/Asaas por país

A plataforma é bilíngue (PT-BR/EN-US). O idioma é detectado automaticamente pelo navegador. O câmbio é travado no envio da proposta com margem de +3%. O gateway de pagamento varia por país: Asaas no Brasil, Stripe no exterior.

Objetivo

Explicar o sistema de internacionalização: idiomas, detecção, câmbio travado e gateways por país.

Onde fica

Seletor de país no header. Configurações de moeda em "Configurações".

Abrir /configuracoes

Passo a passo

1

Detecção por navegador

Ao acessar a plataforma, o sistema detecta o idioma do navegador. Se for PT-BR, carrega em português; caso contrário, em inglês (EN-US). O usuário pode trocar manualmente via seletor de país.

2

Seletor de país

No header, o seletor de país mostra bandeira, nome do país e moeda. Ao trocar, o idioma e a moeda mudam simultaneamente.

3

Bilíngue completo

Toda a interface, manual, propostas e tickets de suporte suportam PT-BR e EN-US. O manual é exportável em PDF no idioma selecionado.

4

Câmbio travado na proposta

Ao enviar a proposta ao cliente, a cotação é TRAVADA (cotacao_travada_proposta) com margem de +3%. O cliente vê o preço na moeda escolhida, estável até o aceite. O valor BRL é preservado no banco.

5

Adaptação da ficha cadastral

Quando o país muda (ex: en-US), a ficha cadastral do cliente se adapta ao padrão do país (campos, formatação, moeda, documentos).

6

Gateways por país

Brasil: cobrança via Asaas (boleto, PIX, cartão). Exterior: cobrança via Stripe (cartão, subscriptions). A escolha é automática baseada no país do tenant.

7

Governança por país

O snapshot de governança comercial (lei de proteção de dados, órgão regulador, regras de NF) é aplicado no cadastro do tenant conforme o país.

Sincronização

A internacionalização afeta todo o sistema:

  • Idioma: PT-BR/EN-US com detecção por navegador e troca manual
  • Moeda: Câmbio travado +3% no envio da proposta (BRL preservado)
  • Gateway: Asaas (BR) / Stripe (exterior) — automático por país
  • Suporte: Tradução bidirecional bilíngue em tickets
  • Manual: Exportável em PDF no idioma selecionado
Capítulo 22

Transparência total na cobrança SaaS

A régua de cobrança controla o acesso do tenant à plataforma. Trial de 14 dias sem cartão, notificações de vencimento e bloqueio automático em D+15 — tudo transparente para o cliente.

Objetivo

Explicar o trial de 14 dias e o bloqueio automático em D+15 da assinatura SaaS.

Onde fica

Política de cobrança acessível via landing page. A régua roda automaticamente no backend.

Abrir /politica-cobranca

Passo a passo

1

Trial de 14 dias

Ao se cadastrar, o tenant entra em Trial por 14 dias. Sem cartão de crédito. Acesso completo a todos os módulos.

2

Notificações de vencimento

O sistema envia notificações D+3, D+7 e D+10 após o vencimento do trial, lembrando o cliente de assinar o plano.

3

Bloqueio em D+15

Se o pagamento não for confirmado, o tenant é bloqueado automaticamente 15 dias após o vencimento (D+15). O acesso à plataforma é suspenso.

4

Pagamento libera acesso

Quando o pagamento da assinatura é confirmado, o tenant é reativado e o acesso é restaurado.

5

Pilotos isentos

Tenants com is_piloto=true são isentos de cobrança e não entram na régua de bloqueio.

Sincronização

A régua de cobrança controla o acesso de todos os tenants:

  • Organização: Muda status_assinatura: Trial → Ativa → Inadimplente → Bloqueada
  • Asaas: Cobrança automática via gateway de pagamentos (BR)
  • Acesso: Bloqueio em D+15 suspende o acesso de todos os usuários do tenant
  • Health Score: Atrasos de pagamento reduzem o health score
Síntese

A jornada completa, costurada pelo projeto_id

Do primeiro contato ao pagamento final, todo o ciclo é costurado por um único identificador: o projeto_id. Ele garante que proposta, contrato, OS, OC, estoque e recebíveis permaneçam sincronizados do início ao fim.

Fluxo Sincronizado

A jornada completa do cliente na plataforma — cada etapa conectada, com gates obrigatórios:

1Cliente (CRM)
🔒Proposta
🔒Validação Técnica
4Aceite → Cascata
5Contrato (Conferência)
6OS (5 Processos)
7OC → Estoque
8Instalação + Vistoria
9Homologação
10Recebível Financeiro

Costura pelo projeto_id

Todo o ciclo é costurado por um único identificador — o projeto_id. Ele garante que proposta, contrato, OS e recebíveis permaneçam sincronizados do início ao fim, permitindo rastreabilidade total em qualquer etapa do projeto.

Capítulo Final

Navegação e exportação PDF

Este manual é interativo e bilíngue (PT-BR/EN-US). Navegue pelos capítulos na barra lateral, troque o idioma no seletor de país, e exporte o PDF completo no idioma selecionado.

Objetivo

Ensinar a navegar, trocar idioma e exportar o manual em PDF.

Onde fica

Item "Manual" na barra lateral.

Abrir /manual

Passo a passo

1

Navegação por capítulos

Na barra lateral esquerda (desktop) ou no seletor superior (mobile), clique em qualquer capítulo para navegar. Os capítulos são numerados e seguem a ordem do ciclo de negócio.

2

Trocar idioma

Use o seletor de país no header para trocar entre PT-BR e EN-US. Todo o conteúdo do manual muda instantaneamente, incluindo títulos, passos e descrições.

3

Capítulos do super-admin

Capítulos marcados com "Super-Admin" (Debug de Admin, Painel Global) só aparecem para usuários com role super_admin.

4

Exportar PDF

Clique no botão "Exportar PDF" no canto superior direito. O sistema gera um PDF completo (A4) com todos os capítulos no idioma atual. O arquivo é nomeado Manual_SolarOrbita_PT.pdf ou Manual_SolarOrbita_EN.pdf.

5

Links internos

Cada capítulo tem um botão "Abrir" que leva direto ao módulo correspondente no sistema, para você praticar enquanto lê.

6

Diagramas de fluxo

Alguns capítulos incluem mini-diagramas e fluxos visuais que mostram a jornada e a sincronização entre módulos.

Sincronização

O manual é parte do ecossistema SolarOrbita:

  • Bilíngue: PT-BR e EN-US completos, sincronizados com o estado real do app
  • PDF: Exportação A4 no idioma selecionado, com capa e todos os capítulos
  • Links: Botões "Abrir" levam ao módulo correspondente no sistema
  • Super-Admin: Capítulos exclusivos visíveis apenas para super-admin