Chi Sublime · Reservas, POS e faturação certificada · 2026
Levar toda a operação de um negócio de serviços para uma única plataforma.
Plataforma de gestão para um salão de cabeleireiro e estética em Cascais: site, reservas online, área de cliente, ponto de venda, caixa e faturação certificada.
- Produto
- Reservas
- Faturação
- Cliente
- Chi Sublime, Cascais
- Estado
- Em produção, com faturação certificada ativa.
- 3
- passos para reservar online
- 35
- serviços sincronizados com o Moloni

Reserva online em três passos — serviço, profissional e horário, confirmação.
Contexto
Um salão em Cascais geria marcações por telefone e WhatsApp, recebia pagamentos sem faturação integrada e não tinha visibilidade sobre a receita por profissional. O dono queria uma única aplicação para tudo.
O problema
Reservas online têm de respeitar horários da equipa, duração dos serviços e impedir dupla marcação — mesmo com dois clientes a reservar o mesmo slot ao mesmo tempo.
Em Portugal, cobrar significa emitir fatura certificada e comunicá-la à Autoridade Tributária. Isso não pode ser "um botão que às vezes falha".
O meu papel
Único developer, incluindo a configuração da conta Moloni e a articulação com o contabilista do cliente sobre regime de IVA e séries de documentos.
Restrições
- Dupla marcação impossível, mesmo com dois clientes a reservar o mesmo slot ao mesmo tempo.
- Faturação certificada em Portugal: emissão e comunicação à AT não podem falhar em silêncio.
- Um único dono a operar tudo — sem equipa técnica, sem contas por profissional.
- Regime de IVA e séries de documentos definidos com o contabilista do cliente.
Solução
Aplicação Next.js 16 com três áreas: site público com fluxo de reserva em três passos, área de cliente (perfil, reservas, segurança) e painel de administração (clientes, serviços, equipa, agenda, POS, caixa, receitas e despesas, relatórios).
Motor de disponibilidade com índice único anti-dupla-marcação. Faturação através de uma abstração com dois providers — Mock para desenvolvimento e Moloni em produção — com 35 serviços sincronizados como artigos e faturas-recibo emitidas e comunicadas à AT.


O que foi construído
- Reserva online com horários Ter–Sáb, políticas de antecedência e cancelamento com link por email.
- POS/checkout com meios de pagamento múltiplos, NIF opcional do cliente e emissão de fatura-recibo no ato.
- Fecho de caixa, despesas recorrentes por cron, relatórios financeiro, de IVA, por profissional e por cliente, com PDF.
- Emails com React Email + Resend (confirmação, lembretes, recuperação de password).
- Soft-delete em tudo o que tem histórico; contrato uniforme ActionResult nas server actions; valores em cêntimos.
- i18n PT/EN por cookie, páginas legais RGPD, Search Console.
Decisões-chave
Faturação atrás de uma interface
O código de negócio fala com um InvoiceProvider. O Mock permite desenvolver e testar sem tocar na AT; o Moloni é ligado por configuração. Dev e produção partilham a mesma empresa Moloni, por isso o sync corre sempre com a base de dados certa.
Profissionais sem conta
Só existem dois papéis, cliente e administrador. A equipa são registos geridos pelo dono. Menos superfície de segurança, menos onboarding, e é como o salão funciona na realidade.
Resultado
Reservas online, agenda e faturação certificada a funcionar em produção, com faturas-recibo reais comunicadas à AT.
O que mudaria
Ter um provider Mock de faturação desde o início permitiu desenvolver semanas sem tocar na AT. Repetiria em qualquer integração fiscal.
Numa segunda iteração adicionaria lembretes por SMS além de email: é o canal que os clientes do salão realmente leem.
Stack
Next.js 16 · TypeScript · MongoDB · NextAuth v5 · Moloni API · React Email · Resend · React Hook Form · Zod · @react-pdf/renderer · Vercel
