Buchhaltung-API · KI-Agent

Ihre Buchhaltung hat jetzt eine offene API — für KI-Agenten und eigene Programme

Die Schnittstelle öffnet Ihre vollständige Finanzbuchhaltung — doppelte Buchführung nach SKR03 oder SKR04 mit Nebenbüchern, Umsatzsteuer und Übergabe an den Jahresabschluss — für eigene Programme und KI-Agenten.

Stand:

7 Tage kostenlos mit Karte · ohne Kündigung Abo ab Tag 8 · monatlich kündbar

gesendetgeprüftgebuchtEigenes ProgrammSkript · Shop · KI-AgentSchlüsselSchreibrecht · widerrufbarBuchungssatz4920 Telefon1576 Vorsteuer 19 %an1600 VerbindlichkeitenSaldenliste1576 Vorsteuer1600 Verbindlichkeiten4920 TelefonSoll = Haben

Was Sie mit der Schnittstelle tun

Von der kleinen Automatisierung bis zur Anbindung des eigenen Systems.

Ihr Agent · Aufrufe an die Buchhaltung-API200 · gebucht
Prompt: „Buche die Telekom-Rechnung vom 14.02.2026 über 84,90 € auf Telefon.“
AufrufAntwort
POST /incoming-invoices200 · gebucht
GET /journal-entries?account=70012200 · 2 Buchungen
{ "total": 2, "limit": 100, "offset": 0,
  "journal_entries": [
    { "entry_no": 214, "booking_date": "2026-02-14",
      "debit_account": "4920", "credit_account": "70012",
      "amount": 71.34, "tax_key": "V19" },
    { "entry_no": 215, "booking_date": "2026-02-14",
      "debit_account": "1576", "credit_account": "70012",
      "amount": 13.56, "tax_key": "V19" }
  ] }
Der Agent meldet zurück: 71,34 € Telefon und 13,56 € Vorsteuer gegen Kreditor 70012 gebucht — Summe 84,90 €.
Buchen per Anweisung
Buchungen, Rechnungen und Zahlungen auf Anweisung anlegen.
Daten abrufen
Saldenliste, Journal und offene Posten, stets aktuell.
Eigene Software anbinden
Shop oder Warenwirtschaft schreibt Ausgangsrechnungen direkt.
Stapelimport und Export
Bis 5.000 Zeilen je Aufruf, Exporte als Datei.
Ereignisse melden
Signierte Nachricht bei neuer Buchung oder Zahlung.
Übergabe an die Kanzlei
Leseschlüssel statt Vollzugang und Dateiversand.
Alle 26 Operationen im Überblick

Dazu kommen der Zahlungsausgleich zu Rechnungen, das Anlagenverzeichnis und die Vorschau der Anlage EÜR. Den vollständigen Umfang beschreibt das aktuelle Schnittstellenschema.

Lesen (Leserecht genügt)

