DE · AT · CHRatgeber

Shop-Bestellung im ERP: Statusmodell von Zahlung bis Versand

Aktualisiert:

Gilt für: Länderneutraler Entwurf für Shop- und Warenwirtschaftssysteme in Deutschland, Österreich und der Schweiz; keine Produkt- oder Versionsbindung.

Kurz gesagt

Der Shop meldet Zustände, das ERP braucht vier getrennte Angaben: Belegart, Zahlung, Bestandsbindung und Versand. Im vorgeschlagenen Modell legt der Bestellimport den Auftrag an, reserviert wird die Menge erst mit der Auftragsfreigabe, und die Rechnung erzeugt der Fakturalauf aus der gebuchten Lieferung, nicht aus dem Shop-Status. Das Modell ist länderneutral und gilt für Deutschland, Österreich und die Schweiz.

Das Wichtigste

  • Ein Statusfeld genügt nicht: Belegart, Zahlung, Bestandsbindung und Versand sind im vorgeschlagenen Modell vier getrennte Angaben.
  • Der Bestellimport legt den Auftrag an; freigegeben und damit reservierbar wird er im vorgeschlagenen Modell erst nach Zahlungsklärung.
  • Die Reservierung senkt die verfügbare Menge, nicht den Buchbestand; ausgebucht wird im vorgeschlagenen Modell beim Kommissionieren.
  • Versandt ist kein zweiter Bestandsabgang: Die Menge verlässt das Lager beim Warenausgang.
  • Rückläufer kommen im Modell dieses Artikels zuerst in eine gesperrte Bestandsart, nicht in den Verkaufsbestand.

Zwischen dem Klick im Shop und dem Warenausgang im Lager liegen mehrere Vorgänge, die der Shop in einem einzigen Status zusammenfasst. Wer diesen Status eins zu eins übernimmt, kann Ware zweimal ausbuchen oder Bestand für Bestellungen binden, für die keine Zahlung eingeht. Die Zuordnung legt fest, welche Meldung im ERP was auslöst und was sie ausdrücklich nicht auslöst.

Worauf es ankommt

Ein Shop-Status beschreibt den Vorgang aus Sicht der Kundschaft: bestellt, bezahlt, unterwegs, zurückgegeben. Das ERP führt dazu vier Dinge getrennt: den Beleg, die Zahlung, die Bindung der Menge an den Auftrag und den Versand. Sie ändern sich zu verschiedenen Zeitpunkten, und nur eine dieser Angaben bewegt das Lager.

Der Beleg “Auftrag” im ERP ist dabei nicht dasselbe wie ein wirksamer Vertrag; welche Wirkung Bestellung, Bestätigung und Rechnung rechtlich haben, steht in Angebot, Auftragsbestätigung und Rechnung.

Zu jeder übernommenen Meldung gehören deshalb zwei Festlegungen: der Auslöser, also das Ereignis, das den Status setzt, und die Wirkung, also welche Belegart entsteht, welche Buchung läuft und welcher Wert sich ändert. Ein Status ohne Auslöser steht nur im Shop: Die Kundschaft liest dort “bezahlt”, im ERP bleibt der Auftrag gesperrt und die Ware ungebunden.

Übernehmen Sie keine Meldung ohne Schlüssel. Führen Sie die Bestellnummer des Shops und die Positionsnummer mit und prüfen Sie vor dem Anlegen, ob der Vorgang schon existiert; sonst wird aus einer zweimal zugestellten Meldung ein zweiter Auftrag mit eigener Reservierung (Schnittstellenfehler überwachen und wiederholen).

Vier Angaben statt einer

Die vier Größen können gleichzeitig verschiedene Werte tragen. Ein einzelnes Statusfeld kann das nicht abbilden.

Angabe Was sie festhält Werte in diesem Modell Was sie nicht aussagt
Belegart den Schritt in der Belegfolge Bestellung, Auftrag, Auftragsbestätigung, Lieferschein, Rechnung ob die Ware im Lager liegt
Zahlung die Zuordnung des Geldes zum Vorgang offen, teilbezahlt, bezahlt, erstattet ob die Ware unterwegs ist
Bestandsbindung die Zuordnung von Menge zu Auftrag frei, reserviert, ausgebucht, gesperrt ob die Rechnung gestellt ist
Versand den Weg der Sendung nicht versandt, teilversandt, versandt, zugestellt, zurückgesandt ob bezahlt wurde

Mit vier Feldern ändert ein Teilversand nur den Versandwert und ein Zahlungseingang nur den Zahlungswert. Ein Feld “Status”, das alle vier trägt, verliert bei der ersten Abweichung seine Aussage: Es steht auf “versandt”, während die Nachlieferung offen und die Rechnung noch nicht erstellt ist.

