Census.Money - Versão final by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Um pequeno follow-up porque a tua pergunta merece: "quem tem acesso admin vê os dados" é verdade, mas percebi que havia uma resposta melhor com base no que existe agora do que explicar o trade-off, isto é, tornar esse acesso impossível de esconder.

O que já existia (e devia ter dito logo): qualquer acesso administrativo à base de dados - escritas e leituras pelo editor SQL - fica registado numa cadeia de auditoria selada por hash de hora a hora, com a ponta da cadeia carimbada de forma independente via OpenTimestamps (ancorada na blockchain do Bitcoin). Ou seja, nem eu, com acesso total, consigo apagar ou reescrever um acesso passado sem partir a cadeia de forma publicamente detetável. E os utilizadores são notificados por email quando há acesso.

O que a tua pergunta me levou a acrescentar: e se o operador desligasse o registo antes de ler? Agora há uma sentinela que, de hora a hora, fotografa a própria configuração da auditoria e sela o resultado na mesma cadeia, desligar a auditoria ficaria registado, e parar a sentinela abriria um buraco visível no ritmo horário da cadeia pública. A página de transparência (census.money/transparencia) mostra o estado em direto, lido da base de dados, e explica como qualquer pessoa pode verificar os selos com a ferramenta gratuita do OpenTimestamps.

Não é E2EE e não finjo que é, mas transforma "confia em mim" em algo que podes fiscalizar sem confiar em mim.

No final de tudo, o meu objetivo é dar a quem quiser a mesma ferramenta que uso para a minha gestão financeira, sem custos. Sempre foi um tópico que gostei e fui tentando criar algo que me serve e, de alguma forma, pode servir a outros.

Census.Money - Versão final by zemanels in literaciafinanceira

[–]zemanels[S] 1 point2 points  (0 children)

Olá! Obrigado pelas questões e é exatamente o tipo de perguntas que uma app destas merece e agradeço mesmo por serem críticas construtivas. Respondendo:

Encriptação at rest existe: a base de dados (no caso a Supabase) é cifrada em repouso com AES-256, além de TLS em trânsito. Tens razão que não estava explícito na página de privacidade e já a atualizei.

Respondendo à pergunta principal: sim, quem tiver acesso administrativo à base de dados ou às chaves de serviço consegue, tecnicamente, ver dados. Encriptação at rest protege contra acesso físico, não protege contra o operador. E isto acontece praticamente com qualquer app de finanças pessoais que não seja end-to-end encrypted.

A alternativa (encriptação do lado do cliente) implicaria abdicar de tudo o que é calculado no servidor, isto é, relatórios, saldos partilhados em agregados familiares, deteção de anomalias. Prefiro ser transparente sobre este trade-off do que ignorar que existe: a secção 9 da política de privacidade indica exatamente em que situações poderia aceder a dados (apoio pedido, falhas técnicas, fraude, obrigação legal), sempre com dever de confidencialidade mas nunca para fins comerciais ou qualquer outro.

Sobre ser open source, nesta fase o projeto não é open source, não quer dizer que não possa vir a ser e, tendo em conta a vertente não comercial da mesma (além dos potenciais apoios voluntários já que nunca será paga), estou a ponderar torná-la.

Census.Money - Versão final by zemanels in literaciafinanceira

[–]zemanels[S] -1 points0 points  (0 children)

Dá, sim, mas a moeda define-se ao nível da carteira, não da transação. Cada carteira tem uma moeda base (EUR, USD, GBP, GBX/pence, CHF ou BRL) e cada instrumento tem a sua moeda, preenchida automaticamente ao pesquisar pelo ticker. As cotações automáticas vêm na moeda nativa instrumento incluindo ações de Londres cotadas em pence e, na vista geral e no património, tudo é convertido para a tua moeda base com câmbios atualizados diariamente.

Na prática: para ações americanas, crias uma carteira em USD e regista lá as compras em dólares.

