Ich weiss nicht wirklich wie in Deutschland diese Kontoführung funktioniert, ich habe aber viel Buchhaltung in Kolumbien gemacht und kann Dir daraus etwas erzählen :
Wir haben dort alles nach Dokumenten erstmal geordnet, Rechung an Kunden, Rechnung von Zulieferer, Lohn, Kasseneingang, Kassenausgang etc. Das gibt die Möglichkeit, dort auch sofort filtern zu können nach den diversen Gruppen, wie zum Bsp. wieviel Geld man diesen Monat effektiv durch bezahlte Rechungen eingenommen hat
Dann haben wir eine Kontonummer. Alles hat eine Kontonummer. Die haben sogar eine gewissen Ordnung (siehe
Plan Unico de Cuentas). Die waren 8-stellig und zw. 10000000 und 99999999. Zum Bsp. alles was mit 1 anfing ist ein Aktiver Posten, also welches Geld du auf den verschiedenen Konten hast, welche Firmenbesitztümer wie Häuser etc. Alles mit 2 sind passive Posten wie Geld, welches dir geschuldet wird.
Das heisst auch, dass eine Bank wie Sparkasse einfach eine Nummer bekommt und du nicht extra wegschreiben musst, welche Bank das war. Das erlaubt es auch,bei Kontobewegungen automatisch Prozente auf die Bewegung zu berechnen.
Datum ist Klar, dann kommt definitiv der Kunde/Zulieferer/Angestellte, zu dem die Kontobewegung gehört.
Dann kommt die Bewegung, da kann man entweder mit + und - rechnen oder mit 2 Feldern für eingehend und ausgehend.
Dann kam noch eine Id des Kreuzdokumentes hinzu. Wenn es ein Urspungsdokument war (zum Bsp. eine Rechnung, die auf Raten bezahlt werden soll) dann ist dies das eigene Dokument. Ist es ein Geldeingang zu dieser Rechnung, dann kommt dort die Id dieses Urspungsdokuments (also der Rechung). Dann weisst Du immer sofort, was wer wann zu welcher Rechnung bezahlt hat und wo noch was offen ist. Ausserdem kannst Du den Saldo der Rechnung um den noch offenen Betrag einfach aktualisieren.
Gut ist auch ein Fälligkeitsdatum, damit Du schneller filter kannst, was überfällig ist. In Kolumbien war ein wichtiger Bericht der der Fälligkeiten, also pro Kunde welche Rechnungen seit wielange überfällig sind gruppiert in zum Bsp. 0-30 Tage, 31-60 Tage, 61-180 Tage usw.
Was wegfällt ist das Gegenkonto, weil Du immer 2 Buchungen machst. Zum Bsp verkauft Du einen Reifen aus Deinem Lager. In der Buchhaltung liegt er in einem Konto 1435XXXX, also kommt eine Zeile, wo der Reifen mit seinem aktuellen Kosten aus diesem Konto entfernt wird und seinem Gegenkonto (in dem Fall "Kosten Verkauf") in einer 2. Buchung zugeführt wird. Die Summe beider Bewegungen muss immer 0 ergeben.
Das hört sich erstmal komplexer an als einfach ein 2. Feld mit Gegenkonto, macht aber danach alle SQLs leichter, weil diese nicht in 2 Feldern nachsehen müssen. Wir sind sehr gut damit gefahren.
Ich hoffe, das gibt Dir ein paar Ideen zusätzlich.