Selbst-gehostete Buchhaltung für österreichische EPUs, Freiberufler und Kleinunternehmer. Ein Docker-Container, SQLite, keine Cloud. Dazu ein KI-Assistent, der lokal läuft und Fragen zu deinen Daten beantwortet oder nach Bestätigung bucht.
Nur die App:
cp .env.example .env # SESSION_SECRET setzen: openssl rand -hex 32
docker compose up -dKomplettpaket mit lokalem LLM (Ollama) und Paperless-ngx, vorkonfiguriert:
cp .env.example .env
docker compose -f docker-compose.full.yml up -d
docker compose -f docker-compose.full.yml exec ollama ollama pull llama3.2:3bDann http://localhost:6002 öffnen. Erster Login admin / admin, wird sofort zur Änderung gezwungen. Hinter einem HTTPS-Reverse-Proxy zusätzlich SESSION_COOKIE_SECURE=true setzen.
Rechnungen nach §11 UStG (Reverse-Charge, Kleinunternehmer), Festschreibung nach §131 BAO mit Audit-Log, Mahnwesen, Projekte mit Zeiterfassung, Ausgaben mit Beleg-OCR und Paperless-ngx, Angebote, wiederkehrende Rechnungen, AT-Steuer (UVA, ZM, SVS- und ESt-Vorschau, BMD- und Finanzamt-Export), Anlagen mit AfA, Reisekosten, Kassabuch, XRechnung 3.0, Bank-Abgleich, automatische Backups und der lokale KI-Assistent.
Wie alles im Detail funktioniert, steht im Handbuch (38 Kapitel, auch in der App unter „Handbuch" eingebaut). Direkt zu den wichtigsten:
- Installation · Erste Schritte · Firmen-Einstellungen
- KI-Assistent · USt-Voranmeldung · Mahnwesen
- Reverse-Charge · Kleinunternehmer · Backup
Frag in normaler Sprache, auch umgangssprachlich. Der Assistent holt die echten Daten und antwortet mit sauberen Tabellen, Schreibvorgänge erst nach deiner Bestätigung.
Läuft gegen jeden OpenAI-kompatiblen Endpoint: Ollama, llama.cpp, LM Studio oder llama-tq (llama.cpp-Fork mit mehr Durchsatz). Deine Daten bleiben auf dem Server. Funktioniert mit kleinen Modellen ab 3B. Endpoint setzt du per Umgebungsvariable (im Komplettpaket schon gesetzt) oder in der App unter Firma → KI-Assistent. Details: Handbuch, Kapitel 11.
| Variable | Default | Zweck |
|---|---|---|
SESSION_SECRET |
zufällig | In Produktion fest setzen, sonst gehen Sessions bei Neustart verloren |
SESSION_COOKIE_SECURE |
false |
true hinter HTTPS-Reverse-Proxy |
DATA_DIR |
./data |
Persistente Daten (SQLite, Sessions, Suchindex) |
PORT |
6002 |
Lauschport |
LLM_BASE_URL, LLM_MODEL |
leer | KI-Endpoint, im Komplettpaket vorbelegt |
PAPERLESS_URL, PAPERLESS_TOKEN |
leer | Paperless-Anbindung, URL im Komplettpaket vorbelegt |
npm install
npm run dev-node # Express + SQLite auf Port 6002
npm run dev # Angular Dev-Server, /api wird auf 6002 geproxytTests mit npm test, Produktions-Build mit npm run build. Geteilte Entities in src/shared/entities, Server in src/server, App in src/app.
AGPL-3.0-only. Wer accountant verändert und über ein Netzwerk anbietet, muss die geänderte Quelle den Nutzern zugänglich machen (§13 AGPL). Für die eigene Firma self-hosted gibt es außer der Lizenz-Notice nichts zu beachten.


