Importa i file di tutte le tue banche. Spendify li unifica, elimina i doppi conteggi, classifica ogni transazione — e i tuoi dati non lasciano mai il tuo disco.
Python · Streamlit · SQLite · Ollama · nessun account richiesto
Ogni mese: scarica, apri Excel, incolla, aggiusta i segni, trova i doppioni. E ogni volta qualcosa non torna.
Tre estratti conto da tre portali bancari diversi, formati CSV incompatibili, date in formati differenti, importi con segni a caso. Unirli a mano richiede ore e genera sempre errori.
La spesa al supermercato appare nell'estratto della carta e nel conto corrente come addebito mensile aggregato. Sommando tutto, le tue spese sembrano il doppio di quelle reali. Nessuno strumento comune risolve questo automaticamente.
Un bonifico al conto deposito non è una spesa. Ma se importi entrambi i conti, lo stesso movimento appare due volte — come uscita dal corrente e come entrata sul deposito.
Classificare 300 transazioni al mese a mano è un lavoro. Le app cloud lo fanno, ma inviano i tuoi dati bancari ai loro server e ti chiedono un abbonamento mensile.
Nessuna integrazione bancaria, nessun account, nessuna configurazione per tipo di file.
Esporta gli estratti conto in CSV o XLSX dal portale della tua banca. Funziona con qualsiasi banca italiana (e non solo) — Spendify riconosce automaticamente il formato senza configurazione manuale.
Seleziona tutti i file insieme, anche da banche diverse, anche di anni diversi. Spendify rileva il tipo di documento, corregge i segni, elimina i doppi conteggi tra carta e conto, classifica ogni transazione.
Il ledger unificato mostra tutto in un posto solo: grafici, filtri, export, e la certezza che ogni euro viene contato una volta sola.
Non è una app di budgeting generica. È progettata attorno ai problemi specifici di chi ha più conti bancari italiani.
Quando la carta di credito addebita l'importo mensile sul conto corrente, Spendify riconosce la relazione e rimuove il doppio conteggio automaticamente.
Finestra temporale ±45 giorni · 3 fasi di matching: finestra scorrevole → subset sum per importi frazionati → riconciliazione parziale
Un bonifico dal conto corrente al conto deposito non è né una spesa né un'entrata: è un trasferimento interno. Spendify lo riconosce confrontando importi, date e nomi dei titolari nelle descrizioni — anche se i due file sono stati importati in momenti diversi.
Ogni transazione ha un ID univoco calcolato sul contenuto (SHA-256). Se importi lo stesso file due volte, non accade nulla. Puoi reimportare tutta la storia bancaria senza paura di duplicati.
La categorizzazione usa quattro livelli in sequenza:
Non è solo uno slogan. È l'architettura.
Spendify usa Ollama in locale di default: un motore AI che gira sul tuo computer, senza connessione internet. I tuoi estratti conto non lasciano mai il tuo disco.
Se usi OpenAI o Claude, Spendify rimuove automaticamente tutti i dati identificativi prima di qualsiasi chiamata remota:
Se il controllo fallisce, la chiamata viene bloccata — non degradata silenziosamente.
I dati sono in un file SQLite sul tuo computer. Puoi copiarlo, spostarlo, farne backup come qualsiasi altro file. Nessun cloud obbligatorio, nessun account, nessun abbonamento.
Quattro profili che trovano in Spendify qualcosa che le alternative non danno.
Conto corrente + carta di credito + conto deposito + conto trading? Spendify li unifica tutti in un unico ledger senza dover fare nulla a mano.
Se usi Excel per le spese, Spendify può sostituire quella routine: importi i file una volta, Spendify unifica e classifica, tu controlli solo le eccezioni.
Nessun backend remoto obbligatorio, nessun account, nessuna registrazione. I tuoi dati bancari restano dove devono restare: sul tuo computer.
Progetto open source Python con architettura modulare, pipeline LLM su dati strutturati, test suite completo. Un punto di partenza per sperimentare o costruire integrazioni custom.
Serve solo Docker Desktop. Nessun git clone, nessuna configurazione.
Lo script scarica l'immagine da GitHub Container Registry, avvia il container
e apre il browser su http://localhost:8501 automaticamente.
AI locale opzionale: lo script chiede se installare Ollama con gemma3:12b — scaricato in background (~8 GB). Funziona su Apple Silicon (arm64) e amd64.
Per disinstallare: curl -fsSL https://raw.githubusercontent.com/drake69/spendify/main/installer/uninstall.sh | bash
Sviluppatore o installazione nativa? → Guida completa (Mac nativo · Linux Docker · Windows llama.cpp)
Nessun framework LLM (no LangChain) — i backend AI usano direttamente gli SDK ufficiali.
Implementa LLMBackend (3 metodi) e registralo in BackendFactory. Funziona con qualsiasi API OpenAI-compatible.
Flow 2 li riconosce automaticamente via LLM senza modifiche al codice. Lo schema viene salvato e riutilizzato nelle importazioni successive.
Dalla pagina Tassonomia, senza toccare il codice. La tassonomia è completamente configurabile dall'interfaccia.
La pipeline process_file() è completamente separata dall'UI — si può esporre via FastAPI senza modifiche.
Le aree dove il contributo è più utile:
Se la tua banca non viene riconosciuta automaticamente, apri una issue con un campione CSV anonimizzato.
La suite copre il layer di business logic ma non ancora l'interfaccia Streamlit. C'è spazio per contribuire.
L'architettura supporta già più lingue per le descrizioni. La UI è in italiano — c'è margine per aggiungere altre lingue.
La categorizzazione batch è il collo di bottiglia con LLM locale. C'è margine per parallelizzazione.