Zum Inhalt springen
APIs, Middleware & Architektur

Schnittstellen dokumentieren: OpenAPI statt Wissen im Kopf

Shop-ERP-Schnittstellen mit OpenAPI beschreiben: Felder, Fehlercodes, Beispiele und Rechte, die Beschreibung als Vertrag und das Übergabepaket beim Wechsel.

18 Min. Lesezeit API-EntwicklungDokumentationOpenAPI

Kurz und einfach erklärt

Ein Shop und ein Programm für Lager und Rechnungen tauschen Daten aus. Oft weiß nur ein Mensch, wie das genau geht.

Ist er nicht da, dauert die Suche nach einem Fehler lange. Das kostet Geld.

Eine Beschreibung nach dem Standard OpenAPI hilft. Sie sagt, welche Daten es gibt. Sie sagt auch, was bei einem Fehler passiert.

Die Beschreibung liegt beim Code. Bei jeder Änderung wird sie mit geprüft.

Wechseln Sie die Firma, die den Code pflegt, geht die Beschreibung mit. Wir helfen Ihnen dabei.

Die Schnittstelle zwischen Shop und Warenwirtschaft läuft seit Jahren. Welche Felder sie überträgt, warum das ERP einen Auftrag ablehnt und was nach einer Störung am Wochenende zu tun ist, weiß im Zweifel eine einzige Person: der Entwickler, der sie gebaut hat. Solange er erreichbar ist, fällt das kaum auf. Teuer wird es bei der nächsten Fehlersuche, bei einer Erweiterung für ein neues Lager oder wenn der Dienstleister wechselt. Die OpenAPI-Spezifikation definiert eine standardisierte, von der Programmiersprache unabhängige Beschreibung für HTTP-Schnittstellen, mit der Menschen und Programme die Fähigkeiten eines Dienstes erkennen, ohne Quellcode, weitere Dokumentation oder mitgeschnittenen Datenverkehr (OpenAPI-Spezifikation). Dieser Beitrag zeigt, was in eine solche Beschreibung gehört, wie sie zum Vertrag für Tests und Abnahme wird, wie sie im Repository aktuell bleibt und was ein Übergabepaket beim Dienstleisterwechsel enthalten sollte. Am Ende steht ein Fahrplan, mit dem Sie die Arbeit für 2027 einplanen.

Das Wichtigste in Kürze

  • Die OpenAPI-Spezifikation beschreibt HTTP-Schnittstellen so, dass Menschen und Programme sie ohne Quellcode verstehen; aktuell ist Version 3.2.1 vom 10. September 2026 (OpenAPI-Spezifikation).
  • Eine brauchbare Beschreibung nennt je Endpunkt Felder, Datentypen, Beispiele, Rechte, Betriebsgrenzen und jede bekannte Fehlerantwort wie 409 oder 429 samt der Reaktion, die der Client daraus ableiten soll.
  • Als Vertrag eingesetzt, läuft jede Änderung durch Review, Prüflauf und Vertragstest, bevor Shop oder ERP sie sehen. Das macht auch die Abnahme prüfbar: Alle Antworten der Testläufe entsprechen dem Schema.
  • Die Beschreibung gehört versioniert in dasselbe Repository wie der Code. Veraltete Dokumentation erschwert laut OWASP das Finden und Beheben von Schwachstellen (OWASP API Security Top 10).
  • Für das Ende eines Outsourcing-Verhältnisses verlangt der BSI-Baustein OPS.2.3 feste Regeln (BSI IT-Grundschutz). Ins Übergabepaket gehören Beschreibung, Tests, Betriebshandbuch und vertraglich geklärte Nutzungsrechte.
  • Für Umsätze ab 1. Januar 2027 endet die Übergangsregel für B2B-Rechnungen im Inland in sonstigen Formaten bei mehr als 800.000 Euro Vorjahresumsatz (Umsatzsteuergesetz). Wer dafür Schnittstellen ändert, sollte sie vorher beschreiben.

Warum Wissen im Kopf teuer wird

