Arquitetura & Engenharia

Ambra: Arquitetura de Plataforma SaaS para Gestão Educacional

Documentação técnica sobre a implementação de isolamento de dados, gestão financeira e fluxos operacionais.

Visão Geral

O Ambra é uma solução para gestão operacional e financeira escolar. O sistema integra um PDV nutricional de baixa latência a um módulo financeiro, permitindo controle de saldo, hábitos alimentares e conciliação de pagamentos em uma interface unificada.

Stack Tecnológica

Construído sobre uma base TypeScript, utilizamos NestJS para o backend modular, Next.js para interfaces administrativas de alta performance e Expo (React Native) para a experiência mobile híbrida. O banco de dados PostgreSQL é blindado via Row Level Security (RLS).

Arquitetura & Multi-tenancy

Arquitetura baseada em Monólito Modular com isolamento de dados via PostgreSQL Row Level Security (RLS). A estratégia garante a privacidade entre diferentes instituições em uma única base de dados, aplicando políticas de acesso nativas no banco de dados.

Conceito PostgreSQL RLS
CREATE POLICY school_isolation_policy ON transactions
USING (school_id = current_setting('app.id')::uuid);

Gestão de Transações e Consistência

Implementação de transações atômicas para garantir a integridade dos saldos financeiros. Utilizamos níveis de isolamento 'Serializable' e controle de concorrência via Optimistic Locking para prevenir inconsistências em ambientes de uso simultâneo.

Atomic Transactions
await prisma.$transaction(async (tx) => {
  const wallet = await tx.wallet.update({
    where: { id, version },
    data: { balance: { dec: amount }, version: { inc: 1 } }
  });
}, { isolationLevel: 'Serializable' });

Fluxo de Pagamentos

Integração com gateways de pagamento via webhooks idempotentes. O sistema gerencia recargas em tempo real com conciliação automática para garantir a disponibilidade imediata do saldo.

Rastreabilidade e Segurança

Implementação de logs de auditoria para cada mutação de estado no sistema, permitindo a rastreabilidade completa de operações financeiras. Além do isolamento via RLS, o sistema utiliza interceptors globais para monitoramento de ações.

Deploy e Monitoramento

Pipeline de CI/CD automatizado com deploy via Railway (Backend) e Cloudflare (Frontend). Monitoramento de erros em tempo real via Sentry para garantir a estabilidade da aplicação.