Zuordnung: Was welcher Shop-Status auslöst

Die Tabelle ordnet die sechs Zustände zu, die dieses Modell unterscheidet. Die Bezeichnungen sind neutrale Etiketten; wie Ihr Shop sie nennt, steht in seiner Schnittstellenbeschreibung. Die Mengen sind Stück.

Shop-Status Auslöser Beleg im ERP Bestandswirkung
placed (bestellt) Die Bestellung ist im Shop abgeschickt. Auftrag wird angelegt, noch nicht freigegeben; Zahlung offen. Keine. Die Menge zählt als Bedarf; Buchbestand und verfügbare Menge bleiben unverändert.
paid (bezahlt) Zahlungsdienstleister oder Bank meldet den Zahlungseingang. Zahlung wird dem Auftrag zugeordnet, der Auftrag wird freigegeben. Eine Rechnung entsteht dadurch nicht. Keine Buchung. Mit der Freigabe wird die Menge reservierbar.
reserved (reserviert) Die Auftragsfreigabe bindet die Menge nach der Verfügbarkeitsprüfung. Reservierung mit Menge und Termin am Auftrag. Reservierte Menge steigt, verfügbare Menge sinkt; Buchbestand unverändert.
picked (kommissioniert) Die Kommissionierung ist abgeschlossen, die Ware verlässt das Lager. Lieferschein wird erstellt, Warenausgang gebucht. Buchbestand sinkt um die Menge, Reservierung sinkt um dieselbe Menge; verfügbare Menge unverändert.
shipped (versandt) Die Übergabe an den Versanddienstleister ist belegt, etwa durch Übernahmebeleg oder Sendungsverfolgung. Das Erzeugen einer Sendungsnummer ist nur Vorbereitung, kein Versandnachweis. Versandnachweis am Lieferschein; eine Rechnung entsteht durch diese Meldung nicht. Keine weitere Buchung; die Ausbuchung ist beim Kommissionieren erfolgt.
returned (zurückgegeben) Die Rücksendung trifft ein, wird angenommen und geprüft. Retourenbeleg mit Bezug auf Lieferschein und Rechnung; Gutschrift oder Ersatzlieferung. Wiedereinlagerbare Ware kommt zuerst in eine gesperrte Bestandsart; erst nach der Freigabe steigt der Buchbestand.

Unter welchen Voraussetzungen Kundschaft in Deutschland, Österreich und der Schweiz zurückgeben darf und wer die Rücksendekosten trägt, ist eine Rechtsfrage und nicht Teil dieses Modells. Die Rückabwicklung selbst mit Retourenschein, Gutschrift und Wiedereinlagerung zeigt Shop-Retouren im ERP.

Ein Beispiel mit erfundenen Zahlen

Beispielrechnung mit erfundenen Zahlen. Drei Größen genügen: Buchbestand B (Menge im Verkaufslager, Stück), Reservierungen R (offenen Aufträgen fest zugeordnete Menge, Stück) und verfügbare Menge V = B − R (Stück).

Ausgangslage: B = 60 Stück, zwei offene Aufträge mit 25 und 11 Stück, also R = 36 und V = 60 − 36 = 24 Stück. Eine neue Bestellung über 30 Stück übersteigt V um 6 Stück. Wird sie trotzdem voll reserviert, schreibt das System R = 66 und V = −6; der nächste Auftrag findet dann keinen Bestand mehr und die Zusage an ihn platzt.

Nach dem Modell der Tabelle werden 24 Stück zugesagt und 6 Stück als Rückstand geführt: R = 36 + 24 = 60, V = 60 − 60 = 0. Der ungedeckte Rest bleibt als offener Bedarf im System und nicht als verlorener Verkauf; in Bestandsmodellen ist der Nettobestand genau deshalb nach unten offen und trägt den Rückstand als negativen Wert (MIT OpenCourseWare 2.854, Inventory).

Die Kommissionierung der 24 Stück ergibt B = 60 − 24 = 36 und R = 60 − 24 = 36, also V = 0. Die verfügbare Menge ändert sich durch das Kommissionieren nicht: Buchbestand und Reservierung sinken um dieselbe Menge 24. Die Meldung “shipped” bucht nichts mehr; B bleibt 36. Kommen 4 Stück zurück, laufen sie zuerst auf einen Prüfplatz, B bleibt bei 36 und V bei 0, weil die beiden offenen Aufträge weiter auf Ware warten. Erst mit der Freigabe der 4 Stück steigt B auf 40 und V auf 4.

Wie Status zwischen Systemen übertragen wird