GET /
Fassung, Gesellschaft und Umfang des Schlüssels
GET /entity
Stammdaten der Gesellschaft
GET /fiscal-years
Wirtschaftsjahre mit Status
GET /accounts
Kontenrahmen (SKR03 oder SKR04) mit eigenen Konten
GET /journal-entries
Journal, filterbar nach Jahr, Zeitraum und Konto
GET /journal-entries/{id}
Einzelne Buchung
GET /saldenliste
Summen- und Saldenliste je Wirtschaftsjahr
GET /open-items
Offene Posten der Kunden und Lieferanten
GET /outgoing-invoices
Ausgangsrechnungen
GET /incoming-invoices
Eingangsrechnungen
GET /receipts
Belege mit Buchungsstand: gebucht, zur Prüfung oder abgewiesen
GET /receipts/{id}
Einzelner Beleg mit Buchungsstand
GET /bank-transactions
Bankumsätze
GET /fixed-assets
Anlagenverzeichnis
GET /euer
Vorschau der Anlage EÜR eines Wirtschaftsjahres
GET /export
Datei eines Geschäftsjahres: Journal, Saldenliste, Buchungsstapel im Kanzlei Software-Format oder GoBD-Paket
GET /webhooks
Abonnierte Ereignisbenachrichtigungen
GET /webhooks/{id}/deliveries
Zustellprotokoll einer Benachrichtigung
GET /entity/settings
Steuerliche und buchhalterische Einstellungen der Gesellschaft
GET /business-partners
Kunden und Lieferanten mit Stammdaten
GET /business-partners/{id}
Ein Geschäftspartner mit Änderungshistorie
GET /fiscal-years/{id}/opening-balances
Stand der Eröffnungswerte
GET /receipts/{id}/proposal
Buchungsvorschlag eines Belegs mit Herkunft der Kontierung und Prüfkennzeichen
GET /receipts/{id}/file
Name, Typ und Download-Pfad der Originaldatei
GET /receipts/{id}/file/content
Originaldatei eines Belegs herunterladen
GET /export/receipt-archive
Belegarchiv eines Geschäftsjahres in Teilen
GET /export/receipt-archive/{part}
Ein Teil des Belegarchivs als ZIP
GET /bank-accounts
Bankkonten mit Abgleich von Kontoauszug und Buchsaldo
GET /bank-transactions/{id}
Einzelner Bankumsatz mit Bankkonto
GET /payments
Zahlungen und Ausgleiche offener Posten
GET /journal-entries/batches
Buchungsstapel (Importe)
GET /cash-book
Kassenbuch
GET /provisions
Rückstellungen
GET /accruals
Rechnungsabgrenzungen
GET /vat-returns
Vorschau der Umsatzsteuer-Voranmeldung mit Kennzahlen
GET /periods
Festschreibungsstand je Monat

Schreiben (Schreibrecht nötig)

POST /journal-entries
Buchung anlegen: Konto, Gegenkonto, Steuerschlüssel
POST /journal-entries/{id}/storno
Buchung stornieren — Storno statt Löschen
POST /journal-entries/batch
Buchungsstapel importieren, bis 5.000 Zeilen, ganz oder gar nicht
POST /outgoing-invoices
Ausgangsrechnung ausstellen und als Forderung buchen
POST /outgoing-invoices/{id}/send
Ausgangsrechnung als PDF, ZUGFeRD oder XRechnung per E-Mail versenden
POST /outgoing-invoices/{id}/payments
Zahlung zu einer Ausgangsrechnung erfassen
POST /incoming-invoices
Eingangsrechnung mit Vorsteuer buchen
POST /incoming-invoices/{id}/payments
Zahlung zu einer Eingangsrechnung erfassen
POST /receipts
Beleg als PDF, Bild oder XRechnung einliefern — gelesen und gebucht wie im Posteingang
POST /webhooks
Ereignisbenachrichtigung an eine eigene Adresse anmelden
POST /webhooks/{id}/disable
Ereignisbenachrichtigung abschalten
POST /accounts
Eigenes Konto anlegen oder einem anderen Posten zuordnen
POST /business-partners
Kunden oder Lieferanten anlegen (Bankverbindung nur in der App)
POST /business-partners/{id}
Stammdaten eines Geschäftspartners ändern
POST /fiscal-years
Geschäftsjahr anlegen
POST /fiscal-years/{id}/opening-balances
Eröffnungswerte aus dem endgültigen Vorjahr vortragen
POST /receipts/{id}/confirm
Beleg buchen wie in der Belegprüfung, auf Wunsch mit Korrektur
POST /receipts/{id}/dismiss
Beleg nicht buchen, mit Begründung
POST /receipts/{id}/discard
Beleg verwerfen — bleibt archiviert und wiederherstellbar
POST /receipts/{id}/delete
Ungeprüften Beleg endgültig löschen
POST /bank-transactions/{id}/book
Bankumsatz buchen
POST /bank-transactions/{id}/match
Bankumsatz einer Rechnung zuordnen, auch mit Skonto
POST /bank-transactions/{id}/ignore
Ungebuchten Bankumsatz ignorieren
POST /bank-statements
Kontoauszug als CSV, CAMT oder MT940 importieren
POST /outgoing-invoices/{id}/cancel
Stornorechnung ausstellen
POST /outgoing-invoices/{id}/credit-notes
Gutschrift zu einer Ausgangsrechnung
POST /incoming-invoices/{id}/cancel
Eingangsrechnung stornieren
POST /payments/{clearing_id}/storno
Zahlung stornieren
POST /journal-entries/batches/{stapel_id}/storno
Ganzen Buchungsimport stornieren
POST /cash-book
Kasseneinzahlung oder -auszahlung buchen
POST /cash-book/{id}/reverse
Kassenbuchung stornieren
POST /fixed-assets
Anlagegut aufnehmen, auch mit Altbestand
POST /fixed-assets/{id}/disposal
Anlagenabgang buchen
POST /fixed-assets/{id}/movements
Nachträgliche Anschaffungskosten, außerplanmäßige AfA, Zuschreibung
POST /afa-runs
AfA-Lauf für einen Zeitraum buchen
POST /provisions
Rückstellung bilden
POST /provisions/{id}/release
Rückstellung auflösen
POST /provisions/{id}/use
Rückstellung in Anspruch nehmen
POST /accruals
Rechnungsabgrenzung bilden
POST /accruals/{id}/release
Rechnungsabgrenzung auflösen
POST /periods/finalize
Zeitraum unwiderruflich festschreiben (eigenes Recht, nach Bestätigung)
POST /saldenliste/publish
Saldenliste an den Jahresabschluss übergeben

