„Das ist doch nur eine Web-App mit ein paar zusätzlichen Feldern“
Wir hören eine Version davon in fast jedem ersten Gespräch über ein Finanz- oder Compliance-System — eine Einzelhandelskette, die statt einer Tabellenkalkulation ein echtes Ledger will, ein Bauunternehmen, das Abschlagsrechnungen braucht, eine Klinik, die Abrechnung und Gehaltsabrechnung an einem Ort braucht, eine Schule, die eine prüfungssichere Zuschuss- und Studiengebührenbuchhaltung braucht. Der Reflex ist, das Projekt wie die letzte CRUD-App zu kalkulieren: ein paar Tabellen, ein paar Formulare, ein Dashboard, in wenigen Sprints erledigt.
So läuft das nicht. Nicht weil die Oberfläche schwieriger wäre — die meisten Finanzsysteme haben weniger und schlichtere Screens als eine Consumer-App. Der Unterschied liegt darin, dass fünf Dinge in Finanzsoftware zwingend sind, die überall sonst optional bleiben. Lässt man eines davon weg, scheitert das System nicht laut. Es scheitert leise, Monate später, vor einem Prüfer oder einem sehr unzufriedenen Kunden.
1. Geld ist kein Float
Eine normale App kann eine angezeigte Zahl runden und weitermachen. Ein Ledger kann das nicht. Speichert man Währungsbeträge als Fließkommazahl, summieren sich kleine Rundungsfehler über Tausende Transaktionen, bis die Bücher nicht mehr stimmen — und „die Bücher stimmen nicht“ ist kein Bug-Ticket, sondern ein geschäftlicher Notfall.
Die Lösung ist unspektakulär und nicht verhandelbar: Integer-Cent-Beträge oder ein echter Decimal-Typ, niemals JavaScript-Floats, und jede Berechnung — Steuern, Rabatte, Splits, Sicherheitseinbehalte — läuft überall im Code über dieselbe Rundungsregel. Wir behandeln das als Linting-Regel, nicht als Anmerkung im Code-Review.
2. Nichts wird gelöscht
Normale Apps löschen ständig Datensätze, per Soft- oder Hard-Delete. Finanzsysteme löschen nicht — sie korrigieren und behalten dabei das Original. Ein Append-only-Ledger bedeutet: Jeder gebuchte Eintrag ist unveränderlich; ein Fehler wird durch einen neuen, verknüpften Gegeneintrag storniert, nicht bearbeitet oder entfernt. Genau das macht ein System prüfungsfähig: Ein Prüfer kann die vollständige Historie zu jedem Dollar nachvollziehen, nicht nur den aktuellen Stand.
Diese eine Entscheidung prägt das gesamte Datenmodell. Tabellen brauchen von Anfang an posted_at, reversed_by und created_by auf jeder Finanzzeile — Unveränderlichkeit nachträglich in ein Schema einzubauen, das für Bearbeitungen ausgelegt war, ist ein Neubau, keine Migration.
3. Jede risikoreiche Aktion braucht ein zweites Paar Augen
Das Berechtigungsmodell einer normalen App lautet meist: „Darf diese Rolle diese Seite sehen.“ Finanzsoftware braucht Berechtigungen auf Ebene der einzelnen Aktion, und bei allem mit echtem Geld oder echtem Risiko — eine Rechnung stornieren, eine Überweisung freigeben, eine Anspruchsablehnung überschreiben, eine Mahngebühr erlassen — muss eine zweite Person zustimmen, bevor die Aktion ausgeführt wird. Das ist das Maker-Checker-Prinzip: Eine Person schlägt die Aktion vor, eine andere Person mit der passenden Rolle bestätigt sie, und das System protokolliert beides.
Das nachträglich einzubauen ist schmerzhaft, weil es nicht nur eine Berechtigungstabelle betrifft — es verändert die Form der API. Aktionen werden zweistufig (propose, dann approve) statt einstufig, und dieses Muster muss von Anfang an mitgedacht werden, statt nachträglich an einen bestehenden „ein Klick zum Absenden“-Ablauf angeflanscht zu werden.
4. Wiederholungsversuche erzeugen doppeltes Geld, wenn man sie lässt
Zahlungs-Gateways, Bankdateien und Versicherungs-Clearingstellen führen alle Wiederholungsversuche durch. Eine normale App wiederholt eine fehlgeschlagene Anfrage, und nichts Schlimmes passiert. Ein Finanzsystem, das einen Zahlungsaufruf ohne Idempotenzschlüssel wiederholt, kann einen Kunden doppelt belasten, eine Transaktion doppelt buchen oder eine Subunternehmer-Auszahlung verdoppeln. Jeder externe Schreibvorgang braucht einen eindeutigen Idempotenzschlüssel, und jeder nächtliche Batch-Job braucht einen Abgleichsschritt, der prüft, was tatsächlich passiert ist, gegen das, was das Ledger für passiert hält — und die Abweichung meldet, statt Erfolg anzunehmen.
Das ist eine typische Lücke in Systemen, die nicht von Anfang an auf Idempotenz ausgelegt wurden: Die Integration funktioniert im Test einwandfrei, und Monate später, im Produktivbetrieb, stimmt eine Lieferantenabrechnung nicht überein, und niemand kann sagen, warum — weil nichts den Wiederholungsversuch gemeldet hat, der das verursacht hat.
5. Aufbewahrungs- und Verfügbarkeitsregeln legen Sie nicht selbst fest
Eine normale App kann ihre eigene Backup-Richtlinie wählen. Finanz- und Compliance-Software erbt Regeln von außen: rund sieben Jahre Aufbewahrungspflicht für Buchhaltungsunterlagen bei den meisten Steuerbehörden, HIPAAs eigene sechsjährige Aufbewahrungsregel für Compliance-Dokumentation wie Richtlinien und Autorisierungen (die tatsächliche Aufbewahrungsfrist für Patientenakten regelt US-bundesstaatliches Recht, das variiert und von HIPAA nicht verdrängt wird), sowie PCI-DSS-Geltungsbereichsregeln in dem Moment, in dem Kartendaten das System berühren — selbst nur im Transit. Verpasst man das, ist die Folge kein Bugfix, sondern ein Befund im nächsten Audit oder eine Geldstrafe.
Auch die Erwartungen an die Verfügbarkeit verschieben sich. Fällt eine Marketing-Website für eine Stunde aus, ist das peinlich. Wenn die Gehaltsabrechnung an ihrem Fälligkeitstag nicht läuft oder das Abrechnungssystem eines Krankenhauses bei der Patientenaufnahme nicht erreichbar ist, ist das eine andere Kategorie von Problem — und das ändert, was man für Monitoring, Failover und Bereitschaftsdienst einplant.
Wie sich das je nach Branche zeigt
Einzelhandel — der Schmerzpunkt ist meist der Abgleich: POS-Umsätze, Abrechnungen der Kartenprozessoren und Lieferantenauszahlungen müssen über Dutzende Standorte hinweg täglich automatisch übereinstimmen.
Bauwesen — Abschlagsrechnungen im AIA-Stil und die Verfolgung von Einbehalten bedeuten, dass die „Rechnung“ erst final ist, wenn ein Projektmeilenstein verifiziert wurde; das Ledger muss teilweise, bedingte Zahlungen abbilden, nicht nur bezahlt/unbezahlt. Genau das haben wir für einen Bauträger im Mehrfamilien- und Gewerbebau umgesetzt — siehe die Fallstudie.
Gesundheitswesen — Abrechnungsworkflows, die Leistungsprüfung durch Versicherer und die klinische Gehaltsabrechnung berühren allesamt geschützte Gesundheitsdaten, weshalb ein HIPAA-konformer Umgang (Zugriffsprotokollierung, Zugriff nur im notwendigen Mindestmaß, Verschlüsselung im Ruhezustand) eine Design-Vorgabe ist und kein nachträglich angehängtes Häkchen.
Institutionell — Zuschuss-Ledger, Auflagen von Spendern und Abteilungsbudgets brauchen eine Buchhaltung auf Fondsebene: Geld, das für einen bestimmten Zweck vorgesehen ist, darf nicht stillschweigend einen anderen decken, und für jeden Dollar muss eine nachvollziehbare Spur zurück zu seiner Quelle bestehen.
Was Sie das tatsächlich kostet
Nichts davon ist exotische Technik — es sind diszipliniert angewandte, gut verstandene Muster. Aber es bedeutet, dass ein Finanzmodul länger dauert als ein vergleichbares CRUD-Feature und pro Screen mehr kostet. Nach unserer Erfahrung dauert ein einzelnes, fokussiertes Modul — Projektkostenrechnung, Schadensfallaufnahme, ein Abgleichs-Dashboard — 10 bis 16 Wochen. Eine mehrteilige Finanzsuite, die mehrere der genannten Punkte gleichzeitig abdeckt, läuft in der Regel 5 bis 9 Monate, mit einem nutzbaren ersten Teilstück live innerhalb der ersten 12 Wochen.
Wenn ein Anbieter Finanz- oder Compliance-Software zum gleichen Satz anbietet wie Ihre Marketing-Website, fragen Sie direkt nach, wie er mit unveränderlichen Prüfpfaden, Vier-Augen-Freigabe und Abgleich umgeht. Ist die Antwort vage, dann stimmt diese Zahl nicht — nicht der Aufwand, den Sie eigentlich zu zahlen erwartet hatten.
Fazit
Finanzsoftware ist nicht schwieriger, weil die Screens kompliziert sind. Sie ist schwieriger, weil die Beschränkungen von außen kommen — Buchhaltungsregeln, HIPAA, PCI, die eigenen Prüfer — und keine davon verzeiht Abkürzungen, die genommen wurden, um einen Termin zu halten. Bauen Sie die Ledger-Disziplin schon ins erste Schema ein, nicht erst nach dem ersten Audit. Unser Team für Finanz- und Unternehmenssoftware plant genau diese Art von Projekten — Einzelhandel, Bauwesen, Gesundheitswesen und institutionelle Träger — und kann Ihnen innerhalb einer Woche sagen, welches der oben genannten Muster Ihr konkretes System tatsächlich braucht.



