E-Bilanz per KI-Agent
E-Bilanz per KI-Agent: prüfen und vorbereiten, senden in der App
Ein KI-Agent kann Ihre E-Bilanz über unseren MCP-Server oder die REST-API finden, mit der amtlichen ELSTER-Prüfung testen und die Übermittlung vorbereiten – übermittelt wird sie danach von Ihnen in der App, über einen Freigabe-Link und mit Ihrer PIN. Automatisch und ohne Sie geht die E-Bilanz also nicht hinaus. Die E-Bilanz selbst, also die Zuordnung zur Taxonomie und die XBRL-Datei, entsteht in der App. Beim Vorbereiten friert die Schnittstelle den SHA-256 genau dieser Datei als Prüfwert ein, sodass nachvollziehbar bleibt, welche Fassung der Agent Ihnen gezeigt hat.
Stand: 2026-10-19
Was § 5b EStG verlangt
Wer seinen Gewinn nach § 4 Abs. 1, § 5 oder § 5a EStG ermittelt, übermittelt nach § 5b Abs. 1 EStG den Inhalt der Bilanz und der Gewinn- und Verlustrechnung nach amtlich vorgeschriebenem Datensatz durch Datenfernübertragung. Enthält die Handelsbilanz Ansätze, die den steuerlichen Vorschriften nicht entsprechen, sind sie durch Zusätze oder Anmerkungen anzupassen; alternativ kann eine Steuerbilanz übermittelt werden. Auf Antrag kann das Finanzamt zur Vermeidung unbilliger Härten darauf verzichten (§ 5b Abs. 2 EStG).
Der amtliche Datensatz ist die Taxonomie im Format XBRL. In der Software erstellen Sie die E-Bilanz in der App: Zuordnung zu den Taxonomie-Positionen, Kontennachweise, Erzeugen der XBRL-Datei. Erst wenn diese Datei erzeugt ist, hat der Agent etwas zu prüfen.
Die Arbeitsteilung
In der App
E-Bilanz anlegen, Taxonomie zuordnen, XBRL-Datei erzeugen, freischalten, übermitteln mit Ihrer PIN und Berichtigungen. Dort sehen Sie beim Öffnen des Freigabe-Links den vorbereiteten und den aktuellen Stand nebeneinander.
Beim Agenten
list_tax_filings, check_tax_filing, prepare_tax_filing, request_tax_filing_approval und get_tax_operation, dazu get_annual_report_status für den Stand des Geschäftsjahres. Für Prüfen und Vorbereiten braucht der Schlüssel write, zum Lesen genügt read.
Bei Ihnen
Sie prüfen Werte und Prüfwert, öffnen den Link und übermitteln selbst. Ihre ELSTER-PIN gehört nie in den Chat. Ein Recht, mit dem der Agent selbst übermittelt, wird derzeit nicht vergeben.
Der Ablauf Schritt für Schritt
- list_tax_filings mit art=ebilanz (optional year): je E-Bilanz die Kennung id, das Wirtschaftsjahr, status, elster_status, test_mode, transferticket und erzeugt – ob die XBRL-Datei schon vorliegt.
- check_tax_filing mit art=ebilanz und filing_id: die amtliche ELSTER-Prüfung (ERiC, mit Testmerker). Es wird nichts übermittelt, auch nicht in der Sandbox. Antwort: valid, eric.field_errors, hindernisse, manifest und manifest_sha256.
- prepare_tax_filing mit denselben Angaben: legt einen Vorgang an, friert Werte und Prüfwert 30 Minuten ein und nennt sendebereit. Antwort: vorgang_id, zeitraum, manifest, manifest_sha256, hindernisse.
- Der Agent zeigt Ihnen Art, Wirtschaftsjahr, die Beträge aus dem Manifest, den Prüfwert und jedes Hindernis.
- request_tax_filing_approval mit der vorgang_id: liefert freigabe_url, sieben Tage gültig. Sie öffnen den Link angemeldet, die App rechnet den aktuellen Stand neu und vergleicht, und Sie übermitteln dort mit Ihrer PIN.
- get_tax_operation: Stand des Vorgangs samt aktuellem Übermittlungsstand der E-Bilanz, auch wenn Sie in der App gesendet haben.
Beispiel: Vorbereiten und Freigabe anfordern
Der Aufruf zum Vorbereiten und ein gekürztes Manifest mit Platzhaltern:
POST /v1/tax/operations
{ "art": "ebilanz", "filing_id": "<uuid aus list_tax_filings>" }
# Antwort (gekürzt)
{
"vorgang_id": "<uuid>",
"art": "ebilanz",
"zeitraum": "WJ bis 2025-12-31",
"status": "vorbereitet",
"manifest": {
"wirtschaftsjahr_beginn": "2025-01-01",
"wirtschaftsjahr_ende": "2025-12-31",
"bilanzart": "…", "taxonomie": "…", "erzeugt_am": "…",
"betraege": {
"bilanzsumme_aktiva": …, "bilanzsumme_passiva": …,
"jahresergebnis": …, "gewinn_betriebsvermoegensvergleich": …,
"kontensalden": …
},
"xbrl_sha256": "<64 Hex-Zeichen>"
},
"manifest_sha256": "<derselbe Wert>",
"hindernisse": [],
"sendebereit": true,
"expires_at": "…"
}
POST /v1/tax/operations/<vorgang_id>/approval-linkIm Chat genügt ein Satz wie „Bitte die E-Bilanz 2025 amtlich prüfen und mir den Freigabe-Link geben.“ Der Agent ruft dann list_tax_filings, check_tax_filing und prepare_tax_filing auf, zeigt Ihnen Beträge, Prüfwert und jedes Hindernis und fordert den Link an, sobald Sie zustimmen.
Der Prüfwert: SHA-256 der XBRL-Datei
Bei der E-Bilanz ist manifest_sha256 der SHA-256 der erzeugten XBRL-Datei. Die Beträge im Manifest liest die Schnittstelle aus genau dieser Datei; vorher prüft sie, dass Datei und gespeicherter Prüfwert zusammenpassen. Passt das nicht, kommt 409 stand_geaendert, und die Datei wird in der App neu erzeugt.
Ändert sich die E-Bilanz nach dem Vorbereiten, ändert sich auch der Prüfwert. Beim Öffnen des Freigabe-Links vergleicht die App den vorbereiteten mit dem aktuellen Stand – Sie sehen also, ob noch das übermittelt würde, was der Agent Ihnen gezeigt hat.
Hindernisse, die die Antwort nennt
- nicht_erzeugt (409): Für diese E-Bilanz gibt es noch keine XBRL-Datei – zuerst in der App erzeugen.
- zahlung_offen: Die E-Bilanz ist noch nicht freigeschaltet; das geschieht in der App. Was sie kostet, steht auf der Preisseite.
- bereits_uebermittelt: Die E-Bilanz wurde schon übermittelt; eine Berichtigung läuft in der App.
- zertifikat_fehlt oder zertifikat_abgelaufen: Diese Hindernisse betreffen die Übermittlung direkt über die Schnittstelle. Über den Freigabe-Link senden Sie in der App.
- sandbox: In der Sandbox wird nie übermittelt; Prüfen und Vorbereiten gehen.
- Fehler der amtlichen Prüfung stehen in eric.field_errors; der Agent nennt sie Ihnen, korrigiert wird in der App.
Grenzen
- Der Agent übermittelt nicht an das Finanzamt; gesendet wird in der App mit Ihrer PIN.
- Taxonomie-Zuordnung und Kontennachweise bearbeitet der Agent nicht; sie entstehen in der App.
- Berichtigungen einer übermittelten E-Bilanz sind über die Schnittstelle gesperrt.
- Je Schlüssel sind höchstens 30 Prüfungen, Vorbereitungen und Entwürfe pro Stunde möglich; ein Vorgang gilt 30 Minuten, ein Freigabe-Link sieben Tage.
- Die Steuer-Routen – und damit auch die Prüfung der E-Bilanz – erreicht auch ein Schlüssel einer Gesellschaft, die nur das Steuer-Modul nutzt (Rechte Lesen und Schreiben). Abschlüsse und Offenlegungsdateien liest ein solcher Schlüssel nicht.
- Die Software ersetzt keine Steuerberatung; ob Handelsbilanz mit Überleitung oder Steuerbilanz, klären Sie mit Ihrer Kanzlei.
Häufige Fragen
Kann ein KI-Agent die E-Bilanz automatisch übermitteln?
Nein. Der Agent prüft amtlich und bereitet vor; übermittelt wird über den Freigabe-Link in der App mit Ihrer PIN. Ein Recht, mit dem der Agent selbst sendet, wird derzeit nicht vergeben.
Was prüft check_tax_filing bei der E-Bilanz?
Es führt die amtliche ELSTER-Prüfung (ERiC) mit Testmerker auf die erzeugte XBRL-Datei aus. Übermittelt wird dabei nichts; die Antwort nennt valid, Feldfehler und Hindernisse.
Was ist manifest_sha256 bei der E-Bilanz?
Der SHA-256 der erzeugten XBRL-Datei. Er bindet den vorbereiteten Vorgang an genau diese Datei, aus der auch die gezeigten Beträge stammen.
Wie lange gelten Vorgang und Freigabe-Link?
Ein vorbereiteter Vorgang gilt 30 Minuten, der Freigabe-Link sieben Tage. Danach bereitet der Agent neu vor.
Muss ich meine ELSTER-PIN in den Chat schreiben?
Nein, und Sie sollten es nie tun. Über den Freigabe-Link geben Sie die PIN in der App ein; sie erreicht den Agenten und Ihren KI-Anbieter nicht.
Was, wenn die E-Bilanz schon übermittelt wurde?
Dann meldet die Antwort das Hindernis bereits_uebermittelt. Eine Berichtigung erstellen und senden Sie in der App.
Vom selben Anbieter: Jahresabschluss nach HGB – der komplette Leitfaden auf jahresabschluss.io.