In vielen Shop-ERP-Projekten entsteht die Schnittstelle unter Zeitdruck. Ein Entwickler ordnet die Felder des Shops denen des ERP zu, fängt Sonderfälle im Code ab und testet so lange, bis die Aufträge durchlaufen. Dokumentiert wird, was nötig ist, um den Go-live zu überstehen: eine Seite im Wiki, ein paar Kommentare im Code, ein Mailwechsel mit dem Hersteller des ERP. Was fehlt, ist eine Beschreibung, die genau sagt, welche Anfrage zu welchem Ergebnis führt, und die nach dem nächsten Release noch stimmt.

Im Alltag zeigt sich das als Wartezeit. In der weltweiten Entwicklerbefragung von Stack Overflow gaben 61 Prozent (Stack Overflow Developer Survey 2024) der beruflich tätigen Entwicklerinnen und Entwickler, die den Abschnitt zur Produktivität beantworteten, an, täglich mehr als 30 Minuten mit der Suche nach Antworten oder Lösungen zu verbringen; mitgezählt sind die eigene Suche, die Frage an Kolleginnen und Kollegen und das Warten auf deren Antwort. 45 Prozent (Stack Overflow Developer Survey 2024) derer, die im selben Abschnitt Aussagen zum Wissensaustausch bewerteten, sehen in Wissenssilos ein Hindernis. Eine Schnittstelle, die nur eine Person versteht, ist ein Silo dieser Art: Jede Frage dazu landet bei ihr, und jede Abwesenheit verlängert die Fehlersuche.

Dazu kommt der Arbeitsmarkt. In Deutschland fehlen nach der aktuellen Studie des Digitalverbands 79.000 IT-Fachkräfte (Bitkom), und 78 Prozent (Bitkom) der befragten Unternehmen ab drei Beschäftigten beobachten einen Mangel. Wer die einzige Person verliert, die eine Schnittstelle kennt, findet nicht ohne Weiteres Ersatz, der sie aus dem Code heraus rekonstruiert. Eine Beschreibung ersetzt diese Person nicht. Sie verkürzt aber die Einarbeitung, weil der Nachfolger nicht mehr aus Code und Protokollen erschließen muss, was die Schnittstelle eigentlich tun soll.

  • Fehlersuche: Ein Auftrag kommt im ERP nicht an. Ohne Beschreibung bleibt offen, ob der Shop falsch sendet oder das ERP zu Recht ablehnt.
  • Erweiterung: Ein neues Feld, etwa die Kundenartikelnummer, soll mitlaufen. Niemand weiß sicher, welche Abnehmer das bisherige Format lesen.
  • ERP-Update: Der Hersteller ändert seine API. Ohne Beschreibung der eigenen Seite fehlt die Liste dessen, was davon betroffen ist.
  • Dienstleisterwechsel: Der neue Partner übernimmt die Schnittstelle und rekonstruiert zuerst, was der bisherige im Kopf hatte.

Was die OpenAPI-Spezifikation beschreibt

Die OpenAPI-Spezifikation legt fest, wie eine HTTP-Schnittstelle in einem maschinenlesbaren Dokument beschrieben wird. Ein Konsument soll den entfernten Dienst damit verstehen und mit wenig eigener Logik ansprechen können (OpenAPI-Spezifikation). Die aktuelle Fassung trägt die Nummer 3.2.1 und ist auf den 10. September 2026 datiert (OpenAPI-Spezifikation). Sie gehört zur Reihe 3.2, deren erste Fassung 3.2.0 vom 19. September 2025 stammt (OpenAPI-Spezifikation). Patch-Versionen wie 3.2.1 beheben Fehler im Dokument oder präzisieren Formulierungen, ändern aber nicht den Funktionsumfang der Reihe (OpenAPI-Spezifikation).

Technisch ist eine OpenAPI-Beschreibung ein JSON-Objekt, das wahlweise als JSON oder YAML geschrieben wird (OpenAPI-Spezifikation). Datenstrukturen beschreibt das Schema-Objekt; es ist standardmäßig eine Obermenge von JSON Schema in der Fassung Draft 2020-12 (OpenAPI-Spezifikation). Für Schnittstellen, bei denen das ERP oder ein Zahlungsdienst von sich aus Nachrichten schickt, gibt es das Feld webhooks: Es beschreibt eingehende Aufrufe, die der Konsument der API umsetzen kann (OpenAPI-Spezifikation). Eine Beschreibung erfasst damit beide Richtungen eines Datenflusses, nicht nur die Endpunkte, die der Shop selbst aufruft. Wann sich Push und wann sich Abfragen lohnen, vergleicht der Beitrag zu Webhooks und Polling.

