O que tratamos
Oito categorias dos seus dados tocam o Finkavo: • Conta — email + hash de palavra-passe (Better-Auth) ou identidade OAuth ligada (Google, GitHub). • Perfil — residência, situação laboral, regime, data de chegada, códigos CAE / CIRS, membros do agregado familiar, contexto fiscal que introduz. • Documentos — ficheiros no Vault (PDFs, imagens), cartas reencaminhadas para o seu endereço de inbox, e faturas que acompanha via Invoice Ingest. • Conversas — perguntas + respostas do Ask, fontes citadas e reproduções. • Calendário — eventos de prazos, apenas se ativar a sincronização Google ou Apple/iCloud. • Acesso ao Portal das Finanças — só se ligar a AT; cifrado, usado para ler o que o seu perfil precisa, e nunca para entregar sem a sua confirmação. • Dados de corretora/investimento — apenas se usar a funcionalidade de importação de corretora (Definições → Investimentos); o simulador separado de mais-valias de corretora em /tools/broker-capital-gains nunca nos envia isto. • Pagamentos — Stripe customer id + estado da subscrição (nunca vemos números de cartão). • Analytics — distinct-id mascarado + eventos de produto (cliques, visitas). Emails e texto livre nunca são enviados para analytics.
Subcontratantes
Todos os terceiros por onde os dados passam, ordenados pelo quanto tocam nos seus dados. Todos os fornecedores UE estão dentro da União; os fornecedores alojados nos EUA estão cobertos pelo EU-US Data Privacy Framework e, quando aplicável, por Cláusulas Contratuais-Tipo.
- Objetivo
- Alojamento da app + edge compute
- Dados tocados
- Todos os pedidos passam pelo Worker
- Retenção
- Logs de acesso 24h
- Objetivo
- Armazenamento cifrado de documentos (Vault + cartas recebidas)
- Dados tocados
- PDFs, imagens, cifrados em repouso
- Retenção
- Até eliminar o documento ou a conta
- Objetivo
- Base de dados principal
- Dados tocados
- Conta, perfil, conversas, histórico do Ask, subscrições
- Retenção
- Até eliminação da conta
- Objetivo
- Embeddings bge-m3 + respostas leves
- Dados tocados
- Texto da pergunta, texto dos chunks na consulta
- Retenção
- Não retido após a resposta
- Objetivo
- Respostas LLM maiores para Ask e análise de cartas
- Dados tocados
- Texto da pergunta, excertos retornados, texto de documentos carregados (quando ativado)
- Retenção
- Não retido após a resposta (default sem treino)
- Objetivo
- Email transacional (verificação, reset, lista de espera, lembretes)
- Dados tocados
- Endereço + corpo da mensagem
- Retenção
- Logs de envio 30 dias na Resend
- Objetivo
- Pagamentos e ciclo da subscrição
- Dados tocados
- Stripe customer id, estado do plano, email de faturação
- Retenção
- Registos por política da Stripe + lei contabilística portuguesa
- Objetivo
- Analytics de produto (visitas, cliques)
- Dados tocados
- Distinct-id mascarado, nome do evento, path. Email + texto livre nunca enviados.
- Retenção
- 12 meses rolantes
- Objetivo
- Autenticação Google OAuth + Google Calendar sync (opt-in)
- Dados tocados
- Email + profile id no sign-in; eventos de calendário quando sync ativo
- Retenção
- Refresh tokens OAuth até desligar
- Objetivo
- Sincronização do Calendário iCloud via CalDAV (opt-in)
- Dados tocados
- Email Apple ID + palavra-passe específica de app (cifrada); eventos de calendário de prazos
- Retenção
- Credencial cifrada até desligar
- Objetivo
- Autenticação GitHub OAuth (opt-in)
- Dados tocados
- Id de utilizador GitHub, email principal verificado, nome de apresentação
- Retenção
- Até desligar ou eliminar a conta
- Objetivo
- Dispara os nossos crons agendados (refresh de corpus, lembretes)
- Dados tocados
- Sem dados de utilizador — apenas um POST para /api/cron com segredo partilhado
- Retenção
- Sem dados de utilizador
- Objetivo
- Pesquisa web de fallback quando o corpus não cobre um tópico
- Dados tocados
- Apenas o texto da pesquisa
- Retenção
- Não retido conforme termos da Tavily API
Processamento por IA
Ask, análise de cartas, extração do Invoice Ingest, e extração de documentos do Vault usam fornecedores de LLM. Quando usa estas funcionalidades: • O texto da pergunta ou documento é enviado para Cloudflare Workers AI (embeddings, edge) e para OpenAI (respostas maiores e extração por visão, EUA). • O conteúdo dos documentos do Vault só sai do R2 quando escolhe extração no servidor. Se ativar 'Cifrar ponta-a-ponta com a minha palavra-passe' no upload, esse documento nunca é decifrado no servidor — a extração por IA fica desativada para ele. • Faturas que carrega via Invoice Ingest como PDF ou imagem passam pela mesma extração por visão da OpenAI que os documentos do Vault; faturas coladas como CSV são processadas sem qualquer chamada de IA. • O simulador de mais-valias de corretora em /tools/broker-capital-gains é a única exceção — processa CSVs inteiramente no seu navegador e nunca chama qualquer fornecedor de IA nem envia dados para os servidores da Finkavo. • Prompts, excertos retornados e respostas são guardados na nossa base de dados (CockroachDB) para lhe mostrarmos o recibo, permitirmos reprodução e melhorarmos a qualidade da retrieval. Não são partilhados além do fornecedor do modelo. • Não treinamos modelos com os seus dados. OpenAI e Cloudflare Workers AI oferecem por defeito não-treino no tráfego API; confiamos nesses defaults.
Cifra e eliminação
Dados em repouso: tudo em R2 e CockroachDB fica em volumes cifrados. Documentos do Vault são adicionalmente cifrados com uma chave por documento embrulhada por uma chave de encriptação de chaves (KEK). Se ativar o modo ponta-a-ponta com uma palavra-passe, só o seu dispositivo consegue desembrulhar a chave — o Finkavo não consegue decifrar esses documentos. Dados em trânsito: TLS 1.2+ em todas as ligações. Eliminação: 'Eliminar a minha conta' em /app/settings remove todas as linhas que temos sobre si em CockroachDB e todos os objetos no R2 associados ao seu userId. A eliminação é transacional — se qualquer objeto R2 falhar, as linhas ficam para a nova tentativa terminar (corrigido a 2026-07-17). Linhas da lista de espera são separadas; se se inscreveu antes de aderir precisam de email separado para hello@finkavo.com.
Reportar uma vulnerabilidade
Se encontrar algo que pareça um problema de segurança, escreva para security@finkavo.com. Inclua detalhe suficiente para reproduzir e o canal de contacto preferido; confirmamos cada report em 72h e coordenamos o timing de divulgação consigo antes de publicar a correção. Ainda não temos programa pago de recompensas, mas cada report válido recebe crédito público nesta página (com o seu consentimento).
security@finkavo.com →Responsável e registo de alterações
Esta página é da responsabilidade do fundador (opefyre@gmail.com) e revista trimestralmente ou sempre que há uma alteração material na forma como os dados são tratados. Alterações materiais ficam registadas como commits no repositório do Finkavo e resumidas no topo desta página. Alterações substanciais desencadeiam email a todos os utilizadores ativos.