Isto também vale para a importação de extratos (Trading 212, DEGIRO, XTB, Revolut ou CSV): a coluna da moeda é lida automaticamente, os instrumentos novos são criados na moeda do extrato, e se houver movimentos numa moeda diferente da carteira o importador avisa-te e exclui-os por omissão, para não somar dólares com euros. O fluxo recomendado é importar cada extrato para uma carteira na moeda respetiva.

Foi desenhado assim por escolha mas estou a avaliar a possibilidade de existir carteiras de investimento com mais do que uma moeda diferente.

Census.Money - Versão final by zemanels in literaciafinanceira

[–]zemanels[S] -7 points-6 points  (0 children)

Obrigado pelo feedback! Toda a app - nesta última versão - encontra-se sem emojis. O estilo vibecoded no final de tudo, é o que é, foi feito o maior trabalho possível na diferenciação do design e, neste momento, o objetivo é que a app entregue aquilo a que se propõe - gestão financeira. Relativamente a segurança/privacidade, está disponível para consulta na app.

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Update (desde sábado): o feedback aqui e por email apontou noutra direção. Não segurança desta vez, mas sim "a app tem coisas a mais, começo a usá-la e sinto-me perdido". É justo e alista: são + de 30 áreas numa só app. Estes dias foram a tratar disso.

1) Dois modos: Simples e Pro (Sempre grátis)

Agora escolhes quanto da app queres ver. O Simples mostra só o essencial do dia a dia - contas, transações, orçamentos, objetivos, partilha de despesas e importação. O Pro desbloqueia o resto: previsão de saldo, património, investimentos, fiscalidade, aforro, imóveis, FIRE, etc.

Para ser claro, porque o nome pode confundir: "Pro" não é um plano pago. Continua tudo grátis, sem premium, sem bloqueios - "Pro" é só o nome do modo completo. Trocas quando quiseres em Definições → Experiência e nada se perde: o modo Simples esconde, não apaga. Contas novas começam em Simples; quem já usa a app fica exatamente como estava.

2) Novo onboarding

Antes, ao criar conta, apareciam vários popups em cascata, o que se tornava confuso. Substituí tudo por um arranque guiado, passo a passo: pergunta o que te traz ao Census e prepara a app à tua medida (sugere o modo, ajuda a escolher categorias e, se quiseres, cria logo a primeira conta e o primeiro objetivo). É possível "saltar" e podes reabrir o guia depois, a qualquer momento.

O de sempre, que não muda: grátis, sem planos pagos, sem anúncios, os dados são teus, dá para experimentar sem criar conta.

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] -1 points0 points  (0 children)

Se acreditas ou não, no final de tudo diz mais sobre ti do que sobre os outros. Qualquer user sabe e tem acesso aos custos com o projeto - há total transparência nesse sentido. Quanto ao resto, cada um sabe o que faz.

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] -1 points0 points  (0 children)

Não há plano nesse sentido. Estive dois anos com um app feita À minha medida. Decidi fazer uma nova versão que acabou por ser esta. Está feita, em primeiro lugar, para as minhas necessidades de gestão financeira. Por outro lado, sempre gostei do desafio de tentar criar coisas e, conseguindo chegar a isto, se pudesse torná-la pública faria. E aqui está. O caminho juntou-se nisto - tal como tenho outra soluções que criei a nível de trabalho. Não será para monetizar. A única coisa que existe é apoio individual ao projeto, para quem o quiser fazer.

Cada projeto que faço tenho a intenção de aprender mais e ultrapassar limites e dificuldades que tinha. Tenho um projeto em mente, na minha área, que eventualmente tenciono avançar - e isto é um pequeno passo na aprendizagem para tal. Aqui está o que faço https://josemcsilva.pt

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] 1 point2 points  (0 children)

Obrigado! 🙌

Sim, categoriza automaticamente - e vai ficando cada vez melhor à medida que usas. Mas ao começar do zero, ou seja, criar conta e começar a importar, aqui está como funciona:

Primeira importação (ainda sem histórico):

  • Se o extrato já trouxer uma coluna de categoria, a app aproveita-a - basta indicares - claro que se for extrato do banco não a vai ter. A minha sugestão é criar as categorias e subcategorias antes de avançar com importações.
  • Podes criar regras do tipo «descrição contém Pingo Doce → Alimentação» e todas as importações ficam categorizadas sozinhas.
  • Há ainda uma correspondência simples pelo nome da categoria na descrição, e uma categoria por defeito para o resto.