Zwischen Systemen wird ein Status als Code übertragen, nicht als Wort. GS1 EANCOM 2002 ist eine Teilmenge ausgewählter UN/EDIFACT-Nachrichten auf dem Verzeichnis D.01B (Syntax-Version 3) und führt für den Bestellvorgang eigene Nachrichten: ORDERS für die Bestellung, ORDRSP für die Antwort des Lieferanten (Eingang bestätigen, Annahme bestätigen, Änderungen vorschlagen oder die Annahme ablehnen), OSTENQ und OSTRPT für Statusabfrage und Statusbericht zu einer früher gesendeten Bestellung, DESADV für das Lieferavis, RETANN für die Ankündigung einer Rückgabe, RETINS für die Antwort, ob und wie zurückgesandt wird, und INVOIC für die Rechnung über gelieferte Waren und Dienstleistungen.

Der Status ist dort mehrteilig: Die Nachricht OSTRPT (Subset-Version EAN005) trägt im Segment STS eine Statuskategorie und einen Statusbeschreibungscode; in den geöffneten Fassungen Syntax 3 und Syntax 4 (Edition 2016, Upd. 2021) stehen dort unter anderem UP2 für die Bestellung als Kategorie sowie 27 für “Versand abgeschlossen”, 21 für “Lieferung abgeschlossen”, 14 für “Vorgang abgeschlossen”, 64 für “Bestellung oder Anfrage storniert”, 31E für “Versand wird vorbereitet” und 39E für “Ware vom Empfänger zurückgegeben” (deutsche Übersetzung). Für den Versand unterscheidet die Norm damit die Vorbereitung (31E) und den abgeschlossenen Versand (27); im vorgeschlagenen Modell ist das Erzeugen einer Sendungsnummer Vorbereitung, und “versandt” setzt einen Versandnachweis voraus. Ein negativer Zustand trägt zusätzlich einen Grund, etwa 46 für “Zahlung nicht eingegangen”.

EANCOM bindet, wenn Handelspartner es vereinbaren; eine gesetzliche Nutzungspflicht haben wir in den geöffneten Teilen der Norm nicht gefunden. Ebenso wenig haben wir dort eine Vorgabe für den Weg zwischen Ihrem eigenen Shop und Ihrem eigenen ERP gefunden. Der Nutzen der Norm für dieses Thema liegt woanders: Sie zeigt, dass ein Vorgangsstatus aus Kategorie, Zustand und Grund besteht — drei Angaben, die auch ein Shop-Import braucht, damit ein Status auswertbar bleibt (B2B-Bestellweg wählen).

Typische Fehler

  • Beim Versand ein zweites Mal ausbuchen: Wenn die Meldung “picked” und die Meldung “shipped” beide einen Warenausgang buchen, sinkt der Buchbestand zweimal, obwohl die Menge das Lager einmal verlässt. Buchen Sie den Warenausgang an genau einer Stelle, im Modell dieses Artikels beim Kommissionieren.
  • Reservieren, bevor die Zahlung geklärt ist: Der Bestand liegt dann für Bestellungen fest, für die keine Zahlung eingeht, und die verfügbare Menge sinkt ohne Gegenwert. Setzen Sie die Reservierung hinter die Auftragsfreigabe.
  • Ein Feld für alles: Vier Angaben in einem Status verlieren ihre Aussage, sobald ein Teilversand, eine Nachlieferung oder eine Rückerstattung dazukommt. Führen Sie Belegart, Zahlung, Bestandsbindung und Versand getrennt.
  • Keinen Rückweg definieren: Zu jedem Status gehört die Rücknahme. Bleibt sie ungeklärt, hängt ein stornierter Auftrag auf “reserved” und bindet Wochen später noch Ware. Legen Sie für jede Freigabe fest, wer sie zurücknimmt und was mit der Reservierung geschieht.
  • Die Buchhaltung an den Shop-Status hängen: Fällt eine Meldung aus, entsteht keine Rechnung. Der Fakturalauf gehört an die gebuchte Lieferung im ERP (Fakturalauf im ERP); den Weg vom Angebot bis dorthin zeigt Belegkette im ERP.