Eine Grenze nennt die OpenAPI Initiative selbst: OpenAPI kann nicht jede denkbare HTTP-Schnittstelle beschreiben (OpenAPI Initiative). Wer zuerst programmiert und später beschreibt, stößt deshalb gelegentlich auf Konstruktionen, die sich nur verbogen abbilden lassen. Die Initiative empfiehlt, die Beschreibung zuerst zu schreiben und den Code daraus folgen zu lassen (OpenAPI Initiative). Bei einer neuen Anbindung ist das der einfachere Weg. Für bestehende Schnittstellen funktioniert er nicht mehr; dort hilft das Vorgehen weiter, das der Abschnitt zur nachträglichen Beschreibung zeigt.

Was in eine Schnittstellenbeschreibung gehört

Eine Beschreibung, die nur Pfade auflistet, hilft bei der Fehlersuche wenig. Das OWASP-Projekt für API-Sicherheit empfiehlt, alle Aspekte einer API zu dokumentieren: Authentifizierung, Fehler, Weiterleitungen, Ratenbegrenzung, CORS-Regeln und die Endpunkte samt Parametern, Anfragen und Antworten (OWASP API Security Top 10). Für eine Shop-ERP-Schnittstelle lässt sich das auf sechs Bausteine herunterbrechen, die zusammen beantworten, was ein neuer Entwickler am ersten Tag wissen muss.

Endpunkte und Methoden

Jeder Pfad mit Methode, Zweck und eindeutiger operationId, etwa POST /orders für die Auftragsübergabe. Abgelöste Operationen tragen die Markierung deprecated.

Felder und Datentypen

Pflichtfelder, Formate, Längen und erlaubte Werte je Feld, dazu die Zuordnung zum ERP-Feld. Wiederkehrende Strukturen wie Adresse oder Position stehen einmal unter components.

Fehlerantworten

Jede bekannte Fehlerantwort mit Statuscode, Bedeutung und Format. Der Client muss erkennen, ob er wiederholen, korrigieren oder einen Menschen fragen soll.

Beispiele

Vollständige Beispielanfragen und -antworten für typische Fälle: B2B-Auftrag mit Kundenartikelnummer, Teillieferung, Storno. Beispiele erklären schneller als Feldlisten.

Rechte und Scopes

Welches Verfahren die Schnittstelle schützt und welche Scopes eine Operation verlangt. Das Sicherheitsschema beschreibt den Weg, nicht die Zugangsdaten selbst.

Grenzen des Betriebs

Ratenlimits, Seitengrößen bei Listen, Zeitüberschreitungen und Wartungsfenster. Diese Angaben entscheiden, ob ein nächtlicher Massenimport durchläuft.

Wie das aussieht, zeigt ein gekürzter Ausschnitt einer Auftragsschnittstelle. Er beschreibt eine einzige Operation mit Sicherheitsangabe, Idempotenzschlüssel, Beispiel und den Antworten, die im Betrieb den Unterschied machen.

openapi/orders.yaml
openapi: 3.2.1
info:
  title: Auftragsschnittstelle Shop-ERP
  version: 2.4.0
paths:
  /orders:
    post:
      operationId: createOrder
      summary: Auftrag aus dem Shop an das ERP übergeben
      tags: [Aufträge]
      security:
        - erpOAuth: [orders.write]
      parameters:
        - name: Idempotency-Key
          in: header
          required: true
          description: Je Bestellung fest, bei Wiederholung identisch
          schema: { type: string, format: uuid }
      requestBody:
        required: true
        content:
          application/json:
            schema: { $ref: '#/components/schemas/Order' }
            examples:
              b2b: { $ref: '#/components/examples/B2bOrder' }
      responses:
        '200':
          description: Auftrag übernommen, ERP-Belegnummer in erpNumber
        '409':
          description: Bestellnummer wurde bereits übertragen
          content:
            application/problem+json:
              schema: { $ref: '#/components/schemas/Problem' }
        '429':
          description: Zu viele Anfragen, Retry-After beachten
          headers:
            Retry-After:
              schema: { type: integer }