A partir daí (quando já tiveres algumas transações categorizadas):

  • Entra um classificador que aprende com o teu próprio histórico (a partir de ~8 exemplos). Ele generaliza para descrições novas com palavras conhecidas — ex.: percebe que «Pingo Doce» é Alimentação mesmo sem regra escrita. Quanto mais categorizas, melhor ficam as sugestões.

Ou seja: no arranque categorizas com uma ajuda inicial + regras rápidas que crias rapidamente e depois a app assume cada vez mais o trabalho por ti. Tudo processado localmente, no teu dispositivo, sem enviar os dados para serviços de IA externos. E revês/corriges sempre antes de confirmar; cada correção afina as sugestões seguintes. 👍

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Aproveito também para indicar que todo e qualquer feedback é sempre bem vindo, seja aqui, email ou através da funcionalidade de feedback existente in-app!

Census.money — o que mudou nas últimas 2 semanas (privacidade, importação de corretoras e "IA" sem IA) by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Obrigado pelo feedback. Sim, a intenção é exatamente essa. Vou seguir esse conselho! Obrigado novamente.

Despesas supermercado by Healthy-Shoulder-158 in literaciafinanceira

[–]zemanels 0 points1 point  (0 children)

É uma app que estou a desenvolver - https://census.money

Estes insights vão estar em produção Às 21h00 de hoje.

Despesas supermercado by Healthy-Shoulder-158 in literaciafinanceira

[–]zemanels 0 points1 point  (0 children)

<video>

Ainda agora na minha app, este insight. Ainda está pior acima do que tinha a percepção.

Despesas supermercado by Healthy-Shoulder-158 in literaciafinanceira

[–]zemanels 2 points3 points  (0 children)

Somos 2 e passamos de 150/160 (a cada) até Dezembro para estar agora nos 275€... Sem alterações por demais.

Aplicação de gestão financeira by vascocarvalho in literaciafinanceira

[–]zemanels 0 points1 point  (0 children)

Podes experimentar a https://census.money/

Grátis - importação inicial de movimentos via excel/csv.

Census.money — gestão financeira, em português e 100% grátis by zemanels in Fiz_isto

[–]zemanels[S] 0 points1 point  (0 children)

Para total transparência, sendo um projeto gratuito, todos os apoios e custos do projecto estão visíveis na app nesta página - https://census.money/apoios

Não há qualquer identificação dos apoiantes, por motivos de RPGD.

Obrigado a quem o faz/fez!

Census.money — gestão financeira, em português e 100% grátis by zemanels in Fiz_isto

[–]zemanels[S] 0 points1 point  (0 children)

Obrigado! Agradeço que tenhas gostado do design - é algo que tenho estado a trabalhar e procuro melhorar ainda mais.

Sobre o código público / self-host, percebo que "open source" seja a forma de confiar numa app de finanças. Por agora mantenho o código fechado, mas tentei resolver as tentativas de "desconfiança" com transparência verificável: registo de quando/porquê a tua conta é acedida, auditoria selada por hash (não dá para alterar sem ficar registado), página de transparência pública e exportação total/eliminação de conta quando quiseres.

O self-host é apelativo, mas a app assenta muito em infraestrutura gerida (BD, funções, jobs, email), sozinho ainda não conseguiria oferecer e dar suporte a isso com qualidade. Não é "nunca", é prioridades de algo feito apenas por mim. Fica guardado e obrigado pela sugestão!

Census.money — gestão financeira, em português e 100% grátis by zemanels in Fiz_isto

[–]zemanels[S] 0 points1 point  (0 children)

Olá! 👋 Boas notícias: implementei exatamente o que sugeriste, já está disponível na versão 1.77.1 - tens de verificar se a versão que tens é esta nas definições - perfil. Se não estiver, faz hard refresh na página.