Jeder Pfad ist auch unter /v1 erreichbar. Felder, Filter und Antworten beschreibt das Schnittstellenschema unter /openapi.json.

Die Buchhaltung 7 Tage testen

Bank anbinden, Belege hochladen und sehen, was die Software daraus bucht.

Rechte und Sicherheit

Die Schnittstelle gibt frei, was nötig ist, und nichts darüber hinaus.

Buchhaltung · KI-Agent & API · Schlüssel2 aktiv
Der Schlüssel ist auf dieses eine Unternehmen begrenzt. Er gibt ausschließlich Zugriff auf die Buchhaltungsdaten dieses Mandanten — keine anderen Unternehmen, kein Zugriff auf die Software oder deren Logik.
Bezeichnung · PräfixRechteZuletzt genutztStatus
Claude Codejab_live_7Kq2mZ4p…Lesen + Schreiben29.09.2026Aktiv
Steuerkanzleijab_live_Qw81nTe5…Nur Lesen28.09.2026Aktiv
Shop-Anbindung (alt)jab_live_c3Hs0LmV…Lesen + Schreiben17.06.2026Widerrufen
Neuer Schlüssel: Bezeichnung · Gültigkeit 90 Tage, 1 Jahr oder unbegrenzt · Schalter „Schreibzugriff erlauben“. Der Schlüssel wird nur dieses eine Mal angezeigt, danach speichert die Software nur seinen Hash.
Auf eine Gesellschaft begrenzt
Die Gesellschaft ergibt sich aus dem Schlüssel.
Rechte je Schlüssel
Lesen oder Schreiben, befristbar, jederzeit widerrufbar.
GoBD bleibt gewahrt
Derselbe Buchungskern, Storno statt Löschen.

Ein Schlüssel mit Schreibrecht kann Buchungen unmittelbar auslösen — beginnen Sie mit Leserecht.

Was die Schnittstelle nicht öffnet

Sie steuern den Zugriff über Rechte und Widerruf; eine zusätzliche Freigabe muss Ihr angebundenes Programm vorsehen.

  • Keine freie Abfrage und keinen Tabellenzugriff — nur die festgelegten Operationen.
  • Keine festgeschriebenen Zeiträume: dort weist der Buchungskern neue Buchungen ab, wie in der Oberfläche.
  • Kein Schreiben nach einem Rollenwechsel: verliert die Person, die den Schlüssel angelegt hat, ihr Bearbeitungsrecht, weist die Schnittstelle schreibende Aufrufe ab.
  • Kein zweites Anzeigen: der Schlüssel erscheint beim Anlegen genau einmal und wird danach nur als Prüfwert (Hash) gespeichert. Das Anlegen bestätigen Sie mit Ihrem zweiten Faktor.

