LedgerLou Docs ist für Desktop optimiert.

Bitte öffne diese Seite auf einem Gerät mit breiterem Bildschirm.

LedgerLou Config

LedgerLou Config

Die zentrale Stelle für API-Keys, Tenant-Stammdaten, Nutzerzugriffe und Steuercodes. Hier werden Berechtigungen vergeben, Einstellungen gepflegt und die Konfigurationsbasis für REST und MCP sauber verwaltet.

API Reference
API KeysProgrammatischer Zugang mit Scope-Kontrolle
Scope-basiertFeingranulare Berechtigungen pro Key
Tenant-StammdatenFirmenname, Adresse, Steuernummer
Nutzer & RollenEinladen, Rollen vergeben, entfernen
Owner-only für writeSchreibzugriff erfordert Owner-Rolle

Was das Config-Modul abdeckt

API Key-Lifecycle — API Keys erstellen, auflisten und widerrufen. Jeder Key erhält beim Anlegen eine individuelle Scope-Kombination aus den 5 Modulen (journal, bank, perioden, auswertungen, config). Der Key-Wert wird nur einmalig angezeigt und dann gehasht gespeichert.

Nutzerverwaltung — Owner können weitere Nutzer per E-Mail einladen und ihnen eine Rolle (member oder admin) zuweisen. Bestehende Nutzer lassen sich entfernen. Alle Aktionen werden im Audit-Log festgehalten.

Tenant-Stammdaten — Firmenname, Adresse, Steuernummer, Umsatzsteuer-ID und Rechtsform können hier gepflegt werden. Schreibzugriffe auf Tenant-Stammdaten sind nur per Browser-Session für Owner zugelassen, nicht per API-Key.

Steuercodes — Tenant-spezifische Steuerschlüssel für leichte VAT-Automatik werden ebenfalls als Config-Ressource verwaltet. Lesen läuft über config:read, Anlegen und Ändern über config:write.

OAuth-Clients — Für Drittanbieter-Integrationen können OAuth 2.0 Clients registriert werden. Dies ist ein fortgeschrittenes Feature für Entwickler und Partner.

Zugangswege

Dashboard (UI)Der primäre Weg für Config-Aufgaben: API Keys anlegen, Nutzer einladen und Tenant-Daten pflegen — alles in den Einstellungen.
REST APIConfig-Daten lesen, API Keys und Steuercodes verwalten. Nur Tenant-Stammdaten bleiben bewusst Browser-Session-only.

Steuercodes

Steuercodes sind die leichte Konfigurationsschicht zwischen rohen Journalzeilen und alltagstauglicher Umsatzsteuer-Logik. Sie erlauben es, Buchungszeilen mit tax_code zu versehen, während LedgerLou die nötigen Steuerzeilen deterministisch ergänzt.

Was ein Steuercode definiert

  • den Schlüssel selbst, z. B. VSt19 oder VSt-igE19
  • den Prozentsatz
  • das Vorsteuer- oder Umsatzsteuerkonto
  • optional ein Gegenkonto für Selbstveranlagung / Reverse Charge

Beim Buchen mit tax_code wird die Journalzeile vor Validierung und Pairing erweitert:

  • Standardfall: Brutto wird in Netto + Steuer auf derselben Seite gesplittet
  • Selbstveranlagung: Ursprungszeile bleibt netto, zusätzlich wird ein balanciertes Steuerpaar erzeugt

Unterstützte Fälle

FallUnterstütztVerhalten
VSt19, VSt7, USt19, USt7JaStandard-Split auf derselben Buchungsseite
igE / §13b mit self_assess_accountJaNettozeile bleibt stehen, balanciertes Steuerpaar wird ergänzt
Manuelle Steuerzeilen + tax_code im selben BookingNeinRequest wird abgelehnt
FX + self_assessNeinRequest wird abgelehnt

Beispiele

Einkauf mit VSt19

POST /v1/bookings
{
  "booking_date": "2026-04-09",
  "description": "Bürobedarf",
  "lines": [
    { "account_number": "6815", "account_name": "Bürobedarf", "debit": 119, "credit": 0, "tax_code": "VSt19" },
    { "account_number": "1800", "account_name": "Bank", "debit": 0, "credit": 119 }
  ]
}

Ergebnis im Journal:

  • 6815 -> 1800 über 100.00
  • 1406 -> 1800 über 19.00

Beide Zeilen tragen tax_code = "VST19" im Journal.

Innergemeinschaftlicher Erwerb mit VSt-igE19

POST /v1/bookings
{
  "booking_date": "2026-04-09",
  "description": "Innergemeinschaftlicher Erwerb",
  "lines": [
    { "account_number": "5200", "account_name": "Wareneingang", "debit": 100, "credit": 0, "tax_code": "VSt-igE19" },
    { "account_number": "1800", "account_name": "Bank", "debit": 0, "credit": 100 }
  ]
}

Ergebnis im Journal:

  • 5200 -> 1800 über 100.00
  • 1404 -> 3804 über 19.00

Was bewusst getrennt bleibt

  • Der Journal-Request bleibt weiterhin explizit: tax_code ist optional, rohe manuelle Steuerzeilen sind weiterhin möglich
  • DATEV BU-Schlüssel oder UStVA-Ableitung werden nicht automatisch aus dem Code erzeugt

Scopes

Config-Endpunkte haben keine review-Aktion — nur Lesen und Schreiben:

config:readconfig:write