Warum zeigt der Shop "lieferbar", obwohl das Lager leer ist?
14 Beschwerden, eine Ursache
Der Shop zeigt "lieferbar". Das Lager ist leer. Beides stimmt - nur nicht gleichzeitig.
Donnerstagvormittag, 10:45 Uhr in der IT-Schulung. Linh zeigt ihrem Team das Ticketsystem vom Montag: 14 identische Kundenbeschwerden. Bestellung bestätigt, Artikel nicht lieferbar. Der Bestandsabgleich zwischen Shop und Warenwirtschaft lief per CSV-Export, einmal pro Nacht um 3 Uhr. Über das Wochenende hatte das Lager 80 Retouren umgebucht und 30 Artikel als defekt aussortiert. Der Shop hatte davon nichts mitbekommen. Das Ergebnis: 14 Stornierungen, Rückbuchungsgebühren und Negativbewertungen.
Erinnerst du dich an die CSV-Validierung? Du hast dort geprüft, ob Trennzeichen, Pflichtfelder und Datentypen korrekt sind. Aber selbst eine fehlerfreie CSV-Datei hat ein Problem, das keine Validierung löst: Sie ist nur so aktuell wie ihr letzter Export. Genau hier setzen API-Schnittstellen an.
CSV-Export gegen API - vier Unterschiede
Eine API (Application Programming Interface) ist eine Schnittstelle, über die zwei Systeme direkt und automatisch kommunizieren - ohne Datei-Export, in Echtzeit.
CSV bleibt sinnvoll für einmalige Massenimporte oder Datenmigrationen. Für laufende Prozesse wie Bestandsabgleich oder Zahlungsabwicklung ist eine API die bessere Wahl.
🎬 Vorstellung: Stell dir deinen Ausbildungsbetrieb vor. Welche Daten zwischen Shop und Warenwirtschaft wären sofort veraltet, wenn der Abgleich nur einmal pro Nacht liefe?
Wie läuft eine Zahlung per API ab?
Vier Schritte in unter zwei Sekunden
Um das Bestandsproblem vom Montag zu lösen, muss der Shop mit externen Systemen in Echtzeit sprechen. Wie das funktioniert, zeigt ein Zahlungsvorgang mit Stripe:
- Request senden: Die Kundin klickt "Jetzt bezahlen". Der Shop schickt eine Anfrage an die Stripe-API mit Betrag, Währung und verschlüsseltem Karten-Token.
- Authentifizierung prüfen: Stripe prüft den mitgesendeten API-Key - einen geheimen Schlüssel, der beweist, dass der Shop berechtigt ist.
- Antwort verarbeiten: Stripe kontaktiert die Bank, reserviert den Betrag und schickt das Ergebnis als Response zurück.
- Statuscode auswerten:
200bedeutet Zahlung erfolgreich.402bedeutet Karte abgelehnt. Der Shop zeigt je nach Statuscode eine Bestätigung oder Fehlermeldung.
🔮 Bevor du weiterliest: Was passiert, wenn der API-Key in Schritt 2 ungültig ist - bekommt die Kundin trotzdem eine Fehlermeldung?
Wenn Schritt 2 scheitert
Stripe schickt den Statuscode 401 zurück: "Nicht autorisiert." Die Zahlung wird gar nicht erst verarbeitet - Schritt 3 wird nie erreicht. Der Shop muss diesen Fehlercode abfangen und eine verständliche Meldung anzeigen, etwa "Zahlung konnte nicht verarbeitet werden." Ohne Fehlerbehandlung bleibt die Kundin auf einer leeren Seite und bricht den Kauf ab.
Die vier Schritte hängen zusammen wie eine Kette. Bricht ein Glied, muss der Shop den passenden Statuscode erkennen und reagieren.
Was braucht das Entwicklerteam für die Anbindung?
Fünf Angaben für die API-Dokumentation
Wenn ein externer Dienstleister die Anbindung an das Warenwirtschaftssystem programmieren soll, braucht er fünf Angaben:
- Endpunkte - die genauen URLs, an die Anfragen gehen (z.B.
api.shop.de/v2/bestand) - Authentifizierung - welches Verfahren sichert den Zugang? Üblich sind API-Keys oder OAuth-Tokens
- Datenfelder - welche Felder die API liefert, z.B. Artikel-SKU, Bestandsmenge, Lagerort. Format ist meist JSON
- Rate-Limits - wie viele Anfragen pro Minute erlaubt sind. Typisch: 60 bis 1.000. Überschreitung liefert Statuscode
429 - Fehlercodes - welche Statuscodes die API bei Problemen zurückgibt und was sie bedeuten
Ohne diese Dokumentation arbeitet das Entwicklerteam blind. Jede fehlende Angabe kostet Rückfragen und Verzögerung.
Zurück zu den 14 Beschwerden vom Montag
Hätte der Shop eine API-Anbindung an die Warenwirtschaft gehabt, wäre jede Retoure und jede Defekt-Aussortierung sofort im Bestand sichtbar gewesen. Die 14 Stornierungen vom Montag wären nicht passiert.
Für diese Anbindung hätte das E-Commerce-Team dem Entwicklerteam genau die fünf Spezifikationen liefern müssen: Endpunkte, Authentifizierungsverfahren, Datenfelder, Rate-Limits und Fehlercodes.
🤔 Frage dich: Dein Ausbildungsbetrieb will den Versandstatus automatisch an den Zahlungsdienstleister melden, damit nach dem Versand keine Rückbuchung mehr ausgelöst werden kann. Welche der fünf Spezifikationen wären für diese Anbindung besonders kritisch - und warum?
Teste dein Wissen
Welches technische Merkmal von REST-APIs ermöglicht die plattformunabhängige Anbindung verschiedener Systeme wie Shop und Warenwirtschaft?