Anbindung einrichten

Ein Weg für eigene Programme, Skripte und KI-Agenten.

  1. 01

    Schlüssel anlegen

    Im Bereich „KI-Agent & API“: Leserecht oder Schreibrecht, auf Wunsch befristet.

  2. 02

    Programm verbinden

    Den Schlüssel im Kopf jeder Anfrage an die Basis-Adresse senden.

  3. 03

    KI-Agent über MCP

    Die Verbindung erfolgt zum bereitgestellten MCP-Endpunkt, direkt oder über eine lokale Verbindungsbrücke.

  4. 04

    Schema einlesen

    Das OpenAPI-Schema ist ohne Schlüssel abrufbar; jede Operation darin verlangt ihn.

Basis-Adresse und MCP-Adresse zeigt der Bereich „KI-Agent & API“ in der Buchhaltung.

Befehlsbeispiele

Saldenliste abrufen (Leserecht):

curl -H "Authorization: Bearer jab_live_…" \
  "$BASIS_URL/saldenliste?fiscal_year_id=<jahr-id>"

Eingangsrechnung buchen (Schreibrecht):

curl -X POST -H "Authorization: Bearer jab_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "fiscal_year_id": "<jahr-id>",
        "idempotency_key": "<neue-uuid>",
        "vendor_name": "<Lieferant>",
        "invoice_date": "<rechnungsdatum>",
        "gross_amount": <bruttobetrag>,
        "gegenkonto": "4920", "tax_key": "V19" }' \
  "$BASIS_URL/incoming-invoices"

Für jeden neuen Vorgang eine neue Kennung (idempotency_key) erzeugen. Nur bei der Wiederholung derselben Anfrage bleibt sie unverändert — dann entsteht keine zweite Buchung.

MCP-Endpunkt direkt eintragen (Ihr KI-Programm, Verbindungsart HTTP):

Adresse: $MCP_URL
Kopf:    Authorization: Bearer jab_live_…

Über eine lokale Verbindungsbrücke (Konfigurationsdatei Ihres KI-Programms) — der Schlüssel steht im env-Block, nicht in den Befehlsargumenten:

{
  "mcpServers": {
    "buchhaltung": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "$MCP_URL",
        "--header", "Authorization:${JAB_AUTH}"],
      "env": { "JAB_AUTH": "Bearer jab_live_…" }
    }
  }
}

Tragen Sie die Verbindung in Ihre persönliche Konfiguration ein, nicht in eine Projektdatei im Repository.

Schnittstellenschema (ohne Schlüssel abrufbar, beschreibt nur die Form, nicht die Daten):

$BASIS_URL/openapi.json

Als Anmeldung wählen Sie in Ihrem Programm „API-Schlüssel“ mit dem Typ „Bearer“ und tragen Ihren Schlüssel ein. Mit einem Leseschlüssel liest der Agent nur; buchen kann er erst mit Schreibrecht.

KI-Agent sicher anbinden

Fünf Regeln, damit der Agent nur tut, was Sie wollen.

Schlüssel nie in den Chat
Er gehört in den Kopf der Anfrage oder als Umgebungsvariable in die Konfiguration Ihres KI-Programms. Im Gespräch läge er im Verlauf des Modells.
Mit Leserecht beginnen
Zuerst ein Leseschlüssel mit Ablaufdatum. Buchen und Rechnungsversand schalten Sie später frei, mit einem eigenen Schlüssel.
Jeden Versand bestätigen
Vor jeder Rechnung und jedem E-Mail-Versand nennt der Agent Empfänger und Betrag und wartet auf Ihr Ja. Der MCP-Endpunkt markiert diese Werkzeuge als nicht rückholbar.
Fremde Texte sind Daten
Verwendungszweck, Lieferantenname und Positionstexte aus Belegen und Bankumsätzen stammen von Dritten und können Anweisungen enthalten. Der Agent behandelt sie als Daten, nie als Auftrag.
Konfiguration privat halten
Die Verbindung gehört in Ihre persönliche Konfiguration, nie in eine Projektdatei, die mit dem Quellcode geteilt wird.

