Buchhaltungsrechte in Odoo: Wer darf was buchen
Kurz gesagt
In Odoo 20.0 richtet sich die Zeile Buchhaltung im Benutzerformular nach den installierten Modulen; der öffentliche Community-Quellcode der Version 20.0 nennt für das Modul Rechnungsstellung (account) allein zwei Stufen: Rechnungsstellung für Sachbearbeiter, die Rechnungen, Belege und Zahlungen erfassen, und Administrator für die Buchhaltung. Die offizielle Buchhaltungsdokumentation beschreibt den Buchhalterzugang mit Accounting: Administrator und Bank: Bankkonto validieren; welche Stufen die Buchhaltungs-Edition (Enterprise) zusätzlich zeigt, ist im öffentlichen Quellcode nicht belegt, und nur ein Konto mit Administration Settings oder Access Rights ändert fremde Rechte, Light-Benutzer haben keinen Zugriff. In Deutschland nennt Rz. 100 der GoBD Funktionstrennungen als ein Beispiel für die verpflichtenden Kontrollen des internen Kontrollsystems, deren Ausgestaltung von Geschäftstätigkeit, Organisation und DV-System abhängt; für Österreich und die Schweiz bleibt die Aufgabenverteilung eine Empfehlung dieses Artikels.
Das Wichtigste
- Der öffentliche Community-Quellcode 20.0 nennt für das Modul Rechnungsstellung (account) allein zwei Stufen in der Zeile Buchhaltung: Rechnungsstellung und Administrator; die Zeile Bank vergibt das Recht Bankkonto validieren.
- Die Stufe Administrator in der Zeile Buchhaltung ist im öffentlichen Community-Quellcode 20.0 nicht die allgemeine Rolle Administrator: Sie beschreibt vollen Zugriff einschließlich Konfigurationsrechten der Buchhaltung, und fremde Zugriffsrechte ändert nur ein Konto mit dem Feld Administration (Settings oder Access Rights).
- Light-Benutzer haben keinen Zugriff auf die Buchhaltung; zusätzliche Rechte stufen die Rolle automatisch auf Benutzer hoch.
- Fremde Zugriffsrechte ändert nur ein Administrator; einzelne Gruppen vergibt Odoo nur im Entwicklermodus.
- Rz. 100 der GoBD verlangt Kontrollen des internen Kontrollsystems und nennt Zugriffsberechtigungskontrollen und Funktionstrennungen als Beispiele; die Ausgestaltung hängt von Geschäftstätigkeit, Organisation und DV-System ab.
- Ausnahmen im Sperrdatum sind nur für Buchhaltungs-Administratoren möglich und werden im Verlauf protokolliert.
Was Sie vorab brauchen
- Ein Konto, das Zugriffsrechte ändern darf. Das ist ein Administrator; im eigenen Benutzerformular muss dazu im Reiter Zugriffsrechte im Feld Administration „Settings“ oder „Access Rights“ stehen (deutsch: Einstellungen oder Zugriffsrechte).
- Eine Liste der Aufgaben: Wer erfasst Ausgangsrechnungen, wer erfasst Eingangsrechnungen und Zahlungen, wer stimmt Bank und Konten ab, wer liest Berichte, wer schließt die Periode ab.
- Die installierten Apps. Die Zeile Buchhaltung erscheint im Benutzerformular nur, wenn die App Buchhaltung oder Rechnungsstellung installiert ist.
- Eine Entscheidung zur Edition: Rechnungsstellung ist in Community und Enterprise enthalten, die App Buchhaltung mit Hauptbuch, Bankabstimmung und Berichten führt der Editionsvergleich nur in der Spalte Enterprise (gelesen am 14. Oktober 2026).
- Einen Testdurchlauf vor jeder Änderung an der laufenden Datenbank. Die Dokumentation warnt, dass eine falsche Änderung an den Zugriffsrechten dazu führen kann, dass niemand mehr Rechte vergeben kann.
Die Rollenmatrix: Wer darf was buchen
Im Benutzerformular stehen zwei Angaben nebeneinander: die allgemeine Rolle und je App eine Zeile. Für die Buchhaltung zählen die Zeile Buchhaltung (Accounting) und die Zeile Bank. Welche Stufen die Zeile Buchhaltung anbietet, hängt von den installierten Modulen ab. Der öffentliche Community-Quellcode der Version 20.0 beschreibt für das Modul Rechnungsstellung (account) allein die zwei Stufen Rechnungsstellung und Administrator und hält fest, dass die Gruppen je nach installierten Modulen (account, account_accountant, accountant) anders zusammenwirken. Die Stufen der Buchhaltungs-Edition (Enterprise-Modul account_accountant) sind im öffentlichen Quellcode nicht lesbar. Die Matrix nennt daher die Stufen, die die Nutzerdokumentation und der öffentliche Community-Quellcode der Version 20.0 belegen; prüfen Sie die angebotenen Zeilen Ihrer Edition vor dem Einsatz in einer Testdatenbank.
| Profil im Betrieb | Rolle | Zeile Buchhaltung | Zeile Bank | Der Zugriff umfasst |
|---|---|---|---|---|
| Systemadministration | Administrator | leer lassen | über die Administrator-Rolle enthalten | Benutzer anlegen, Zugriffsrechte ändern, Konfiguration |
| Eigene Buchhaltung | Benutzer | Administrator | Bankkonto validieren | Buchen, abstimmen, Perioden abschließen, Berichte und Steuerbericht |
| Sachbearbeitung Debitoren und Kreditoren | Benutzer | Rechnungsstellung | leer lassen | Rechnungen, Belege, Zahlungen und grundlegende Rechnungsberichte |
| Steuerberatung | Benutzer | Administrator | Bankkonto validieren | wie die eigene Buchhaltung, beschränkt auf die ausgewählten Unternehmen |
| Lesende Stelle (Leitung, Controlling) | Benutzer | einzelne Gruppe | leer lassen | Berichte und Buchungen lesen; nur im Entwicklermodus zu vergeben |
| Mitarbeitende ohne Buchhaltungsaufgabe | Light | leer lassen | leer lassen | kein Zugriff auf die Buchhaltung |
Die zwei Stufen Rechnungsstellung und Administrator sind für die Modulkombination mit Rechnungsstellung (account) allein belegt. Führt Ihre Datenbank zusätzlich die App Buchhaltung (Enterprise-Modul account_accountant), kann die Zeile Buchhaltung weitere Stufen anbieten; deren Rechte sind im öffentlichen Quellcode nicht einsehbar. Lesen Sie die angebotenen Stufen in Ihrer Datenbank ab und prüfen Sie ihre Wirkung in einer Testdatenbank. Das gilt auch für die Zeile Bank; dass die allgemeine Administrator-Rolle das Recht Bankkonto validieren mitbringt, steht im öffentlichen Community-Quellcode der Version 20.0.
Drei Zeilen brauchen eine Begründung. Die Stufe Administrator in der Zeile Buchhaltung ist im öffentlichen Community-Quellcode 20.0 nicht die allgemeine Rolle Administrator: Die Gruppe ist dort mit „Vollständiger Zugriff, einschließlich Konfigurationsrechten“ beschrieben und gilt nur für die Buchhaltung, die allgemeine Rolle bleibt Benutzer. Für die Stufe Rechnungsstellung nennt dieselbe Quelle die Beschreibung „Rechnungen, Zahlungen und grundlegende Rechnungsberichte“. Light-Benutzer haben laut Dokumentation keinen Zugriff auf Kernanwendungen wie die Buchhaltung, und die Rolle wird automatisch zu Benutzer hochgestuft, sobald sie mehr Rechte erhalten.
Für die lesende Stelle gibt es in der belegten Community-Konfiguration mit der App Rechnungsstellung allein keine eigene Stufe in der Zeile Buchhaltung: Im öffentlichen Quellcode tragen dort nur die Stufen Rechnungsstellung und Administrator eine Auswahlzeile, und die Datei hält fest, dass bei installierter App Rechnungsstellung allein nur diese beiden verwendet werden sollen. Die daneben beschriebene Gruppe „Buchhaltungsfunktionen anzeigen - schreibgeschützt“ lässt Buchhaltungsfunktionen einschließlich Journalbuchungen, Berichten und erweiterter Konfiguration nur lesen und lässt sich im Entwicklermodus über den Reiter Technical Access Rights vergeben; prüfen Sie ihre Wirkung zuerst in einer Testdatenbank. Führt Ihre Datenbank zusätzlich die App Buchhaltung (Enterprise-Modul account_accountant), lesen Sie vorher die dort angebotenen Stufen ab. Datensatzregeln begrenzen zusätzlich die Sichtbarkeit einzelner Datensätze, etwa je Unternehmen (siehe Datensatzregeln).
Funktionstrennung: Welche Aufgaben getrennt bleiben
Getrennt heißt: Wer einen Vorgang erfasst, soll ihn nicht allein prüfen. In Deutschland sind Kontrollen des internen Kontrollsystems verpflichtend; ob und wie weit eine Funktionstrennung nötig ist, hängt von der Geschäftstätigkeit, der Organisation und dem DV-System ab. Nach § 146 Abs. 1 der Abgabenordnung (AO) sind Buchungen einzeln, vollständig, richtig, zeitgerecht und geordnet vorzunehmen.
Für die Einhaltung dieser Ordnungsvorschriften verlangt Rz. 100 der GoBD Kontrollen, die der Steuerpflichtige einrichten, ausüben und protokollieren muss. Die Randziffer nennt als Beispiele Zugangs- und Zugriffsberechtigungskontrollen und Funktionstrennungen; die konkrete Ausgestaltung des Kontrollsystems hängt nach derselben Randziffer von der Komplexität und Diversifikation der Geschäftstätigkeit, der Organisationsstruktur und dem eingesetzten DV-System ab. Grundlage ist das BMF-Schreiben vom 28. November 2019 (BStBl I 2019, 1269) in der Fassung der zweiten Änderung vom 14. Juli 2025, die nach der neuen Rz. 185 ab 14. Juli 2025 anzuwenden ist.
Die Beschreibung des internen Kontrollsystems gehört in die Verfahrensdokumentation (Rz. 102, siehe Verfahrensdokumentation für Odoo). Nach § 146 Abs. 4 AO darf eine Buchung zudem nicht so verändert werden, dass der ursprüngliche Inhalt nicht mehr feststellbar ist.
Für Österreich und die Schweiz habe ich keine ausdrückliche Pflicht zur Funktionstrennung gefunden. § 131 Abs. 1 BAO verlangt Bücher, die einem sachverständigen Dritten in angemessener Zeit einen Überblick über die Geschäftsvorfälle vermitteln. Bei elektronischen Aufzeichnungen soll nach § 131 Abs. 1 Z 6 lit. b BAO die vollständige, richtige und lückenlose Erfassung durch Protokollierung der Datenerfassung und nachträglicher Änderungen überprüfbar sein.
Für die Schweiz nennt Art. 957a Abs. 2 OR die vollständige, wahrheitsgetreue und systematische Erfassung, den Belegnachweis, die Klarheit, die Zweckmässigkeit und die Nachprüfbarkeit; nach Art. 958 Abs. 3 OR unterzeichnen der Vorsitzende des obersten Leitungs- oder Verwaltungsorgans und die für die Rechnungslegung zuständige Person den Geschäftsbericht. In beiden Ländern bleibt die Aufteilung eine Empfehlung dieses Artikels.
Die folgende Tabelle schlägt je Aufgabe eine Trennung auf zwei Personen vor und nennt, was Odoo selbst dazu mitbringt; die Zuordnung ist eine Empfehlung dieses Artikels, keine gesetzliche Pflicht.
| Aufgabe | Erfassung | Prüfung oder Freigabe | Was Odoo dafür bietet |
|---|---|---|---|
| Eingangsrechnung erfassen und buchen | Sachbearbeitung (Rechnungsstellung) | Buchhaltung prüft vor und nach dem Buchen | in der belegten Community-Konfiguration keine getrennte Stufe für Erfassen und Buchen; Verlauf am Beleg mit Ersteller und Änderungen |
| Bankverbindung eines Geschäftspartners erfassen oder ändern | Sachbearbeitung | Buchhaltung mit dem Recht Bankkonto validieren | eigenes Recht Bankkonto validieren in der Zeile Bank |
| Periode abschließen | Buchhaltung setzt das Sperrdatum | eine zweite Person aus der Buchhaltung gibt die Ausnahme frei | Ausnahmen im Sperrdatum werden im Verlauf des Unternehmens protokolliert |
| Steuerbericht erstellen und abgeben | Buchhaltung (Administrator) | Leitung prüft den Bericht | Berichte unter Buchhaltung ‣ Berichtswesen |
| Benutzer und Rechte ändern | – | Systemadministration | Feld Administration: Settings oder Access Rights |
Eine Stufe, die das Erfassen erlaubt und das Buchen eines Belegs sperrt, führt die Buchhaltungsdokumentation für die belegte Community-Konfiguration mit der App Rechnungsstellung allein nicht. Wer die Stufe Rechnungsstellung trägt, darf eine Rechnung deshalb auch festbuchen. Führt Ihre Datenbank die App Buchhaltung der Buchhaltungs-Edition, lesen Sie die dort angebotenen Stufen zuerst ab. Diese Trennung regeln Sie über die Aufgabe und eine Kontrolle, nicht über ein Recht.
Schritt für Schritt: Rechte in Odoo 20.0 vergeben
Schritt 1: Werte je Person festlegen
Notieren Sie je Person drei Werte: allgemeine Rolle, Zeile Buchhaltung, Zeile Bank. Gehen Sie dabei die Aufgaben aus der Funktionstrennung durch und tragen Sie zu jeder Aufgabe ein, wer erfasst und wer prüft. Ergebnis: eine Liste, die Sie nur noch in die Benutzerformulare übertragen.
Schritt 2: Benutzer anlegen
Öffnen Sie Einstellungen ‣ Benutzer & Unternehmen ‣ Benutzer und klicken Sie auf Neu. Tragen Sie die E-Mail-Adresse ein und speichern Sie. Die Einladung geht an diese Adresse, und die Person legt über den Link ihren Login selbst an. Die Mechanik des Anlegens, der Einladung und der Archivierung steht im Artikel Benutzer anlegen und Zugriffsgruppen; hier zählen nur die Werte für die Buchhaltung.
Schritt 3: Sachbearbeitung einstellen
Diese Werte gelten für die belegte Community-Konfiguration, in der nur die App Rechnungsstellung (Modul account) installiert ist: Setzen Sie im Reiter Zugriffsrechte die Rolle auf Benutzer, die Zeile Buchhaltung auf Rechnungsstellung, die Zeile Bank auf leer und das Feld Administration auf leer. Führt Ihre Datenbank zusätzlich die App Buchhaltung der Buchhaltungs-Edition (Enterprise-Modul account_accountant), bietet die Zeile Buchhaltung weitere Stufen an, deren Rechte im öffentlichen Quellcode nicht lesbar sind; lesen Sie dann zuerst die angebotenen Stufen ab. Ergebnis: Die Person steht in der Benutzerliste mit der Rolle Benutzer, und die Einladung ist verschickt.
Schritt 4: Eigene Buchhaltung einstellen
Setzen Sie die Rolle auf Benutzer, die Zeile Buchhaltung auf Administrator und die Zeile Bank auf Bankkonto validieren; das Feld Administration bleibt leer. Die Dokumentation nennt genau diese zwei Einstellungen im Abschnitt Accountant access rights, wenn sie den Zugang zur Buchhaltung beschreibt. Wer die Buchhaltung selbst führt, braucht sie ebenso wie eine externe Kanzlei. Ergebnis: Das Konto bucht, stimmt ab und liest Berichte; fremde Rechte ändert es nicht.
Schritt 5: Systemadministration getrennt halten
Für das Konto, das Benutzer und Rechte verwaltet, setzen Sie die Rolle auf Administrator und lassen die Zeile Buchhaltung leer; im Feld Administration steht dann Settings oder Access Rights. Ergebnis: Diese Person ändert fremde Rechte. Ob sie daneben buchen darf, ist damit nicht entschieden: Die Dokumentation leitet konkrete Berechtigungen aus der Rolle, den zugeordneten Gruppen und deren Vererbung ab und beschreibt keinen Ausschluss des Buchens. Kontrollieren Sie die tatsächlichen Buchhaltungsrechte dieses Kontos im Reiter Zugriffsrechte und in einer Testdatenbank. Umgekehrt gilt: Die Stufe Administrator in der Zeile Buchhaltung ist nicht die allgemeine Rolle Administrator, und fremde Zugriffsrechte ändert nur ein Konto mit dem Feld Administration.
Schritt 6: Steuerberatung einbinden oder ohne Zugang arbeiten
Geben Sie der Kanzlei einen eigenen Benutzer mit den Werten aus Schritt 4 und wählen Sie im Benutzerformular nur die Unternehmen aus, die sie betreut. In Odoo Online ist dieses Konto kostenlos, wenn die Kanzlei ein Odoo-Konto mit derselben E-Mail-Adresse besitzt; auf Odoo.sh und On-Premise können je Benutzer Kosten entstehen. Wer keinen Zugang geben will, übergibt Journalkopien per E-Mail oder ZIP-Exporte; die Wege und den Übergabe-Kalender beschreibt der Artikel Odoo und der Steuerberater.
Schritt 7: Einzelne Gruppen und Sonderfälle vergeben
Einzelne Gruppen außerhalb der Auswahlzeilen vergibt Odoo nur im Entwicklermodus, und zwar im Reiter Technical Access Rights des Benutzers oder in der Gruppenverwaltung unter Einstellungen ‣ Benutzer & Unternehmen ‣ Gruppen. Prüfen Sie jede dort vergebene Gruppe in einer Testdatenbank, bevor Sie sie in der laufenden Datenbank einsetzen.
So prüfen Sie das Ergebnis
- Angebotene Stufen: Lesen Sie im Benutzerformular ab, welche Stufen die Zeile Buchhaltung Ihrer Datenbank anbietet, und prüfen Sie jede davon zuerst in einer Testdatenbank. In der belegten Community-Konfiguration mit der App Rechnungsstellung allein sind es Rechnungsstellung und Administrator.
- Menüumfang: Melden Sie sich mit dem Konto der Sachbearbeitung an. Lassen sich die Journalbuchungen oder die Berichte unter Buchhaltung ‣ Berichtswesen öffnen, ist die Stufe zu hoch.
- Rechte des Administratorkontos: Öffnen Sie das Benutzerformular des Kontos, das die Zugriffsrechte verwaltet, und vergleichen Sie die dort gesetzten Stufen mit Ihrer Liste aus Schritt 1. Das Feld Administration erlaubt die Rechteverwaltung; Buchhaltungsrechte, die das Konto daneben trägt, wirken weiter und schließen das Buchen nicht aus.
- Verlauf: Öffnen Sie eine gebuchte Rechnung und lesen Sie im Verlauf, wer sie erstellt und welche Werte wer geändert hat. Odoo stempelt jeden Datensatz mit dem Ersteller und dem Erstellungsdatum und hält fest, wer einen verfolgten Wert geändert hat. Tragen Vorgänge, die mehrere Personen bearbeitet haben, denselben Kontonamen, fehlt die eindeutige Zuordnung zu einer Person.
- Inalterability: Mit der deutschen Lokalisierung ist der Prüfpfad standardmäßig aktiv. Über Buchhaltung ‣ Konfiguration ‣ Journale, Reiter Erweiterte Einstellungen lässt sich die Option Gebuchte Posten mit Hash festschreiben einschalten. Sie sichert neue Buchungen ab ihrer Aktivierung; bereits gebuchte Posten bleiben zunächst ungesichert und lassen sich über den Assistenten Buchungen festschreiben bis zu einem Datum nachsichern. Erst wenn ein Posten in einem Journal mit aktivierter Option gebucht ist, lässt sich die Option nicht mehr ausschalten, und gesicherte Posten sind nicht mehr änderbar.
- Sperrdatum: Ein Sperrdatum verhindert Änderungen an gebuchten Buchungen mit Buchungsdatum am oder vor dem Sperrdatum und verschiebt neue Buchungen mit einem solchen Datum auf den Tag nach dem Sperrdatum.
- Anmeldung: Erzwingen Sie in den Einstellungen im Abschnitt Permissions den Schalter Enforce two-factor authentication. Mit der Option All users gilt er auch für Portalbenutzer.
Wenn etwas nicht klappt
| Symptom | Ursache | Abhilfe |
|---|---|---|
| Die Zeile Buchhaltung fehlt im Benutzerformular | Die App Buchhaltung oder Rechnungsstellung ist nicht installiert | App installieren; die Zeilen folgen den installierten Apps |
| Die Sachbearbeitung sieht Journalbuchungen | Stufe zu hoch gesetzt | Zeile Buchhaltung auf die niedrigste angebotene Stufe zurücknehmen; in der belegten Community-Konfiguration mit der App Rechnungsstellung allein ist das Rechnungsstellung |
| Rechte lassen sich nicht mehr ändern | Feld Administration falsch gesetzt oder eine Änderung im Superuser-Modus | Die Dokumentation nennt dafür den Odoo Support, der den Zugang über ein Support-Login wiederherstellt |
| Eine Ausnahme im Sperrdatum lässt sich nicht anlegen | Die Stufe Administrator in der Zeile Buchhaltung fehlt | Stufe vergeben oder die Ausnahme von der Buchhaltung anlegen lassen |
| Ein Light-Benutzer kommt nicht in die Buchhaltung | Light hat keinen Zugriff auf die Buchhaltung | Rolle auf Benutzer setzen |
| Die Kanzlei sieht die ganze Datenbank, obwohl nur die Übergabe von Dateien geplant war | Es wurde ein Benutzer statt eines Exportwegs eingerichtet | Benutzer archivieren und auf Journalkopien oder ZIP-Export umstellen |
Wann Sie Hilfe holen sollten
- Vor der ersten Rechtevergabe in einer Datenbank mit mehreren Unternehmen. Die Dokumentation warnt, dass nur erfahrene Benutzer die Mehrfirmen-Einstellungen ändern sollten.
- Wenn Sie sich selbst ausgesperrt haben oder keine Zugriffsrechte mehr vergeben können. Dafür nennt die Dokumentation den Odoo Support.
- Wenn die Funktionstrennung Gegenstand einer Prüfung ist. Wie Sie Ihr Zugriffsberechtigungskonzept und das interne Kontrollsystem beschreiben, klären Sie mit Ihrer Steuerberatung; die Grundlagen stehen im Artikel GoBD und Odoo.