Drei Details tragen hier die Last. Das Schema Order steht einmal unter components und wird per $ref eingebunden; Objekte dort wirken nur, wenn sie von außen referenziert werden (OpenAPI-Spezifikation). Das Beispiel B2bOrder liefert einen vollständigen Auftrag, an dem neue Entwickler und Testwerkzeuge gleichermaßen ansetzen. Und der Idempotenzschlüssel im Kopf der Anfrage ist dokumentiert, statt nur im Code zu stehen. Warum er bei Wiederholungen Doppelbuchungen verhindert, erklärt der Beitrag zu Idempotenz und Retry-Strategien.

Personenbezogene Felder kennzeichnen

Felder wie Name, Lieferadresse oder E-Mail lassen sich mit einer eigenen Erweiterung markieren, etwa x-personal-data: true. Erweiterungen tragen laut Spezifikation das Präfix x- (OpenAPI-Spezifikation). Die Markierung hilft beim Verzeichnis der Verarbeitungstätigkeiten, das nach Art. 30 Abs. 1 Buchstabe c die Kategorien personenbezogener Daten beschreiben muss (DSGVO), und beim Löschkonzept über Systemgrenzen hinweg.

Fehlercodes: die Antworten, die im Alltag zählen

Die Spezifikation verlangt nicht, jeden denkbaren Statuscode aufzuführen, weil nicht alle vorab bekannt sind. Erwartet wird aber, dass die Dokumentation die erfolgreiche Antwort und alle bekannten Fehler abdeckt (OpenAPI-Spezifikation). Für eine Auftragsschnittstelle sind das meist wenige, dafür folgenreiche Fälle. Entscheidend ist, dass die Beschreibung nicht nur den Code nennt, sondern auch die Reaktion, die der Client daraus ableiten soll. Sonst wiederholt die Middleware einen Auftrag, der längst gebucht ist, oder sie gibt einen Fall auf, der nach einer Minute Wartezeit durchgegangen wäre.

StatusBedeutung nach NormTypischer Fall Shop-ERPReaktion des Clients
200 OKAnfrage erfolgreich (RFC 9110)Auftrag übernommen, Belegnummer zurückBelegnummer im Shop speichern
409 ConflictKonflikt mit dem aktuellen Zustand der Ressource (RFC 9110)Bestellnummer bereits übertragennicht wiederholen, vorhandenen Beleg abgleichen
422 Unprocessable ContentInhalt verstanden, aber nicht verarbeitbar (RFC 9110)Artikel im ERP gesperrt, Pflichtfeld leerDaten korrigieren, Fall an die Fachabteilung
429 Too Many Requestszu viele Anfragen in einem Zeitraum (RFC 6585)Ratenlimit des Cloud-ERP erreichtRetry-After abwarten, dann wiederholen

Für das Format der Fehlerantwort gibt es einen Standard: RFC 9457 definiert „Problem Details“, mit denen HTTP-APIs Fehler maschinenlesbar beschreiben, ohne eigene Fehlerformate erfinden zu müssen (RFC 9457). Eine Antwort trägt dann den Medientyp application/problem+json mit Feldern wie type, title, status und detail. In der OpenAPI-Beschreibung steht dieses Schema einmal unter components und wird an jede Fehlerantwort gehängt. Bei 429 kann der Server im Header Retry-After angeben, wie lange der Client warten soll (RFC 6585). Wie Wiederholungen, Warteschlangen und Benachrichtigungen dazu zusammenspielen, beschreibt der Beitrag zur Fehlerbehandlung in Schnittstellen; die Drosselung großer Importe behandelt der Beitrag zu Cloud-ERP-API-Limits.

Was kein Schema ausdrückt

