Ratgeber · Softwareentwicklung
Schnittstelle programmieren lassen: Ablauf, Kosten, Stolpersteine
Woran man erkennt, dass eine Schnittstelle fehlt
Drei Anzeichen tauchen in der Praxis immer wieder auf. Erstens, dieselben Daten werden in zwei Systemen von Hand gepflegt, etwa ein neuer Artikel im Onlineshop und noch einmal in der Warenwirtschaft. Zweitens, Exportdateien wandern manuell von einem System ins nächste, per CSV-Export und Import, mit den üblichen Zeitverzögerungen und Copy-Paste-Fehlern. Drittens, Auswertungen aus verschiedenen Systemen passen nicht zusammen, weil eine Seite dem aktuellen Stand immer einen Tag hinterherhinkt. Wo eines dieser Muster im Tagesgeschäft auftaucht, lohnt sich zumindest die Prüfung.
Die drei Wege, Systeme zu verbinden
- Programmierschnittstelle (API): Der sauberste Weg, wenn beide Systeme eine anbieten. Daten fließen in Echtzeit oder nah dran, der Hersteller pflegt die Schnittstelle bei eigenen Updates selbst mit. Nicht jedes System, gerade ältere Branchensoftware, bringt eine mit.
- Direkter Datenbankzugriff: Schnell gebaut, weil kein Umweg über eine offizielle Schnittstelle nötig ist. Der Nachteil zeigt sich beim nächsten Herstellerupdate: Ändert sich die Datenstruktur, bricht die Anbindung, ohne Vorwarnung.
- Datei- oder Batch-Austausch: robust und einfach zu debuggen, weil jede Übertragung als Datei nachvollziehbar bleibt. Dafür nicht in Echtzeit, sondern zeitversetzt, etwa stündlich oder über Nacht. Für viele Auswertungen und Buchhaltungsdaten reicht das völlig.
Welcher Weg passt, entscheidet sich an den beteiligten Systemen, nicht an einer Vorliebe. Bei uns läuft das im Alltag über alle drei Varianten, je nachdem, ob eEvolution, SAGE, ein Onlineshop oder ein Dokumentenarchiv im Spiel ist.
So läuft die Programmierung ab
- 1. Analyse: Welche Felder müssen fließen, in welche Richtung, wie oft? Ein gemeinsamer Blick auf drei bis fünf reale Beispieldatensätze bringt mehr als jede Spezifikation am Reißbrett.
- 2. Testumgebung: Die Schnittstelle entsteht zunächst gegen eine Kopie der echten Daten, nicht gegen das Live-System. So lassen sich Sonderfälle gefahrlos durchspielen.
- 3. Pilotlauf: Die neue Anbindung läuft parallel zum bisherigen, meist manuellen Prozess. Erst wenn beide Wege dieselben Ergebnisse liefern, wird umgeschaltet.
- 4. Produktivbetrieb mit Protokoll: Jede Übertragung wird protokolliert, damit Fehler auffallen, bevor sie sich häufen, nicht erst beim Quartalsabschluss.
Was eine Schnittstelle kostet
Eine seriöse Pauschale gibt es nicht, dafür sind die Konstellationen zu unterschiedlich. Eine einfache Einbahnstraßen-Anbindung über eine vorhandene Programmierschnittstelle bewegt sich im Rahmen weniger Tagewerke. Eine bidirektionale Kopplung mit vielen Sonderfällen, etwa unterschiedlichen Preislogiken zwischen Onlineshop und Warenwirtschaft, kostet spürbar mehr, weil hier der Großteil des Aufwands in die Fehlerbehandlung fließt, nicht in den Regelfall. Dazu kommen laufende Kosten für Wartung, besonders wenn eines der angebundenen Systeme regelmäßig aktualisiert wird. Genaue Zahlen nennen wir nach der Analyse, verbindlich, nicht nach Bauchgefühl.
Typische Stolpersteine
- Datenqualität: Dubletten, uneinheitliche Artikelnummern oder Kundennummern aus zwei Systemen, die eigentlich dasselbe meinen. Das fällt oft erst in der Testphase auf und kostet dann Zeit, die vorher nicht eingeplant war.
- Fehlende Fehlerbehandlung: Was passiert, wenn das Zielsystem beim Übertragen gerade nicht erreichbar ist? Ohne klare Regel gehen Datensätze im schlimmsten Fall stillschweigend verloren.
- Versionsupdates: Ändert der Hersteller eines angebundenen Systems die Datenstruktur, kann eine nicht dokumentierte Schnittstelle über Nacht ausfallen. Dokumentation und ein Ansprechpartner für den Ernstfall gehören deshalb von Anfang an dazu.
- Unklare Verantwortung: Bei drei beteiligten Systemen und zwei Dienstleistern ist im Fehlerfall schnell unklar, wer zuständig ist. Das gehört vor Projektstart geklärt, nicht danach.
Wann sich eine Schnittstelle nicht lohnt
Bei einer einmaligen Datenübernahme, etwa beim Umstieg auf ein neues System, ist eine dauerhafte Schnittstelle meist der falsche Weg, hier reicht ein einmaliger, sauberer Datenexport. Auch bei sehr geringen Datenmengen, wenn der manuelle Aufwand ohnehin nur wenige Minuten pro Woche beträgt, rechnet sich die Programmierung häufig nicht. Und wenn eines der beteiligten Systeme absehbar in den nächsten Monaten abgelöst wird, ist es meist wirtschaftlicher, die Ablösung vorzuziehen, statt in eine Schnittstelle zu investieren, die bald wieder verworfen wird. Diese Fälle sagen wir Ihnen im Erstgespräch offen, auch wenn das gegen ein Projekt spricht.
Schnittstellen sind einer der vier Kostentreiber bei Individualsoftware, meist der Treiber, der den größten Nutzen bringt. Als individuelle Softwareentwicklung bauen wir Schnittstellen so, dass sie zu Ihrer bestehenden Systemlandschaft passen, statt eine weitere Insel zu schaffen.

