Visão Geral de Funcionalidades
Bem-vindo à documentação de funcionalidades da Pororoca, uma plataforma SaaS ERP e CRM robusta projetada especificamente para o gerenciamento de escolas de esportes náuticos (como surf, kitesurf, stand-up paddle, canoa havaiana, etc.).
Este documento apresenta uma visão consolidada de todos os módulos e funcionalidades disponíveis no sistema, servindo como base conceitual para o desenvolvimento das páginas de ajuda e tutoriais do Docusaurus.
1. Módulos Principais
A. Multi-Tenant e Configurações da Escola (Settings)
- Isolamento de Dados: Cada escola (tenant) possui isolamento completo e lógico de seus dados operacionais e financeiros.
- Personalização: Nome da escola, e-mail de envio institucional e preferências gerais.
- Provedores de Comunicação:
- Configuração de credenciais de e-mail (AWS SES, Brevo ou Dummy).
- Conexão via API do WhatsApp para disparos diretos e instantâneos.

B. Gestão de Usuários e Controle de Acesso (Users & Auth)
O sistema controla os níveis de acesso de acordo com perfis (roles) predefinidos:
- SUPER_ADMIN / ADMIN: Acesso total ao faturamento, relatórios de DRE, despesas, comissões de instrutores e parâmetros do sistema.
- RECEPTIONIST (Recepção): Cadastro de alunos, agendamentos na agenda, operações no PDV e emissão de faturas (sem acesso a relatórios gerenciais e DRE).
- INSTRUCTOR (Instrutores): Visualização de sua própria agenda de aulas e acompanhamento de sua folha de comissões individual.
- STUDENT (Alunos): Acesso ao Portal do Aluno para ver carteiras de créditos e presença em aulas.