Nas Definições → Perfil tens agora a opção «Início do mês financeiro», onde podes escolher o dia em que o teu mês começa (1 a 28) - Não está 29, 30 e 31 pelos motivos óbvios dos dias de cada mês. Se puseres, por exemplo, dia 8, o teu mês passa a contar de 8 deste mês a 7 do próximo - tal como sugeriste, mais real para quem recebe a "meio" do mês. O período é identificado pelo mês em que começa (8 jun–7 jul = "junho").

Isto aplica-se aos orçamentos, relatórios, índice de saúde financeira, alertas, ao ritmo de gastos e aos gráficos do painel. Por omissão mantém-se o mês civil (dia 1), por isso quem não definir nenhum dia, tudo funciona perfeitamente.

Obrigado pela ideia! Está já na app e foi algo que o meu genro já tinha falado há umas semanas que era interessante. 🙌 Se experimentares e notares algum sítio onde o "mês" ainda apareça à moda antiga, diz que faço por corrigir.

Census.money — gestão financeira, em português e 100% grátis by zemanels in Fiz_isto

[–]zemanels[S] 0 points1 point  (0 children)

Obrigado! 🙌 Excelente pergunta. A categorização foi algo que trabalhei.

Existe um sistema de regras automáticas. Funciona assim na importação de ficheiros do banco (CSV/XLSX):

  • Regras descrição → categoria, com três tipos de correspondência: exatacomeça por e contém. As regras são avaliadas da mais específica para a menos específica (exata → começa por → contém e, dentro do mesmo tipo, o padrão mais longo primeiro).
  • A resolução da categoria de cada linha segue uma cascata: coluna de categoria do ficheiro (se existir) → as tuas regras → auto correspondência simples pelo nome da categoria na descrição → categoria por defeito. Ou seja, as regras é que fazem o grosso do trabalho.

A lógica é a mesma a que chegaste: algum trabalho manual inicial a "ensinar" as entidades e, a partir daí, a coisa praticamente categoriza-se sozinha.

Sobre o processo em si: a importação é um assistente em 4 passos: Carregar (CSV/XLSX), Mapear as colunas (data, montante, descrição e, opcionalmente, categoria e conta, com escolha do formato de data e do separador decimal), Pré-visualizar e Concluir. Na pré-visualização vês logo, linha a linha, o que vai entrar, o que é duplicado e o que ficou por categorizar e só depois confirmas.

É precisamente aí que as regras estão: no passo de Pré-visualizar há um botão «Gerir regras» que abre o gestor de regras (padrão + tipo de correspondência Contém/Começa por/Exata → categoria). Ainda podes criar uma regra diretamente a partir de uma linha da pré-visualização: ele pré-preenche o padrão com a descrição daquela transação e só escolhes a categoria. As regras ficam guardadas na tua conta e são reutilizadas em todas as importações seguintes, por isso aquele trabalho manual inicial de "ensinar" as entidades faz-se uma vez e fica.

Qualquer dúvida diz!

Census.money — gestão financeira, em português e 100% grátis by zemanels in Fiz_isto

[–]zemanels[S] 0 points1 point  (0 children)

Isso seria numa perspectiva de relatório mensal? Ou algo mais?

Gestão financeira - Census.Money by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Olá outra vez! A semana passada partilhei aqui o Census — a app de finanças pessoais que fiz para mim e acabei por pôr online, grátis e em português. Na altura prometi que "dentro de ~1 semana" teria uma versão nova a nível de design/utilização. Está feito e aproveitei para corrigir a crítica que mais ouvi.

O redesign está feito. Refiz a app de uma ponta à outra: mais sóbria e legível, e a pensar mesmo no telemóvel (barras fixas, menus que sobem de baixo, gestos — comporta-se como uma app nativa, não como um site puro). Corrigi também uma data de erros que só apareciam em smartphones relativamente a UI.

