Importeer bestanden van al je banken. Spendify voegt ze samen, voorkomt dubbeltellingen, classificeert elke transactie — en je gegevens verlaten nooit je harde schijf.
Python · Streamlit · SQLite · Ollama · geen account vereist
Elke maand: downloaden, Excel openen, plakken, de tekens corrigeren, de duplicaten zoeken. En elke keer klopt er iets niet.
Drie transactiebestanden van drie verschillende bankportalen, incompatibele CSV-formaten, datums in verschillende formaten, bedragen met willekeurige tekens. Ze handmatig samenvoegen kost uren en levert altijd fouten op.
De boodschappen verschijnen op het creditcardafschrift én op de betaalrekening als maandelijkse verzamelafschrijving. Tel je alles op, dan lijken je uitgaven het dubbele van wat ze werkelijk zijn. Geen enkele gangbare tool lost dit automatisch op.
Een overboeking naar een spaarrekening is geen uitgave. Maar als je beide rekeningen importeert, verschijnt dezelfde transactie tweemaal — als uitgave op de betaalrekening en als inkomende op de spaarrekening.
300 transacties per maand handmatig classificeren is een baan op zich. Cloud-apps doen het wel, maar ze sturen je bankgegevens naar hun servers en rekenen een maandelijks abonnement.
Geen bankintegraties, geen account, geen configuratie per bestand.
Exporteer transactiebestanden als CSV of XLSX vanuit het portaal van je bank. Werkt met elke bank — Spendify herkent het formaat automatisch zonder handmatige configuratie.
Selecteer alle bestanden tegelijk, ook van verschillende banken, ook uit verschillende jaren. Spendify herkent het documenttype, corrigeert tekens, voorkomt dubbeltellingen tussen kaart en rekening, en classificeert elke transactie.
Het geünificeerde grootboek toont alles op één plek: grafieken, filters, export, en de zekerheid dat elke euro precies één keer wordt geteld.
Dit is geen generieke budget-app. Het is ontworpen rond de specifieke problemen van mensen met meerdere rekeningen.
Wanneer de creditcard het maandbedrag afschrijft van de betaalrekening, herkent Spendify het verband en verwijdert de dubbeltelling automatisch.
Tijdvenster ±45 dagen · 3 matchingfasen: glijdend venster → subset sum voor opgesplitste bedragen → gedeeltelijke reconciliatie
Een overboeking van een betaalrekening naar een spaarrekening is geen uitgave en geen inkomen: het is een interne overboeking. Spendify herkent dit door bedragen, datums en rekeninghoudersnamen in de omschrijvingen te vergelijken — zelfs als de twee bestanden op verschillende momenten zijn geïmporteerd.
Elke transactie heeft een unieke ID berekend uit de inhoud (SHA-256). Als je hetzelfde bestand twee keer importeert, gebeurt er niets. Je kunt je hele transactiehistorie opnieuw importeren zonder angst voor duplicaten.
De categorisatie gebruikt vier niveaus achter elkaar:
Het is geen slogan. Het is de architectuur.
Spendify gebruikt standaard Ollama lokaal: een AI-engine die draait op je eigen computer, zonder internetverbinding. Je transactiebestanden verlaten nooit je harde schijf.
Als je OpenAI of Claude gebruikt, verwijdert Spendify automatisch alle identificerende gegevens vóór elke remote-aanroep:
Als de controle faalt, wordt de aanroep geblokkeerd — niet stilzwijgend gedegradeerd.
De gegevens worden opgeslagen in een SQLite-bestand op je computer. Je kunt het kopiëren, verplaatsen of er een back-up van maken zoals van elk ander bestand. Geen verplichte cloud, geen account, geen abonnement.
Vier profielen die in Spendify iets vinden wat alternatieven niet bieden.
Betaalrekening + creditcard + spaarrekening + beleggingsrekening? Spendify voegt ze allemaal samen tot één overzicht zonder dat je iets handmatig hoeft te doen.
Als je Excel gebruikt voor je uitgaven, kan Spendify die routine vervangen: je importeert de bestanden één keer, Spendify voegt samen en classificeert, en jij beoordeelt alleen de uitzonderingen.
Geen verplichte remote backend, geen account, geen registratie. Je bankgegevens blijven waar ze horen: op je eigen computer.
Open source Python-project met modulaire architectuur, LLM-pipeline op gestructureerde data, volledige testsuite. Een startpunt om mee te experimenteren of op maat gemaakte integraties te bouwen.
Native desktop-app met lokale AI inbegrepen. Geen Docker, geen Terminal die openblijft.
📥 Installer downloaden (DMG · MSIX · .deb · .rpm)
Stapsgewijze gids met schermafbeeldingen → installatie & eerste start
— of, vanuit de terminal: —
Het script detecteert je hardware, downloadt het optimale AI-model voor je RAM (1–7 GB) en regelt alles — zonder enige tussenkomst.
De app verschijnt in Launchpad / Startmenu / bestandsbeheer, klaar voor gebruik.
Developer of handmatige installatie? → Volledige handleiding
Alleen Docker Desktop vereist. Officiële container van GitHub Container Registry, browser op http://localhost:8501.
🆘 Hulp nodig? Open een issue op GitHub — bugs, vragen, feature-verzoeken.
⭐ Vind je Spendif.ai leuk? Geef ons een ster — het helpt ons de officiële package registries te bereiken (Homebrew Core, winget).
Geen LLM-framework (geen LangChain) — AI-backends gebruiken direct de officiële SDK's.
Implementeer LLMBackend (3 methoden) en registreer hem in BackendFactory. Werkt met elke OpenAI-compatibele API.
Flow 2 herkent ze automatisch via LLM zonder codewijzigingen. Het schema wordt opgeslagen en hergebruikt bij volgende imports.
Vanuit de pagina Taxonomie, zonder de code aan te raken. De taxonomie is volledig configureerbaar vanuit de interface.
De pipeline process_file() staat volledig los van de UI — hij kan zonder wijzigingen via FastAPI worden ontsloten.
brew install --cask spendifai.deb- en .rpm-packages als GitHub release-assetswinget install SpendifAi.SpendifAiGebieden waar bijdragen het meest van pas komen:
Als jouw bank niet automatisch wordt herkend, open dan een issue met een geanonimiseerd CSV-voorbeeld.
De suite dekt de business-logic-laag, maar nog niet de Streamlit-interface. Hier is ruimte om bij te dragen.
De architectuur ondersteunt al meerdere talen voor omschrijvingen. De UI is in het Italiaans — er is ruimte om andere talen toe te voegen.
Batch-categorisatie is de bottleneck met een lokale LLM. Er is ruimte voor parallellisatie.