ERP
ERPel — kann ein Sprachmodell ein ERP bedienen?
ERP-Oberflächen kleben am Toolkit ihrer Entstehungszeit, und ein Web-Client ändert daran weniger als er verspricht. Der Nighthog prüft, was ein Agent an ERPNext, Odoo und WinLine heute wirklich könnte — und wo die Sache aufhört.
Achtundvierzig Felder und eine Funktionstastenleiste
Vor ein paar Wochen saß ich neben einer Buchhalterin, die seit elf Jahren mit demselben ERP arbeitet. Sie legte einen Auftrag an. Ich zählte mit: achtundvierzig Eingabefelder auf dem Schirm, verteilt auf sechs Reiter, darunter eine Leiste mit Funktionstasten von F2 bis F12. Sie füllte sieben Felder aus. Die anderen einundvierzig waren für ihren Fall bedeutungslos, standen aber trotzdem da, in einer Reihenfolge, die niemand mehr erklären kann.
Sie war schnell. Erschreckend schnell. Elf Jahre Übung sehen so aus.
Ihre neue Kollegin, seit sechs Wochen dabei, brauchte für denselben Auftrag zwölf Minuten und zwei Rückfragen.
Das ist der Zustand, über den hier zu reden ist. Und nein, es ist kein Versagen der Hersteller. Es ist Physik.
Warum die Maske klebt
Ein ERP ist ein System, in dem Warenwirtschaft, Buchhaltung, Lager, Einkauf und Personal auf demselben Datenbestand sitzen. Die Komplexität steckt nicht in der Oberfläche. Sie steckt im Datenmodell, und das Datenmodell ist so kompliziert, weil das Geschäft es ist.
Die Oberfläche hat nur ein Problem: Sie ist damals entstanden. Wer Anfang der 2000er ein Formular gebaut hat, hat es mit dem GUI-Toolkit gebaut, das es damals gab. Ein Feld, ein Label, ein Reiter, wenn der Platz ausgeht. Diese Masken sind seitdem gewachsen, nie neu gedacht. Jedes neue Gesetz, jedes neue Modul hat ein Feld dazugelegt. Man kann in so einer Eingabemaske Archäologie betreiben.
Nun sagt an dieser Stelle jemand: Odoo. Modernes ERP, Web-Client, sieht aus wie 2026.
Sieht es. Ist es aber nur zur Hälfte. Ein Web-Client ist ein anderes Rendering, kein anderes Bedienmodell. HTML5 und JavaScript haben sich prächtig entwickelt, und deshalb sind die Schriften besser, die Abstände stimmen, das Ding läuft auf dem Tablet. Darunter liegt dasselbe Formular mit denselben Feldern in derselben Logik. Man füllt weiterhin ein Formular aus, das jemand anderes für einen Durchschnittsfall entworfen hat, der nie eintritt.
Ich will das nicht kleinreden. Ein gutes Formular ist besser als ein schlechtes. Aber der Sprung von der Windows-Maske zum Web-Client ist ein Sprung in der Darstellung. Kein Sprung in der Bedienung.
Der andere Eingang
Die Frage ist also nicht, wie man die Maske schöner macht. Die Frage ist, ob man daneben einen zweiten Eingang stellen kann.
Nicht statt der Maske. Daneben.
Die Buchhalterin mit elf Jahren Übung soll ihre Funktionstasten behalten. Sie ist damit schneller, als jedes Sprachmodell je sein wird. Aber die Kollegin seit sechs Wochen, der Außendienstler im Auto, der Geschäftsführer, der einmal im Quartal etwas wissen will und die Maske nie gelernt hat: Für die drei ist die Maske eine Mauer.
Nennen wir das Ding ERPel. Ein Agent, der das ERP bedient, statt dass man es selbst bedient. Der Name ist ein Kalauer, und ich bin ganz zufrieden damit.
Bleibt die interessante Frage: Was davon geht heute wirklich?
Was heute wirklich geht
Mehr, als die meisten denken, und der Grund ist unspektakulär. Jedes ernstzunehmende ERP hat längst eine Schnittstelle, die mehr kann als die Maske zeigt. Sie wurde für Webshop-Anbindungen und Datenimporte gebaut. Ein Agent ist für sie nur ein weiterer Aufrufer.
Bei ERPNext ist das am deutlichsten. Das darunterliegende Frappe-Framework erzeugt für jeden DocType automatisch eine REST-Schnittstelle unter /api/resource/<DocType>. Wer einen Kundenauftrag als Datenobjekt definiert hat, hat ihn damit auch schon als Endpunkt. Rollen und Rechte hängen im Role Permissions Manager und gelten für die Schnittstelle genauso wie für die Oberfläche. Ein Änderungsprotokoll ist eingebaut.
Odoo hat seit jeher die externe API mit execute_kw, inzwischen abgelöst durch die JSON-2-API. Wichtig ist der Satz aus der Dokumentation, dass alle Operationen gegen die Zugriffsrechte, die Record Rules und die Feldrechte des jeweiligen Benutzers geprüft werden. Nicht gegen irgendeinen Sonderweg. Gegen dasselbe Rechtesystem, das auch die Maske kontrolliert. Odoo empfiehlt für automatisierte Zugriffe ausdrücklich eigene Bot-Benutzer mit minimalen Rechten statt eines persönlichen Kontos. Wer heute noch auf /xmlrpc/2 sitzt, sollte übrigens die Umstellung einplanen: Die alten Endpunkte fallen mit Odoo 22 im Herbst 2028, in der Online-Variante schon Anfang 2027.
Bei WinLine wird meine Auskunft dünner, und ich sage das lieber, als etwas zu behaupten. Eine öffentlich dokumentierte REST-Schnittstelle nach dem Muster der beiden anderen finde ich nicht. Es gibt die WEB Edition, es gibt die SQL-Datenbank darunter, und es gibt seit der Edition 2025 KI-Funktionen von mesonic selbst, die Stammdaten anlegen und Texte erzeugen. Ob und wie sich ein externer Agent sauber ankoppeln lässt, ist eine Frage an mesonic, nicht an mich.
Das Steckerformat für die Ankopplung heißt inzwischen MCP, Model Context Protocol. Der Gedanke dahinter ist alt und gut: Statt dem Modell die Datenbank hinzuwerfen, definiert man eine Handvoll klar umrissener Werkzeuge. „Kunde suchen.” „Offene Posten zu Kunde lesen.” „Auftragsentwurf anlegen.” Das Modell darf diese Werkzeuge aufrufen und sonst nichts. Kein freies SQL, kein direkter Tabellenzugriff.
Für Odoo und ERPNext gibt es solche MCP-Server, ein halbes Dutzend, teils mit gestaffelten Schreibrechten, Kontingenten und Protokollierung. Alle aus der Community oder von Drittanbietern. Einen offiziellen vom jeweiligen Hersteller gibt es Stand heute nicht. Das ist keine Nebensächlichkeit, wenn man überlegt, so etwas in die Buchhaltung eines Kunden zu stellen.
Wo die Sache aufhört
Jetzt der Teil, den ich in den meisten Artikeln zu diesem Thema vermisse.
Ein ERP ist ein System of Record. Ein Sprachmodell ist nicht deterministisch. Dieselbe Frage kann zweimal leicht unterschiedlich beantwortet werden. Beim Nachschlagen ist das verzeihlich. Bei einer Buchung ist es das Ende der Diskussion. Ein Buchungssatz ist kein Vorschlag.
Die GoBD kennen kein „der Agent war’s”. Jede Änderung an einer Buchung muss mit Datum, Uhrzeit und Benutzer protokolliert sein, der ursprüngliche Inhalt muss feststellbar bleiben, und die Änderungshistorie selbst darf nachträglich nicht mehr veränderbar sein. Das heißt für ERPel eine sehr konkrete Bauvorschrift: eigene Identität im Protokoll, kein geliehenes Konto der Buchhalterin. Wer den Agenten unter dem Login eines Menschen laufen lässt, hat sich die Nachvollziehbarkeit kaputtgemacht und es nicht einmal gemerkt.
Die Daten im ERP sind kein sicherer Eingang. In einer Eingangsrechnung steht Text, den jemand anderes geschrieben hat. In einem Lieferantenstammsatz steht ein Freitextfeld, das ein Lieferant befüllt hat. Ein Agent, der beides liest, liest damit auch Anweisungen, die dort jemand hineingeschrieben hat. Das ist keine Hypothese, das ist die Angriffsklasse, über die ich an anderer Stelle schon geschrieben habe. Ein ERP ist voller Felder, die von außen befüllt werden.
Dann die Sache mit den Artikelnummern. Ein Modell, das eine nicht findet, erfindet unter Umständen eine im richtigen Format. Sie sieht aus wie eine echte. In einem Chat fällt das auf, in einer Auftragsposition nicht.
Und dann sind da die stillen Teilerfolge. Ein Auftrag hat einen Kopf und Positionen, dahinter hängen Lagerbewegung und Beleg. Wenn ein Agent bei Position drei von sieben abbricht, steht ein halber Auftrag im System. Ein Mensch merkt so etwas, weil die Maske schief aussieht. Ein Agent merkt es nur, wenn ihm jemand beigebracht hat, worauf er achten soll.
Der Zuschnitt, der trägt
Aus alldem folgt kein „geht nicht”. Es folgt ein Schnitt, und der verläuft zwischen Lesen und Schreiben.
Lesen ist im Grunde gelöst. „Was hat Kunde Meier letztes Jahr für Baugruppe 4711 bezahlt?” ist heute eine Frage, für die jemand entweder die Maske kennt oder den Kollegen fragt, der sie kennt. Diese Frage kann ein Agent über eine rechtebeschränkte Schnittstelle beantworten, mit Quellenangabe auf den Beleg, und der schlimmste Fehlerfall ist eine falsche Antwort, die man am Beleg nachprüft.
Schreiben geht als Entwurf. ERPel legt den Auftrag an, füllt die sieben Felder, die er aus dem Gespräch kennt, und übergibt. Was danach passiert, passiert in der Maske: Ein Mensch schaut drüber und bucht. Der Agent hat die achtundvierzig Felder weggenommen, nicht die Verantwortung.
Was ich nicht bauen würde, ist ein Agent mit freien Schreibrechten auf die Finanzbuchhaltung. Nicht weil es technisch nicht ginge. Weil ich nicht weiß, wie ich das in einer Betriebsprüfung erkläre.
Wo man anfängt
Nicht in der Buchhaltung. Die ist der am dichtesten regulierte und am besten eingespielte Teil des Hauses, dort ist der Nutzen am kleinsten und der Schaden am größten.
Man fängt bei den Leuten an, die heute die Maske gar nicht erst aufmachen. Der Vertrieb, der wissen will, was ein Kunde zuletzt bestellt hat. Die Geschäftsführung, die eine Zahl für das Gespräch morgen braucht. Der Techniker im Auto. Das sind alles Lesefälle, sie stehen unter den Rechten des jeweiligen Benutzers, und sie ersparen jemand anderem die Unterbrechung.
Von dort aus wird man sehen, ob der zweite Schritt trägt.
Ein Wort noch zum Modell selbst. Wenn Auftragsdaten, Umsätze und Kundenstämme durch ein Sprachmodell laufen, ist die Frage, wo dieses Modell steht, keine akademische. Was dabei zu beachten ist, steht im Artikel über DSGVO-konforme KI. Und wer noch vor der Systemfrage steht, sollte ohnehin zuerst die Vorarbeiten lesen: Ein Agent auf einem ungepflegten Datenbestand ist ein schnellerer Weg zu falschen Antworten.
Wer so etwas nicht nur lesen, sondern bauen will: Genau diese Art Anbindung, ein schmales Werkzeug auf einer vorhandenen Schnittstelle statt einer zweiten Anwendung, macht unsere Schwester-Marke pad.software als Web-Applikationen und APIs.
ERPel ist kein Nachfolger für die Buchhalterin mit elf Jahren Übung. Er ist bestenfalls ein Lehrling: nimmt Nachfragen ab, bereitet vor, holt Auskünfte. Man lässt ihn die Belege sortieren und schaut hin, bevor gebucht wird.
Was er wirklich abschafft, sind nicht die achtundvierzig Felder. Es ist die Notwendigkeit, sie alle zu kennen, bevor man eine Frage stellen darf.
Teilen
LinkedInPassende Werkzeuge
- Odoo Modulares Open-Source-ERP für alle Unternehmensbereiche — von Buchhaltung bis Lagerverwaltung.
- ERPNext ERPNext Open-Source-ERP auf Frappe-Framework — leistungsstark, flexibel und vollständig anpassbar.
- WinLine WinLine, das ERP-System von mesonic für Warenwirtschaft, Buchhaltung, CRM, DMS und PPS im Mittelstand.
Verwandte Artikel