minifakt · PGfakt · Ralf Burger

Theoretische Überlegungen zu möglichen Plänen – minifakt und PGfakt

Stand 30.10.2026. Hier stehen nur Überlegungen. Nichts davon ist beschlossen, begonnen oder zugesagt.

Die Frage dahinter: Wie könnte minifakt optional im Netz und an mehreren Arbeitsplätzen laufen? Und welche Rolle könnte PostgreSQL dabei spielen, auf dem schon der Vorgänger PGfakt aufgebaut war?

1. Ausgangslage

PGfakt (Archiv, letzte Version 02.08.2020)minifakt
AufbauJava-Webanwendung (Tomcat) mit PostgreSQLeine HTML-Datei, alles im Browser
Datenzentral in der Datenbankim Speicher des Browsers (localStorage)
Mehrplatzja, über den Servernein: ein Browser, ein Datenbestand
BetriebServer, Datenbank und Pflege nötignichts nötig, läuft auch offline und direkt als Datei
AustauschSQLSicherungsdatei im JSON-Format, auf Wunsch verschlüsselt; „Sicherung laden“ kann zwei Stände zusammenführen

Leitlinie für alles Folgende: minifakt bleibt ohne Netz voll nutzbar. Netz und Mehrplatz gibt es nur als Zusatz, den man bewusst einschaltet.

2. Wege zu Netz und Mehrplatz (vom kleinsten zum größten)

AGemeinsamer Ordner, ohne eigenen Server

Dafür: kein Server, wenig Programmieraufwand, die Daten bleiben beim Nutzer.

Dagegen: Man kann nur nacheinander arbeiten, nicht gleichzeitig. Variante 2 geht nur in Chromium-Browsern, nicht in Firefox. Das Synchronisierungsprogramm kann Konfliktkopien erzeugen.

BKleiner Abgleichdienst mit Gesamtstand und Sperre

Dafür: passt zu einfachem Webhosting, kleiner Eingriff in minifakt, kein Datenbankserver, datenschutzfreundlich.

Dagegen: Es wird immer der ganze Stand übertragen. Gleichzeitig arbeiten geht nur an verschiedenen Mandanten.

CÄnderungsprotokoll statt Gesamtstand

Dafür: feiner als B, mehrere Personen können am selben Mandanten arbeiten, und nebenbei entsteht ein Änderungsprotokoll, das auch für die Nachvollziehbarkeit nach GoBD hilft.

Dagegen: Alle Stellen in minifakt, die Daten ändern, müssten Ereignisse erzeugen. Für jede Art von Ereignis braucht es Regeln für Konflikte. Das ist ein deutlicher Umbau.

D„Local-first“ mit automatischem Zusammenführen (CRDT)

Dafür: modern, robust ohne Netz, Zusammenarbeit fast in Echtzeit.

Dagegen: Buchhaltung braucht harte Regeln, die solche Verfahren nicht kennen: Rechnungsnummern müssen fortlaufend und eindeutig sein, Festgeschriebenes darf sich nicht mehr ändern, Abschlüsse sperren Zeiträume. Dafür bräuchte es doch wieder eine zentrale Stelle. Dazu kommen fremde Bibliotheken und deutlich mehr Code.

EServer mit PostgreSQL als führendem Datenbestand (der PGfakt-Weg)

Dafür: echter Mehrplatzbetrieb mit Transaktionen, Benutzern und Rechten, Rechnungsnummern aus Sequenzen, Änderungsprotokoll per Trigger, Sicherung mit pg_dump.

Dagegen: Das ist im Kern ein neues Programm, gewissermaßen ein „PGfakt 2“. Es braucht Anmeldung, HTTPS und laufende Pflege. Die Daten liegen auf einem Server, und wer das für andere betreibt, braucht einen Vertrag zur Auftragsverarbeitung. Offline-Arbeit geht nur mit viel Aufwand. Das widerspricht dem Gedanken „mini“.

3. PostgreSQL ohne Mehrplatz

Diese Ergänzungen hängen nicht von Abschnitt 2 ab.

FSicherungsdatei → PostgreSQL, zum Auswerten und Archivieren

GPGlite: PostgreSQL im Browser

HMehr Platz im Browser: IndexedDB statt localStorage

IBrücke von PGfakt zu minifakt

4. Fragen, die jeder Mehrplatz-Weg beantworten muss

  1. Rechnungsnummern: Sie müssen fortlaufend und eindeutig sein. Dafür braucht es entweder eine zentrale Vergabe beim Festschreiben oder getrennte Nummernkreise je Arbeitsplatz, etwa mit Vorsatz A-, B-.
  2. Festschreiben und Abschlüsse: Festgeschriebenes darf auch durch einen Abgleich nicht verändert werden. Bei einem Konflikt gewinnt immer der festgeschriebene Stand.
  3. Wer hat was geändert: Ein Name je Arbeitsplatz und ein Änderungsprotokoll, auch wegen der GoBD.
  4. Rechte: Reicht „alle dürfen alles“, oder braucht es zum Beispiel einen Steuerberater, der nur lesen darf?
  5. Offline: Was passiert, wenn ein Arbeitsplatz tagelang ohne Netz gearbeitet hat?
  6. Verschlüsselung und Datenschutz: Liegen die Daten verschlüsselt auf dem Server (B), oder kann der Server sie lesen (E)?
  7. Sicherung: Die lokale Sicherungsdatei bleibt in jedem Fall, auch als Rückfallebene, wenn der Dienst ausfällt.
  8. Browser: Firefox und Chromium sollen gleichwertig bleiben.

5. Einschätzung (vorläufig)

Anregungen und Bedarf gern über die Kontaktdaten im Impressum.