Ein Schema sagt, dass quantity eine ganze Zahl ab 1 ist. Es sagt nicht, dass ein Auftrag erst übertragen werden darf, wenn der Kunde im ERP angelegt ist, dass Preise aus dem ERP Vorrang vor denen des Shops haben oder dass ein Storno nach dem Versand als Retoure läuft. Solche Regeln gehören trotzdem in die Beschreibung, denn genau sie gehen bei einem Personalwechsel verloren. Die Spezifikation erlaubt in Beschreibungsfeldern Formatierung nach CommonMark (OpenAPI-Spezifikation) und eigene Erweiterungen mit dem Präfix x- (OpenAPI-Spezifikation). Damit lässt sich je Operation ein Absatz zu den fachlichen Regeln und je Feld die Herkunft im ERP festhalten.

  • Reihenfolge: welche Stammdaten vorhanden sein müssen, bevor ein Beleg übertragen wird, und was bei fehlendem Kundenstamm geschieht.
  • Führendes System je Datenart: wer bei Preisen, Beständen, Kundenstamm und Belegnummern das letzte Wort hat.
  • Takt und Mengen: wann Abgleiche laufen, wie viele Datensätze ein Lauf in der Regel umfasst und was bei Überschreitung passiert.
  • Zuordnung zum ERP: Feld im Shop, Feld im ERP und Umrechnung, wie im Beitrag zum Daten-Mapping zwischen ERP und Shop beschrieben.
  • Zuständigkeit: wer bei welchem Fehlerbild entscheidet und wie die Fachabteilung erreichbar ist.

Was nicht sinnvoll in die OpenAPI-Datei passt, gehört in ein kurzes Betriebshandbuch im selben Repository: Abläufe beim Wiederanlauf, bekannte Störungen, Ansprechpartner beim ERP-Hersteller. Steuerlich relevante Abläufe beschreibt zusätzlich die GoBD-Verfahrensdokumentation. Die technische Beschreibung ersetzt sie nicht, liefert ihr aber die Feldlisten und Datenflüsse, die sonst von Hand zusammengetragen werden.

Die Beschreibung als Vertrag für Tests und Abnahme

Eine Beschreibung, die neben dem Code herläuft, veraltet. Die OpenAPI Initiative empfiehlt deshalb, Prüfwerkzeuge, die den Code gegen die Beschreibung abgleichen, in die Continuous Integration aufzunehmen; Abweichungen fallen dann umgehend auf, und die Beschreibung lässt sich ohne Sorge ändern (OpenAPI Initiative). Aus der Dokumentation wird so ein Vertrag zwischen Shop, Middleware und ERP: Was dort steht, gilt, und was davon abweicht, ist ein Fehler, egal auf welcher Seite.

Vertragstests prüfen, ob eine API ihren dokumentierten Vertrag weiterhin erfüllt. Der Beitrag zur API-Versionierung beschreibt sie als Schutz vor unbemerkten Breaking Changes. Wo sie laufen, ohne bei jedem Commit das echte ERP zu belasten, zeigt der Beitrag zu Testumgebungen für ERP-Schnittstellen. Für die Abnahme eines Projekts hat die Beschreibung einen weiteren Vorteil: Sie macht das Abnahmekriterium prüfbar. Statt „die Schnittstelle funktioniert“ steht im Protokoll, dass alle Antworten der Testläufe dem Schema entsprechen und jede beschriebene Fehlerantwort mindestens einmal ausgelöst wurde.

Vom Änderungswunsch zur abgenommenen Schnittstelle

  1. 1

    Änderung beschreiben

    Das neue Feld oder die neue Antwort wird zuerst in der OpenAPI-Datei ergänzt, mit Beispiel und Fehlerfall.

  2. 2

    Review

    Fachabteilung und Entwicklung prüfen den Vorschlag im Repository, bevor Code entsteht.

  3. 3

    Prüflauf

    Ein Linter prüft Syntax und Hausregeln, etwa ob jede Operation ihre Fehlerantworten nennt.

  4. 4

    Vertragstest

    Tests gleichen die Antworten der Implementierung gegen das Schema ab, in der Pipeline statt im Livebetrieb.

  5. 5

    Abnahme

    Das Protokoll nennt die Version der Beschreibung, gegen die getestet wurde, und die ausgelösten Fehlerfälle.

  6. 6

    Veröffentlichung

    Die Beschreibung erhält eine neue Versionsnummer; das Änderungsprotokoll nennt die Auswirkung auf Konsumenten.