C. Gerenciamento de créditos
- Carteira Digital de Créditos:
- Créditos de Aula (
CLASS): Saldo de aulas disponíveis obtido após a compra de pacotes. - Créditos Financeiros (
FINANCIAL): Saldo financeiro em dinheiro na carteira gerado por sobras de pagamento (troco) ou estornos parciais.
- Créditos de Aula (
- Ledger de Auditoria: Histórico transparente de todas as inserções e consumos de créditos de aula e de saldo financeiro.


D. Agenda e Calendário de Aulas (Class Scheduling)
- Calendário Interativo: Visualização e manipulação ágil de aulas por dia, semana ou mês.
- Agendamentos de Grupo: Cadastro de aulas vinculando modalidade, idioma de instrução, instrutor responsável e múltiplos alunos de uma só vez.
- Sistema Anti-Conflito: Validação em tempo real que impede o agendamento em horários conflitantes de:
- Um mesmo instrutor.
- Um mesmo aluno.
- Equipamentos (como pranchas ou embarcações) contratados para a aula.
- Equipamentos Contratados: Vínculo e inventário de equipamentos alocados para uso específico dos alunos durante a aula.

E. Catálogo de Produtos e Controle de Estoque (Products & Inventory)
- Tipos de Produtos:
CONSUMPTION: Itens físicos de consumo da loja (camisetas, parafina, água, chaveiros, etc.).PACKAGE: Pacotes de aulas que concedem automaticamente um número definido de créditos (creditsGranted) de aula para o aluno após o pagamento.
- Controle de Estoque: Baixa automática de itens de consumo vendidos pelo PDV rápido e reposição em caso de cancelamento.

F. PDV Financeiro, Caixa e Pedidos (Billing & Orders)
-
PDV Rápido (
POS): Caixa rápido para registro de vendas diretas de produtos físicos de consumo com baixa instantânea de estoque. -
Gestão de Pedidos e Checkout (
Orders):- Emissão de faturas estruturadas e controle de status (
PENDING,PARTIAL,PAID,CANCELLED). - Abate inteligente de saldo: O valor recebido liquida primeiro os produtos físicos da loja e, em seguida, divide o sinal remanescente entre as matrículas de aula e aluguéis.
- Uso de Créditos: Liquidação de aulas utilizando os créditos de aula (
CLASS) do aluno ou saldo financeiro em carteira (FINANCIAL). - Estorno Automatizado: Ao reabrir ou cancelar um pedido pago, o sistema estorna automaticamente os créditos de aula utilizados de volta para o aluno e devolve em carteira o saldo financeiro consumido na transação original, prevenindo fraudes.


- Emissão de faturas estruturadas e controle de status (
G. Aluguel de Equipamentos (Bookings)
- Inventário Geral: Cadastro e controle de conservação dos equipamentos da escola (pranchas, roupas de borracha, etc.).
- Aluguel Independente: Locações de equipamentos avulsas, com controle de data/hora de retirada e devolução, integradas ao faturamento do pedido.

H. Controle de Despesas (Expenses)
- Fluxo de Saídas: Lançamento de despesas operacionais da escola (aluguel, contas de consumo, publicidade, manutenção de equipamentos) categorizadas por tipo e monitoramento do status de pagamento.

I. Comissões de Instrutores (Commissions)
- Cálculo de Comissão: Lançamento automático de comissões para o instrutor encarregado assim que o pagamento da respectiva aula ou serviço for quitado no PDV.
- Cancelamento Inteligente: Caso um agendamento seja cancelado ou a fatura seja estornada, a comissão gerada é invalidada na folha de pagamentos do instrutor.


J. DRE Financeiro (Financial Dashboard)
- Demonstrativo Gerencial: Cruzamento automático de Receitas (vendas de pacotes, produtos e aluguéis), Despesas Operacionais e Comissões pagas para gerar um relatório consolidado de lucro/prejuízo líquido no período especificado.


K. Previsão do Clima e Marés (Aquatic Conditions)
- Condições Aquáticas: Widget integrado com consumo de APIs de meteorologia que traz o clima, rajadas de vento e um gráfico representativo da curva de horários das marés altas e baixas.


L. Portal do Aluno (Student Portal)
-
Interface Otimizada (Mobile-First):
- Painel Principal: Visualização dos próximos agendamentos, créditos ativos na carteira e clima local.
- Minhas Aulas: Histórico de aulas realizadas, presença e agendamentos futuros.
- Financeiro: Extrato da carteira e de faturas pagas.
- Perfil: Alteração rápida de dados cadastrais.

2. Lógica Automática de Notificações (Notificações de Grupo & Instrutor)
A Pororoca envia e-mails e mensagens de WhatsApp de forma proativa para manter todos os agentes informados sobre as movimentações na escola.
Para Alunos
- Novo Agendamento (
CLASS_SCHEDULED): Enviado a cada aluno agendado na aula (incluindo em grupo) informando a modalidade, data, hora e instrutor. - Alteração de Aula (
CLASS_UPDATED): Notifica o aluno se houver mudança de horário ou instrutor na sua aula atual. - Cancelamento de Aula (
CLASS_CANCELLED): Informa ao aluno que a aula ou matrícula individual foi suspensa e que seus créditos foram estornados. - Lembrete de Aula (
CLASS_STARTING_SOON): Disparo de lembrete automático 24 horas antes do início da aula. - Financeiro: Alertas de confirmação de pagamento (
PAYMENT_RECEIVED) e cobrança de faturas pendentes (PAYMENT_REMINDER). - Boas-vindas (
PASSWORD_RESET): Link enviado para definição de senha no primeiro cadastro.
Para Instrutores
- Nova Aula Atribuída (
INSTRUCTOR_CLASS_SCHEDULED): Notifica o instrutor sobre a nova aula sob sua responsabilidade, exibindo a lista dos alunos matriculados. - Alterações na Grade (
INSTRUCTOR_CLASS_UPDATED): Disparado quando a aula do instrutor tem o horário alterado ou quando alunos são adicionados/removidos da lista de presença. - Aula Cancelada (
INSTRUCTOR_CLASS_CANCELLED): Alerta o instrutor que a aula foi cancelada pela escola ou que ele foi removido da escala daquele horário.