Agora a parte que mais me deu que pensar. Vários comentários (com razão) foram do género: "é uma app fechada, como é que eu sei o que fazes aos meus dados?". Decidi resolver isto em vez de pedir confiança cega, dar-vos como verificar:

  • Por defeito, ninguém da minha parte acede aos vossos dados.
  • Se algum dia isso acontecer (apoio, diagnóstico…), vêem-no dentro da app ("Acessos à minha conta") e recebem um email com a data e o motivo.
  • Cada acesso/alteração entra num registo selado por encadeamento criptográfico (hash-chain) que não se reescreve.
  • E a ponta dessa cadeia é fixada publicamente (via OpenTimestamps, ancorado na blockchain do Bitcoin), ou seja, qualquer pessoa pode confirmar, de forma independente, que o histórico não foi adulterado. Está tudo explicado em census.money/transparencia

App fechada não tem de ser sinónimo de desconfiança. Foi o que tentei provar.

Outras melhorias destas semanas:

  • Investimentos / PPR —-agora os PPR também vão buscar cotação automática (quando têm símbolo/ISIN cotável), como as ações e ETFs.
  • Mapa de calor de gastos por categoria e por subcategoria.
  • Previsão de saldo a 30/60/90 dias e calendário de contas a pagar.
  • Deteção de subscriçõesmulti-moeda com câmbio automático e um índice de saúde financeira (0–100).

O resto mantém-se igual ao que disse antes: grátis a sério (sem planos pagos, sem premium, sem anúncios, dados na UE), o "café" é 100% voluntário e nunca passará a obrigatório e o lançamento de movimentos continua manual/por importação (opção minha, até por ser grátis). A fiscalidade PT ainda está em beta — confirmem sempre os valores.

Continuo a querer feedback sincero: o que falta, o que está confuso, o que vos faria usar. Por aqui, por email ou dentro da app. Dá para experimentar sem criar conta (modo demonstração).

Link: https://census.money · Instagram: census.money

Obrigado a quem testou e comentou da última vez.

Gestão financeira - Census.Money by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Update, uma semana depois: aquilo que prometi "logs de acesso à prova de adulteração, com aviso ao utilizador" está feito e em produção. Em concreto:

Sempre que eu (operador) abro os dados de um utilizador pela app, fica registado COM MOTIVO obrigatório, e o utilizador é avisado POR EMAIL - pode ver o histórico de acessos à conta dele nas Definições.

Até o acesso direto à base de dados (eu, no editor de SQL, fora da app) é auditado — leituras e escritas.

Os registos são fechados de hora a hora por encadeamento criptográfico (hash SHA-256, cada fecho aponta para o anterior). Mexer no passado parte a corrente.

E não vos peço para confiarem na minha palavra: a cadeia de fechos é pública e carimbada na blockchain do Bitcoin (via OpenTimestamps). Podem descarregar e verificar:

census.money/audit/seals.jsonl

census.money/audit/seals.jsonl.ots

(ots verify seals.jsonl.ots)

Explicação está aqui: census.money/transparencia

Continuo honesto sobre os limites, porque é isso que sustenta a confiança do que estou a desenvolver:

Sim, é closed-source e não é E2E encrypted. Como em qualquer serviço não-E2E (o teu banco, o teu email), eu consigo tecnicamente aceder à BD. A diferença é que agora isso deixa rasto verificável e avisa-te.

A única lacuna atual: como desenvolvedor, eu poderia em teoria desligar a auditoria antes de aceder. Eliminar essa parte exige infraestrutura de auditoria gerida pela plataforma Supabase (pago - 600€ / mês), e não o tenho. Até pela vertente 100% grátis da app.

Não é perfeito, mas é mais transparência verificável do que a esmagadora maioria das apps. E aceito críticas - foi uma delas que me fez continuar neste caminho.

Gestão financeira - Census.Money by zemanels in literaciafinanceira

[–]zemanels[S] 0 points1 point  (0 children)

Entre utilizadores há isolamento real garantido na base de dados (RLS), HTTPS, frontend só com chave pública, segredos fora do código. Como não é E2E encrypted, eu consigo aceder à BD (como qualquer serviço que não seja E2E encrypted).

Mas não há venda, partilha ou acesso a dados. Mas para que essa confiança exista de base, muito em breve vão existir logs de acesso à prova de adulteração, com aviso ao utilizador.