Pflege im Repository

OpenAPI-Beschreibungen sind nach Auffassung der OpenAPI Initiative kein reines Dokumentationsartefakt, sondern vollwertige Quelldateien, die Codegerüste, Tests und die Darstellung der Dokumentation steuern können. Sie gehören deshalb in die Versionsverwaltung, und zwar unter die ersten Dateien, die eingecheckt werden (OpenAPI Initiative). Ebenso wichtig ist eine einzige maßgebliche Quelle: Wer die Beschreibung aus Code-Annotationen erzeugt und zusätzlich eine von Hand bearbeitete Datei eincheckt, hat zwei Stände, von denen einer früher oder später veraltet (OpenAPI Initiative).

  • Die Beschreibung liegt im selben Repository wie der Code der Schnittstelle, nicht in einem Wiki.
  • Jede Änderung am Verhalten ändert im selben Pull Request auch die Beschreibung.
  • info.version wird bei jeder Veröffentlichung hochgezählt; das Feld beschreibt die Version des Dokuments, nicht die der Spezifikation (OpenAPI-Spezifikation).
  • Abgelöste Operationen tragen deprecated: true, statt stillschweigend zu verschwinden; Konsumenten sollen sie dann nicht mehr nutzen (OpenAPI-Spezifikation).
  • Ein Änderungsprotokoll nennt je Version, was additive Ergänzung und was Breaking Change ist.
  • Die gerenderte Dokumentation ist nur für Berechtigte erreichbar, nicht öffentlich im Netz.

Den letzten Punkt nennt OWASP ausdrücklich: API-Dokumentation soll nur denen zugänglich sein, die die API nutzen dürfen (OWASP API Security Top 10). Im selben Kapitel steht der Grund, warum Pflege kein Selbstzweck ist. Veraltete Dokumentation erschwert es, Schwachstellen zu finden und zu beheben; fehlende oder nicht aktualisierte Dokumentation gilt als Merkmal von API9:2023, der unzureichenden Bestandsführung von Schnittstellen (OWASP API Security Top 10). Wer seine Beschreibung pflegt, weiß also nicht nur, was die Schnittstelle tun soll, sondern auch, welche Versionen und Endpunkte noch erreichbar sind.

Das Übergabepaket beim Dienstleisterwechsel

Ein Dienstleisterwechsel ist der Moment, in dem sich zeigt, ob eine Schnittstelle dokumentiert ist. Das BSI verlangt im IT-Grundschutz-Baustein zur Nutzung von Outsourcing mit der Anforderung OPS.2.3.A7, dass für geplante wie ungeplante Beendigungen Regelungen getroffen werden, einschließlich der Frage, wie Informationen und Daten zurückgegeben werden (BSI IT-Grundschutz). Für softwarenahe Dienstleistungen empfiehlt derselbe Baustein unter OPS.2.3.A21 Hinterlegungsverträge, die auch festlegen, wie häufig der Quellcode hinterlegt und dokumentiert wird (BSI IT-Grundschutz). Wer Entwicklung und Betrieb einer Schnittstelle an einen Dienstleister vergibt, kann diese Gedanken direkt übernehmen: Das Übergabepaket wird nicht am letzten Tag gepackt, sondern laufend gepflegt.

Rechtlich lohnt ein Blick auf die Nutzungsrechte. Schafft ein Arbeitnehmer ein Computerprogramm in Wahrnehmung seiner Aufgaben, ist nach § 69b UrhG ausschließlich der Arbeitgeber zur Ausübung aller vermögensrechtlichen Befugnisse berechtigt, sofern nichts anderes vereinbart ist (Urheberrechtsgesetz). Für einen externen Dienstleister trifft die Vorschrift keine solche Zuordnung. Welche Rechte an Code, Beschreibung, Testsammlung und Betriebshandbuch übergehen, sollte deshalb im Vertrag stehen, bevor der erste Endpunkt gebaut ist. Das ist eine organisatorische Empfehlung und ersetzt keine Rechtsberatung.