So gehen Sie vor

  1. Schreiben Sie die Meldungen Ihres Shops mit Namen, Auslöser und mitgesendeten Feldern auf und ordnen Sie jede Meldung genau einer der vier Angaben zu. Was sich nicht zuordnen lässt, bleibt im Protokoll statt in einer Reservierung.
  2. Legen Sie je Status Auslöser und Wirkung fest: welche Belegart entsteht, welcher Zahlungswert sich ändert, ob reserviert oder ausgebucht wird, welcher Versandwert gesetzt wird. Schreiben Sie dazu, was der Status nicht ändert.
  3. Definieren Sie die Bindungsregel: Reservieren Sie erst nach Zahlungseingang, nach geklärtem Kreditlimit oder nach Bonitätsprüfung, und setzen Sie als eigene Hausregel einen Beispielwert, etwa sieben Tage, nach dem eine Reservierung ohne Zahlungseingang zurückgenommen wird. Wie viel dabei überhaupt zusagbar ist, rechnet die Verfügbarkeitsprüfung aus (Verfügbarkeitsprüfung im ERP).
  4. Prüfen Sie die Wiederholbarkeit: Importieren Sie dieselbe Meldung zweimal und erwarten Sie, dass kein zweiter Auftrag und keine zweite Reservierung entsteht.
  5. Führen Sie eine Warteschlange für Meldungen, die nicht verarbeitet werden konnten, und sehen Sie sie täglich an (Schnittstellenfehler überwachen und wiederholen). Ohne sie fällt ein liegengebliebener Vorgang erst auf, wenn die Kundschaft nachfragt.
  6. Prüfen Sie nach dem ersten vollen Monat die vier Werte gegeneinander: Aufträge ohne Reservierung, Reservierungen ohne Zahlungseingang, Lieferscheine ohne Versandmeldung und Versandmeldungen ohne Lieferschein. Jede Auffälligkeit kann eine Lücke in der Zuordnung anzeigen; klären Sie im Einzelfall, ob eine Meldung fehlt oder ob der Vorgang ohne sie zu Recht besteht, etwa bei Abholung durch die Kundschaft.

Häufige Fragen

Muss jede Shop-Bestellung sofort reserviert werden?

Nein. Im vorgeschlagenen Modell reservieren Sie erst mit der Auftragsfreigabe, also wenn Zahlung, Kreditlimit oder Bonitätsprüfung geklärt sind. Ob überhaupt reserviert wird, hängt davon ab, ob Sie aus dem eigenen Lager liefern; wer im Strecken- oder Direktversand liefert, bindet keinen eigenen Bestand.

Reicht ein Statusfeld im Shop?

Für die Kundschaft ja, für das ERP nicht. Vier Angaben brauchen vier Felder: Belegart, Zahlung, Bestandsbindung und Versand. In einem Feld hebt jeder Teilversand oder jede spätere Nachzahlung den vorher gesetzten Wert auf, und eine Auswertung zählt dann Vorgänge mit, die in diesen Zustand nicht gehören.

Was passiert, wenn der Shop dieselbe Bestellung zweimal meldet?

Ohne Schlüssel entsteht ein zweiter Auftrag mit einer zweiten Reservierung. Lassen Sie jede Meldung die Bestellnummer des Shops und die Positionsnummer mitführen und prüfen Sie beim Import, ob der Vorgang schon existiert. Dann bleibt der zweite Import wirkungslos.

Wann läuft die Rechnung los?

Der Fakturalauf hängt an der gebuchten Lieferung im ERP, nicht am Shop-Status. Ob Sie vor der Lieferung bereits einen Beleg stellen müssen, hängt von den Regeln Ihres Landes und vom Einzelfall ab; klären Sie das mit Ihrer Steuerberatung und sehen Sie die Belegfolge in [Belegkette im ERP](/warenwirtschaft/belegkette-angebot-bis-rechnung-erp/).

Quellen

  1. GS1 EANCOM 2002, Syntax Version 3, Edition 2016 (Upd. 2021), Part I, Abschnitt 2: Nachrichtenübersicht mit ORDERS, ORDRSP, OSTENQ, OSTRPT, DESADV, RECADV, RETANN, RETINS und INVOICGS1 (GS1 Global Office), ref.gs1.org · abgerufen am
  2. GS1 EANCOM 2002, Syntax 3 und Syntax 4, Edition 2016 (Upd. 2021), Part II: OSTRPT (EAN005), Segment STS – Statuskategorie, Statusbeschreibungscodes und StatusgrundGS1 (GS1 Global Office), ref.gs1.org · abgerufen am
  3. GS1 EANCOM Archive: Versionsübersicht, aktuelle Version 2022; EANCOM ist ein GS1-Subset von UN/EDIFACTGS1 (GS1 Global Office), ref.gs1.org · abgerufen am
  4. MIT OpenCourseWare 2.854 Introduction to Manufacturing Systems, Fall 2016, Lecture 7-8 Inventory (Gershwin), Abschnitt Base Stock Policy / Make-to-Stock Queue: Nettobestand als Lagermenge oder negativer Rückstand, keine verlorenen Verkäufe, Q(t) + I(t) = SStanley B. Gershwin; MIT OpenCourseWare · abgerufen am