Weiterführende Seiten

Häufige Fragen

Kurz und konkret zu Produkt, Ablauf und Einsatzbereich.

Eine dokumentierte REST-Schnittstelle zu Ihrer Buchhaltung mit 26 Operationen. Programme und KI-Agenten lesen darüber Konten, Journal, Saldenliste, offene Posten, Rechnungen, Bankumsätze und das Anlagenverzeichnis; mit Schreibrecht legen sie Buchungen an, stornieren sie, stellen Rechnungen aus, erfassen Zahlungen oder importieren Buchungsstapel. Den Zugang erstellen Sie selbst im Bereich „KI-Agent & API“, angemeldet wird mit einem Schlüssel im Kopf jeder Anfrage.

Ja. Anbinden lässt sich jedes Programm, das eine REST-Schnittstelle oder das Model Context Protocol (MCP) ansprechen kann — ein KI-Agent, ein Skript oder Ihre eigene Software. Ein Schlüssel mit Schreibrecht kann Buchungen unmittelbar auslösen. Sie steuern den Zugriff über Rechte und Widerruf; eine zusätzliche Freigabe muss Ihr angebundenes Programm vorsehen. Der Agent ist Ihr Werkzeug und nicht Teil der Software: Daten erreichen ihn nur, wenn Sie ihn anbinden.

Nein. Jeder Schlüssel gehört genau einer Gesellschaft; sie ergibt sich aus dem Schlüssel und ist kein Teil der Anfrage. Es gibt keine freie Abfrage und keinen Tabellenzugriff, nur die festgelegten Operationen. Schreibende Aufrufe laufen über denselben Buchungskern wie die Oberfläche und halten dieselben Regeln ein: Soll gleich Haben, Storno statt Löschen, keine Buchung in festgeschriebene Zeiträume.

Beim Anlegen entscheiden Sie: nur Lesen oder Lesen und Schreiben. Ein Leseschlüssel ruft Daten ab, bucht aber nichts. Schlüssel lassen sich auf 90 Tage oder ein Jahr befristen oder unbefristet anlegen und jederzeit widerrufen. Der Schlüssel wird genau einmal angezeigt und danach nur als Prüfwert (Hash) gespeichert.

Lesen: Stammdaten, Wirtschaftsjahre, Kontenrahmen, Journal, Saldenliste, offene Posten, Ein- und Ausgangsrechnungen, Bankumsätze, Anlagenverzeichnis und die Vorschau der Anlage EÜR. Schreiben: Buchung anlegen oder stornieren, Ausgangsrechnung ausstellen und versenden, Eingangsrechnung buchen, Zahlungen zu Rechnungen erfassen, Buchungsstapel importieren. Zum Beispiel: „Gib mir die Saldenliste 2025 als Tabelle“ oder „Welche Kundenrechnungen sind noch offen?“

Für eigene Skripte helfen sie. Mit einem KI-Agenten genügt oft eine Anweisung in natürlicher Sprache: Sie geben ihm die Basis-Adresse und den Schlüssel, er baut die Aufrufe selbst. Für den ersten Test reicht ein einzelner Aufruf auf der Kommandozeile mit dem Schlüssel im Kopf der Anfrage.

Ja. Die Buchhaltung stellt einen MCP-Endpunkt bereit; zu installieren ist nichts. Die Verbindung erfolgt zum bereitgestellten MCP-Endpunkt, direkt oder über eine lokale Verbindungsbrücke, wenn Ihr KI-Programm nur lokale Server startet. Angemeldet wird mit Ihrem Schlüssel (jab_live_…). Der MCP-Endpunkt ist ein schmaler Adapter vor derselben Schnittstelle — mit denselben Rechten und denselben GoBD-Regeln.

Die Buchhaltung 7 Tage testen

Im Bereich „KI-Agent & API“ legen Sie den ersten Schlüssel selbst an — am besten zuerst nur mit Leserecht.