BestandteilInhaltPrüffrage bei der Übergabe
OpenAPI-Beschreibungalle Operationen, Schemas, Fehlerantworten, Beispiele, aktuelle VersionBesteht der Prüflauf gegen die laufende Implementierung?
TestsammlungVertragstests, Beispieldaten, Anleitung zum StartLaufen die Tests beim neuen Partner ohne Hilfe des alten?
BetriebshandbuchAbläufe, Takte, Wiederanlauf, bekannte StörungenKann der neue Partner einen typischen Fehler allein beheben?
ZuordnungstabelleFeld im Shop, Feld im ERP, Umrechnung, führendes SystemStimmt die Tabelle mit den Beispielen der Beschreibung überein?
ZugängeListe der technischen Konten und Scopes, ohne GeheimnisseSind die Zugänge des bisherigen Dienstleisters gesperrt?
Offene Punktebekannte Fehler, geplante Änderungen, FristenHat jeder Punkt eine verantwortliche Person?

Zugangsdaten gehören nicht ins Paket

Schlüssel, Passwörter und Client-Secrets werden getrennt übergeben und nach dem Wechsel erneuert. Der BSI-Baustein sieht vor, nach dem Ende eines Outsourcing-Verhältnisses zu prüfen, ob die Zugriffsrechte des bisherigen Anbieters aufgehoben wurden (BSI IT-Grundschutz). Wie Tokens mit kurzer Laufzeit und eng geschnittenen Scopes diesen Schritt erleichtern, zeigt der Beitrag zu OAuth 2.0 für ERP-Schnittstellen.

Bestehende Schnittstellen nachträglich beschreiben

Viele Schnittstellen im Bestand haben keine Beschreibung. Sie nachträglich anzulegen, ist kein Projekt für einen Nachmittag, aber auch kein Neubau. Sinnvoll ist eine Reihenfolge nach Risiko: zuerst die Datenflüsse, deren Ausfall Umsatz kostet, dann die übrigen. Wichtig ist, das tatsächliche Verhalten zu beschreiben und nicht das gewünschte, sonst wird aus der Beschreibung ein Wunschzettel, der beim ersten Test durchfällt.

  1. Bestand aufnehmen: Welche Endpunkte ruft der Shop auf, welche ruft das ERP auf, welche Webhooks kommen herein? Quellen sind Code, Konfiguration und die Protokolle der Middleware.
  2. Nach Risiko ordnen: Aufträge, Bestände und Preise vor Newsletter-Abgleich und Bewertungsimport.
  3. Beschreiben, was wirklich passiert: Felder und Antworten aus echten Anfragen ableiten, nicht aus der Erinnerung. Abweichungen zwischen Erwartung und Verhalten als offene Punkte festhalten.
  4. Gegen den Betrieb prüfen: Antworten der laufenden Schnittstelle eine Zeit lang gegen das neue Schema validieren, ohne in den Datenfluss einzugreifen.
  5. Als Vertrag übernehmen: Ab einem Stichtag gilt die Beschreibung; Änderungen laufen nur noch über sie.

Wie groß der Aufwand ist, hängt an der Zahl der Endpunkte, an der Qualität der Protokolle und daran, ob eine Middleware die Datenflüsse bündelt. Mit einer Middleware liegen Aufrufe, Transformationen und Fehler an einer Stelle; das erleichtert die Bestandsaufnahme gegenüber verstreuten Punkt-zu-Punkt-Anbindungen deutlich. Bei sehr alten Anbindungen über Dateiaustausch ist die Beschreibung oft der erste Schritt einer Migration zu modernen APIs. Im Rahmen unserer API-Entwicklung bewerten wir bestehende Schnittstellen in einem Assessment, das Dokumentation und Versionierung einschließt, und liefern bei neuen Anbindungen die OpenAPI-Beschreibung als Teil der Übergabe mit.

Schnittstellendokumentation für 2027 einplanen

Für das kommende Jahr sprechen feste Termine dafür, die Beschreibung nicht auf „irgendwann“ zu verschieben. Für Umsätze ab dem 1. Januar 2027 endet für Unternehmen, deren Gesamtumsatz im Vorjahr mehr als 800.000 Euro betrug, die Übergangsregel, nach der sie Rechnungen an andere Unternehmen im Inland statt als E-Rechnung noch auf Papier oder in sonstigen elektronischen Formaten übermitteln dürfen; kleinere Unternehmen können sie bis Ende 2027 nutzen, für EDI-Verfahren gilt eine eigene Regel (Umsatzsteuergesetz). Wer dafür Rechnungsdaten aus Shop und ERP neu verbindet, ändert Schnittstellen. Der Beitrag zur E-Rechnungspflicht 2027 beschreibt die Datenwege; eine Beschreibung, die vorher steht, macht diese Änderung prüfbar.

Den richtigen Zeitpunkt bestimmt außerdem der Kalender des Handels. Während der Bestellspitze im November ruhen Arbeiten an Schnittstellen besser; der Beitrag zur Bestellspitze in der Black Week empfiehlt einen Änderungsstopp. Die Wochen danach eignen sich für Bestandsaufnahme und Beschreibung, damit die Dokumentation steht, bevor die Umstellungen des neuen Jahres beginnen. Im Budget gehört sie als eigene Zeile neben Entwicklung und Test; wie sich die übrigen Posten einer Anbindung zusammensetzen, steht im Beitrag zu den Kosten einer ERP-Anbindung.

  1. Bis Mitte November: Schnittstellen auflisten und nach Risiko ordnen, ohne am laufenden System etwas zu ändern.
  2. Dezember: die beiden wichtigsten Datenflüsse beschreiben und gegen den Betrieb prüfen.
  3. Januar bis März 2027: Prüflauf und Vertragstests in die Pipeline aufnehmen, Übergabepaket zusammenstellen.
  4. Ab dem zweiten Quartal 2027: jede Änderung, etwa für die E-Rechnung oder ein ERP-Update, nur noch über die Beschreibung umsetzen.

Die Beschreibung ist der Teil der Schnittstelle, der bleibt

Entwickler wechseln, ERP-Versionen ändern sich, Dienstleister kommen und gehen. Eine gepflegte OpenAPI-Beschreibung im Repository übersteht diese Wechsel, solange sie bei jeder Änderung mitgeprüft wird. Sie ist damit eine günstige Versicherung gegen Wissen, das nur in einem Kopf steckt.
Dieser Artikel basiert auf Daten aus: OpenAPI Specification v3.2.1 (10. September 2026) und v3.2.0 (19. September 2025); OpenAPI Initiative, OpenAPI Documentation, Best Practices; OWASP API Security Top 10, API9:2023 Improper Inventory Management; RFC 9110, RFC 6585 und RFC 9457 der IETF; Stack Overflow Developer Survey 2024; Bitkom, Presseinformation vom 3. September 2026 zur Studie „Arbeitsmarkt für IT-Fachkräfte“; BSI IT-Grundschutz-Kompendium, Baustein OPS.2.3 Nutzung von Outsourcing; Urheberrechtsgesetz, § 69b; Datenschutz-Grundverordnung, Art. 30; Umsatzsteuergesetz, § 14 Abs. 2 und § 27 Abs. 38. Die Hinweise zu Verträgen und Steuerrecht ersetzen keine Rechtsberatung.

Verwandte Artikel

Shop-Integration & Prozesse

DATEV Rechnungsdatenservice 2.0 endet: Datenweg umstellen

DATEV stellt den Rechnungsdatenservice 2.0 zum 31.12.2026 ein. So prüfen Shops und Wawi-Anbindungen, ob sie betroffen sind, und stellen den Belegweg um.

19 Min. Lesezeit
ERP- & Warenwirtschaft

Bestellspitze zur Black Week: ERP-Schnittstelle vorbereiten

Black Week 2026: Auftragsfluss zwischen Shop und ERP vorbereiten – Rückstau messen, Nachtjobs verschieben, Warteschlange mit Alarm, Änderungsstopp, Notweg.

18 Min. Lesezeit
APIs, Middleware & Architektur

KI-Assistenten im Team: ERP-Zugriff per MCP mit Rechten

Wie interne KI-Assistenten per Model Context Protocol auf das ERP zugreifen: fachliche Werkzeuge, Rechte je Person, Freigabe vor dem Schreiben, Protokoll.

20 Min. Lesezeit