# Leistungsbeschreibung eCom

# 1. Grundlagen

# Überblick und Einordnung

## Übersicht

Das eCom-Modul ist ein B2B-Onlineshop für Bestandskunden.

Der Kunde bestellt selbst, ohne Beteiligung des Außendienstes. Im Sprachgebrauch heißt das Modul auch Shop, Webshop, Kundenportal oder Bestellportal.

Das Modul ergänzt die Auftragserfassung durch den Außendienst, ersetzt sie aber nicht. Beide greifen auf dieselben Stammdaten zu und erzeugen denselben Belegtyp.

## Einordnung in DeDeSales

eCom ist kein eigenständiges System, sondern ein Modul von DeDeSales. Es kommuniziert über den DeDeSales-Server und verwendet die dort definierten Schnittstellen.

<table id="bkmrk-bereich-bedeutung-f%C3%BC"><thead><tr><th>Bereich</th><th>Bedeutung für eCom</th></tr></thead><tbody><tr><td>Stammdaten</td><td>Artikel, Warengruppen, Kunden und Preise kommen aus DeDeSales und damit aus Ihrem ERP-System.</td></tr><tr><td>Konfiguration</td><td>Die Steuerung erfolgt vollständig im DeDeSales Web-Backend unter dem Hauptmenüpunkt **eCom**.</td></tr><tr><td>Auftrag</td><td>Eine Bestellung aus dem Shop wird als regulärer DeDeSales-Auftrag angelegt und wie jeder andere Auftrag an das ERP-System übergeben.</td></tr><tr><td>Rollen und Rechte</td><td>Der Funktionsumfang des Shops wird über eine Rolle gesteuert, genau wie beim Außendienst-Client.</td></tr></tbody></table>

## Ein Auftrag wie jeder andere

Eine im Shop abgeschickte Bestellung ist ein normaler DeDeSales-Auftrag. Daraus ergeben sich zwei Punkte, die Sie bei der Einrichtung berücksichtigen müssen:

- **Rabatte werden als Kopfrabatt hinterlegt.** Das betrifft Gutscheine und Sonderrabatte. Ob der Rabatt im ERP-System tatsächlich greift, hängt davon ab, ob Ihre Schnittstelle beziehungsweise Ihr Connector den Kopfrabatt berücksichtigt.
- **Fehlgeschlagene Übergaben werden gemeldet.** Kann ein Auftrag aus dem eCom-System im Server nicht verarbeitet werden, informiert das E-Mail-Abo *eCom - Benachrichtigung bei fehlgeschlagenem ERP Export* den Innendienst. Dieses Abo ist ein Pflicht-Abo.

## Was der Shop gegenüber dem Client nicht kann

Der Shop ist bewusst schlanker als der Außendienst-Client. Folgende Unterschiede sind für die Konfiguration relevant:

<table id="bkmrk-thema-verhalten-im-e" style="width: 100%;"><thead><tr><th style="width: 14.1752%;">Thema</th><th style="width: 85.8248%;">Verhalten im eCom-System</th></tr></thead><tbody><tr><td style="width: 14.1752%;">Module</td><td style="width: 85.8248%;">Es stehen keine Module zur Verfügung. Module, die Sie einer Auftragsvorlage im Backend zugewiesen haben, werden im Shop nicht angezeigt.</td></tr><tr><td style="width: 14.1752%;">Zugang</td><td style="width: 85.8248%;">Nur Bestandskunden erhalten Zugriff. Siehe [Zugangsmodell](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/zugangsmodell).</td></tr><tr><td style="width: 14.1752%;">Preise</td><td style="width: 85.8248%;">Ohne Offline-Preisfindung in DeDeSales stehen im Shop ausschließlich Listenpreise zur Verfügung. Siehe [Preisfindung](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/preisfindung).</td></tr></tbody></table>

# Lizenzierung

## Übersicht

Das eCom-Modul ist lizenzpflichtig.

Ohne eCom-Lizenz für DeDeSales stehen die in den Büchern *Backend eCom* und *Shop eCom* beschriebenen Funktionen nicht zur Verfügung.

Nach der Freischaltung erscheint im DeDeSales Web-Backend der neue Hauptmenüpunkt **eCom**.

## Mehrsprachigkeit

Der Shop kann mehrsprachig betrieben werden. Eine zusätzliche Lizenz ist dafür **nicht** nötig: Das Lizenzfile legt automatisch **99 Sprachlizenzen** an.

Damit eine Sprache im Shop genutzt werden kann, muss sie lediglich **angelegt** sein. Meldet sich ein Kunde mit einer Kultur an, für die keine Sprache angelegt ist, wird die im Backend hinterlegte Default-Sprache verwendet.

Voraussetzung ist, dass für die gewählte Kultur Artikeltexte und Warengruppentexte vorhanden sind.

# Datenversorgung

## Übersicht

Konfigurationsänderungen wirken im Shop nicht sofort.

Damit eine Änderung ankommt, müssen die Daten bereitgestellt werden — genau wie bei einem normalen Client. Das eCom-System holt die bereitgestellten Daten anschließend selbstständig ab.

Ist eine Änderung im Shop nicht sichtbar oder wirkt nicht, liegt das meist hieran.

## Ablauf

1. Sie ändern die Konfiguration im DeDeSales Web-Backend.
2. Sie stellen die Daten bereit.
3. Das eCom-System holt die Daten je nach Einstellung alle 15 oder 30 Minuten ab.

Eine Änderung ist im Shop also frühestens nach dem nächsten Abholintervall sichtbar.

## Bilder werden nur auf Anforderung übertragen

Haben Sie Änderungen an Containern durchgeführt, die Bilder betreffen, müssen Sie bei der Datenbereitstellung zusätzlich den Haken bei **Bilder** setzen. Ohne diesen Haken werden die Bilder nicht übertragen.

> **Hinweis:** Ein neu hochgeladenes Bild liegt zunächst nur im Temp-Ordner. Erst durch **Speichern** wird es in den richtigen Ordner verschoben. Wird anschließend nicht mit dem Haken **Bilder** bereitgestellt, erscheint das Bild nicht im Shop, obwohl der Upload erfolgreich war.

# 2. Zugang und Anmeldung

# Zugangsmodell

## Übersicht

Der Shop ist nicht öffentlich.

Zugriff erhalten ausschließlich Bestandskunden, die in Ihrem ERP-System angelegt sind. Die Anmeldung — Login oder Einloggen — erfolgt über Kundennummer und persönliches Passwort. Passwort und Kennwort bezeichnen dasselbe.

Ein Kunde kann sich kein Konto selbst erstellen. Er fordert einen Zugang an, und das System prüft die Angaben gegen den Kundenstamm.

## Die drei Wege in den Shop

<table id="bkmrk-weg-voraussetzung-er"><thead><tr><th>Weg</th><th>Voraussetzung</th><th>Ergebnis</th></tr></thead><tbody><tr><td>**Anmelden**</td><td>Kundennummer und Passwort sind bekannt</td><td>Zugriff auf den Shop</td></tr><tr><td>**Zugang anfordern**</td><td>Kunde ist im ERP-System angelegt</td><td>Passwort wird per E-Mail zugeschickt</td></tr><tr><td>**Noch kein Kunde**</td><td>Interessent ist noch nicht im ERP-System angelegt</td><td>Anfrage an Ihr Unternehmen, kein Zugang</td></tr></tbody></table>

## Zugang anfordern

Der Kunde gibt seine Kundennummer, seine E-Mail-Adresse und — je nach Einstellung — seine Postleitzahl ein. Anschließend prüft das System gegen die Kundenstammdaten:

<table id="bkmrk-fall-verhalten-angab"><thead><tr><th>Fall</th><th>Verhalten</th></tr></thead><tbody><tr><td>Angaben stimmen mit dem Kundenstamm überein</td><td>Der Kunde erhält sein Passwort per E-Mail.</td></tr><tr><td>Angaben weichen ab</td><td>Die Anforderung landet als **offene Registrierung** im Backend und muss dort manuell freigeschaltet werden. Der Kunde erhält den Hinweis, dass die Prüfung mehrere Tage dauern kann.</td></tr></tbody></table>

> **Wichtig:** Der Kunde kann eine abweichende oder fehlende E-Mail-Adresse **nicht selbst korrigieren.** Das übernimmt der Shopbetreiber im Backend unter *eCom \\ Kundenregistrierung*. Der Innendienst erfährt von der offenen Registrierung über das Abo *eCom - Kundenregistrierung*.

Die Felder und Meldungen der Masken stehen auf der Seite *Anmeldung und Registrierung*.

## Passwort vergessen

Hat ein Kunde sein Passwort vergessen, kann er es über das Portal neu anfordern. Erforderlich sind Kundennummer und die für den Zugang verwendete E-Mail-Adresse.

Sind dem eCom-System beide Angaben bekannt, läuft der Vorgang zweistufig ab:

1. Der Kunde erhält eine E-Mail mit einem Link.
2. Erst nach dem Klick auf den Link wird das Kennwort zurückgesetzt. Das neue Kennwort kommt in einer weiteren E-Mail.

## Noch kein Kunde

Ein Interessent muss zuerst als Kunde in Ihrem ERP-System hinterlegt sein. Über eine Einstellung im Backend legen Sie fest, wie er den ersten Kontakt aufnimmt:

<table id="bkmrk-einstellung-verhalte" style="width:100%;"><thead><tr><th style="width:14.6631%;">Einstellung</th><th style="width:85.3369%;">Verhalten im Shop</th></tr></thead><tbody><tr><td style="width:14.6631%;">Haken gesetzt</td><td style="width:85.3369%;">Der Button **Noch kein Kunde** wird angezeigt. Der Interessent füllt ein von eCom generiertes Formular aus, das eine E-Mail mit seinen Daten an Ihr Unternehmen auslöst.</td></tr><tr><td style="width:14.6631%;">Haken entfernt</td><td style="width:85.3369%;">Es gibt nur den Button **Noch kein Zugang**.</td></tr></tbody></table>

Den Bereich **Noch kein Zugang** können Sie textlich erweitern, auch mit URLs: Dazu legen Sie unter *eCom &gt; Texte* den Textbaustein *Noch kein Zugang – Hinweis* an.

## Besonderheiten bei Kundennummern

- Enthalten Ihre Kundennummern Buchstaben, werden die Namen bei der Registrierung unabhängig von Groß- und Kleinschreibung angezeigt.
- Kundennummern, die mit einem Leerzeichen registriert wurden, werden ohne Leerzeichen angezeigt.

## Verhalten im Testsystem

Im Testsystem werden E-Mails nicht an den Kunden, sondern an die E-Mail-Adresse des eCom-Mitarbeiters geschickt. Diese ist im DeDeSales Web-Backend unter *Grundkonfiguration &gt; Mitarbeiter* hinterlegt. Das betrifft auch die E-Mail mit dem sichtbaren Kennwort.

# Anmeldung und Registrierung

## Übersicht

Die Anmeldemaske ist die einzige Seite des Shops, die ohne Zugang erreichbar ist.

Von ihr führen drei Wege weiter: **Noch kein Zugang?** für Bestandskunden ohne Passwort, **Passwort vergessen?** für Bestandskunden mit Zugang, und **Noch kein Kunde?** für Interessenten.

Jeder dieser Wege ist eine eigene Seite und endet mit einer Meldung und dem Link **Zurück zur Anmeldung**.

> **Hinweis:** Die auf dieser Seite zitierten Wortlaute sind der **Auslieferungszustand**. Alle Texte lassen sich ändern — je nach Meldung an unterschiedlichen Stellen im Backend. Hat ein Shopbetreiber seine Texte angepasst, sieht der Kunde etwas anderes.

## Anmeldemaske

<table id="bkmrk-element-erl%C3%A4uterung-"><thead><tr><th>Element</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Benutzername</td><td>Eingabefeld. Eingegeben wird in der Regel die **Kundennummer**.</td></tr><tr><td>Passwort</td><td>Eingabefeld</td></tr><tr><td>Auf diesem System angemeldet bleiben</td><td>Schieberegler, ein- und ausschaltbar. Bei eingeschaltetem Regler bleibt die Anmeldung **30 Tage** erhalten.</td></tr><tr><td>Anmelden</td><td>Schaltfläche</td></tr><tr><td>Noch kein Zugang?</td><td>Link auf die Registrierung für Bestandskunden</td></tr><tr><td>Passwort vergessen?</td><td>Link auf die Passwortanforderung</td></tr><tr><td>Noch kein Kunde?</td><td>Link auf das Interessentenformular</td></tr></tbody></table>

> **Hinweis:** Das Feld heißt **Benutzername**, nicht Kundennummer. Da der Benutzername sich nicht ändern lässt, ist es in der Praxis immer die Kundennummer.

### Angemeldet bleiben

Der Schieberegler **Auf diesem System angemeldet bleiben** hält die Anmeldung für **30 Tage**. Der Kunde muss sich in diesem Zeitraum auf demselben Gerät und im selben Browser nicht erneut anmelden.

Links oben stehen **Logo** und **Shopbetreiber**, rechts daneben das Hintergrundbild.

<table id="bkmrk-bereich-inhalt-fu%C3%9Fze"><thead><tr><th>Bereich</th><th>Inhalt</th></tr></thead><tbody><tr><td>Fußzeile</td><td>Shopbetreiber sowie **AGB**, **Datenschutz** und **Impressum**, dazu rechts unten die **Version** des Shops — wie auf allen Seiten</td></tr><tr><td>Cookie-Bestätigung</td><td>Leiste am unteren Rand mit der Schaltfläche **Verstanden**</td></tr></tbody></table>

Die Rechtstexte und der Cookie-Hinweis kommen aus Textbausteinen unter *eCom \\ Texte*.

Nach erfolgreicher Anmeldung landet der Kunde direkt im Shop, ohne Zwischenschritt. Wohin genau, hängt davon ab, ob Container-Bilder gepflegt sind:

<table id="bkmrk-container-bilder-ein"><thead><tr><th>Container-Bilder</th><th>Einstiegsseite</th></tr></thead><tbody><tr><td>gepflegt</td><td>*Hauptseite* mit den Slider- und Float-Bereichen</td></tr><tr><td>nicht gepflegt</td><td>*Artikel-Übersichtsseite* — die Container-Bereiche sind ausgeblendet</td></tr></tbody></table>

## Erzwungene Kennwortänderung bei der Erstanmeldung

Ist die Einstellung *Kunde muss bei Erstanmeldung Kennwort ändern* gesetzt, führt die erste Anmeldung nicht in den Shop, sondern auf die Seite **Passwort ändern**.

<table id="bkmrk-eigenschaft-verhalte"><thead><tr><th>Eigenschaft</th><th>Verhalten</th></tr></thead><tbody><tr><td>Auftreten</td><td>nach der ersten Anmeldung mit dem per E-Mail zugestellten Kennwort</td></tr><tr><td>Verlassen der Seite</td><td>**nicht möglich**, solange kein neues Kennwort vergeben ist</td></tr><tr><td>Danach</td><td>der Kunde gelangt in den Shop, das Kennwort aus der E-Mail ist verbraucht</td></tr></tbody></table>

### Felder der Seite *Passwort ändern*

<table id="bkmrk-feld-erl%C3%A4uterung-akt"><thead><tr><th>Feld</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Aktuelles Passwort</td><td>bei der Erstanmeldung das Kennwort aus der E-Mail</td></tr><tr><td>Neues Passwort</td><td></td></tr><tr><td>Neues Passwort bestätigen</td><td>Wiederholung zur Kontrolle</td></tr></tbody></table>

<table id="bkmrk-name-funktion-passwo"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>Passwort ändern</td><td>übernimmt das neue Passwort</td></tr></tbody></table>

Die Anforderungen an das neue Kennwort richten sich nach der Einstellung *Kennwortstärke*.

### Meldungen

<table id="bkmrk-fall-meldung-umrandu"><thead><tr><th>Fall</th><th>Meldung</th><th>Umrandung</th></tr></thead><tbody><tr><td>Änderung erfolgreich</td><td>„Ihr Passwort wurde erfolgreich geändert."</td><td>grün</td></tr><tr><td>Bestätigung weicht ab</td><td>„Das neue Passwort und die Bestätigung stimmen nicht überein."</td><td>rot</td></tr><tr><td>Neues Kennwort ist das alte</td><td>„Das neue Passwort muss sich vom alten Passwort unterscheiden."</td><td>rot</td></tr></tbody></table>

Der Shop kennzeichnet Meldungen farbig: **grün** für Erfolg, **rot** für eine Ablehnung.

> **Hinweis:** Der Zwang ist der Zweck der Einstellung. Das Erstkennwort wird im Klartext per E-Mail versandt — ohne diese Einstellung bleibt es dauerhaft gültig.

## Noch kein Zugang?

Für Kunden, die beim Shopbetreiber bereits als Kunde geführt werden, aber noch kein Passwort haben.

<table id="bkmrk-feld-erl%C3%A4uterung-ihr"><thead><tr><th>Feld</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Ihre Kundennummer</td><td>Pflicht</td></tr><tr><td>PLZ</td><td>wird nur abgefragt, wenn die Backend-Einstellung es vorsieht</td></tr><tr><td>E-Mail-Adresse</td><td>Pflicht</td></tr><tr><td>Ich habe die Datenschutzbestimmungen gelesen und verstanden.</td><td>Bestätigungsfeld</td></tr></tbody></table>

<table id="bkmrk-name-funktion-regist"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>Registrieren</td><td>schickt die Anforderung ab</td></tr><tr><td>Abbrechen</td><td>bricht ab</td></tr></tbody></table>

### Meldungen nach dem Absenden

<table id="bkmrk-fall-meldung-angaben"><thead><tr><th>Fall</th><th>Meldung</th></tr></thead><tbody><tr><td>Angaben stimmen mit dem Kundenstamm überein</td><td>Hinweis, dass das Kennwort an die E-Mail-Adresse geschickt wurde</td></tr><tr><td>Angaben stimmen nicht überein</td><td>„Zu Ihrer Sicherheit wird die E-Mail Adresse durch unsere Mitarbeiter geprüft und dann freigeschaltet. Bitte haben Sie dafür Verständnis, dass dies unter Umständen mehrere Tage dauern kann."</td></tr></tbody></table>

Im zweiten Fall landet die Anforderung im Backend unter *eCom \\ Kundenregistrierung* und muss dort **manuell freigeschaltet** werden.

> **Hinweis:** Der Link **Zurück zur Anmeldung** führt in beiden Fällen auf die Anmeldemaske, nicht zurück auf dieses Formular.

## Passwort vergessen?

<table id="bkmrk-feld-erl%C3%A4uterung-ihr-1"><thead><tr><th>Feld</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Ihre Kundennummer</td><td>Pflicht</td></tr><tr><td>Ihre E-Mail-Adresse</td><td>Pflicht — die für den Zugang verwendete Adresse</td></tr></tbody></table>

<table id="bkmrk-name-funktion-neues-"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>Neues Passwort anfordern</td><td>schickt die Anforderung ab</td></tr><tr><td>Abbrechen</td><td>bricht ab</td></tr></tbody></table>

### Meldungen nach dem Absenden

Unter der Überschrift *Passwort vergessen?* steht dauerhaft der Hinweis „Wir senden Ihnen ein neues Passwort per E-Mail zu."

<table id="bkmrk-fall-meldung-kundenn"><thead><tr><th>Fall</th><th>Meldung</th></tr></thead><tbody><tr><td>Kundennummer und E-Mail-Adresse sind bekannt</td><td>„Ihr neues Passwort wurde Ihnen per E-Mail zugesendet."</td></tr><tr><td>E-Mail-Adresse passt nicht zum Benutzer</td><td>„Die Email Adresse zu diesem Benutzer ist ungültig."</td></tr></tbody></table>

Der Vorgang läuft **zweistufig**, der Kunde erhält **zwei E-Mails**:

<table id="bkmrk-schritt-betreff-der-"><thead><tr><th>Schritt</th><th>Betreff der E-Mail</th><th>Inhalt</th></tr></thead><tbody><tr><td>1</td><td>*Anforderung - Passwort zurücksetzen*</td><td>Hinweis auf die Anforderung und der Link **Kennwort zurücksetzen**</td></tr><tr><td>2</td><td>*Bestätigung - Passwort zurückgesetzt*</td><td>das neue Kennwort im Klartext</td></tr></tbody></table>

Erst der Klick auf den Link setzt das Kennwort zurück. Danach bestätigt der Shop die Aktivierung und weist darauf hin, dass das neue Kennwort per E-Mail unterwegs ist.

Dazu gehören die Templates *Passwort vergessen* und *Passwort zurücksetzen*. Die **Betreffzeilen** lauten anders als die Templatenamen.

> **Hinweis:** Bleibt der Klick auf den Link aus, wird das Kennwort **nicht** zurückgesetzt. Das alte gilt weiter.

## Noch kein Kunde?

Für Interessenten, die noch nicht als Kunde geführt werden. Sie erhalten hier **keinen Zugang**, sondern lösen eine Anfrage an den Shopbetreiber aus.

<table id="bkmrk-feld-pflicht-firma-j"><thead><tr><th>Feld</th><th>Pflicht</th></tr></thead><tbody><tr><td>Firma</td><td>ja</td></tr><tr><td>Inhaber</td><td>nein</td></tr><tr><td>Strasse</td><td>ja</td></tr><tr><td>PLZ</td><td>ja</td></tr><tr><td>Ort</td><td>ja</td></tr><tr><td>Land</td><td>ja — Auswahlliste</td></tr><tr><td>Telefon</td><td>ja</td></tr><tr><td>E-Mail</td><td>ja</td></tr></tbody></table>

<table id="bkmrk-name-funktion-ok-sch"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>OK</td><td>schickt die Anfrage ab</td></tr><tr><td>Abbrechen</td><td>bricht ab</td></tr></tbody></table>

### Meldung nach dem Absenden

„Vielen Dank für Ihre Anfrage. Wir melden uns in Kürze bei Ihnen."

Darunter der Link **Zurück zur Anmeldung**.

> **Hinweis:** Der Link **Noch kein Kunde?** erscheint nur, wenn die Einstellung *Noch kein Kunde* gesetzt ist. Ohne diese Einstellung bleibt nur **Noch kein Zugang?**, das über den Textbaustein *Noch kein Zugang – Hinweis* erweitert werden kann.

# 3. Preise und Rabatte

# Preisfindung

## Übersicht

Das eCom-System bringt keine eigene Preislogik mit, sondern nutzt die von DeDeSales.

Welche Preise Ihre Kunden im Shop sehen, hängt daher davon ab, wie die Preisfindung in DeDeSales umgesetzt ist.

Erscheinen im Shop keine Preise oder nur Listenpreise, ist die Ursache in der Regel hier zu finden.

## Online- und Offline-Preisfindung

Ist in DeDeSales keine Offline-Preisfindung umgesetzt, stehen auch im eCom-System nur Listenpreise zur Verfügung. Sämtliche Anzeigen und Werte für den Kunden beziehen sich in diesem Fall auf Listenpreise.

Das betrifft nicht nur die Preisanzeige am Artikel, sondern alle abgeleiteten Werte, also auch Positionssummen und die Warenkorbsumme.

## Live-Preis-Findung

Die Live-Preis-Findung lässt sich im eCom-System aktivieren. Der Kunde kann die Preise dann im Warenkorb durch das **ERP-System** berechnen lassen, statt mit den gelieferten Preisen zu arbeiten.

Voraussetzung ist, dass die Zuordnung zwischen Shop und ERP-System stimmt:

<table id="bkmrk-feld-bedingung-preis"><thead><tr><th>Feld</th><th>Bedingung</th></tr></thead><tbody><tr><td><code>PreisgruppeKundennummer</code></td><td>muss mit dem Feld <code>Kundennummer</code> oder dem Feld <code>Preisgruppencode</code> übereinstimmen</td></tr><tr><td>Währung</td><td>muss übereinstimmen</td></tr><tr><td>Mandant</td><td>muss übereinstimmen</td></tr></tbody></table>

Stimmt eine dieser Angaben nicht, erhält der Kunde im Shop keine Preise.

Wie sich die Anzeige nach einer Abfrage verhält — nur noch der Live-Preis, geänderte Summenbeschriftung, ausgeblendete Hinweistexte — und wann die Preise wieder verfallen, steht auf der Seite *Warenkorb*.

## Kundenindividuelle Preise und Staffelpreise

<table id="bkmrk-anzeige-steuerung-ku"><thead><tr><th>Anzeige</th><th>Steuerung</th></tr></thead><tbody><tr><td>Kundenindividueller Preis</td><td>über die Einstellung *KIP anzeigen*; ohne sie fällt die Anzeige weg</td></tr><tr><td>Staffelpreise auf der Artikel-Detailseite</td><td>werden angezeigt, sofern zum Artikel welche geliefert werden. Eine Einstellung im Backend gibt es dafür nicht</td></tr></tbody></table>

# Gutscheine und Sonderrabatte

## Übersicht

Das eCom-System kennt zwei Wege, einen Preisnachlass zu gewähren:

- **Gutschein** — der Kunde löst im Warenkorb einen Code ein. Auch Gutscheincode, Rabattcode oder Coupon genannt.
- **Sonderrabatt** — gilt automatisch für alle Kunden und alle Artikel, ohne Zutun des Kunden.

Beide werden im DeDeSales-Auftrag als **Kopfrabatt** hinterlegt.

## Gegenüberstellung

<table id="bkmrk-gutschein-sonderraba"><thead><tr><th></th><th>Gutschein</th><th>Sonderrabatt</th></tr></thead><tbody><tr><td>Einlösung</td><td>Der Kunde gibt im Warenkorb einen Gutscheincode ein.</td><td>Wirkt automatisch, ohne Zutun des Kunden.</td></tr><tr><td>Gültigkeitsbereich</td><td>steuerbar über Verwendungsregeln</td><td>alle Kunden und alle Artikel</td></tr><tr><td>Zeitraum</td><td>zeitlich begrenzbar</td><td>begrenzter Zeitraum</td></tr><tr><td>Verwaltung im Backend</td><td>*eCom \\ Gutscheinverwaltung*</td><td>*eCom \\ Sonderrabatte*</td></tr><tr><td>Hinterlegung im Auftrag</td><td>Kopfrabatt</td><td>Kopfrabatt</td></tr></tbody></table>

## Felder eines Gutscheins

Gepflegt unter *eCom \\ Gutscheinverwaltung*.

<table id="bkmrk-feld-erl%C3%A4uterung-nam"><thead><tr><th>Feld</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Name</td><td>Bezeichnung im Backend</td></tr><tr><td>Gutschein-Code</td><td>der Code, den der Kunde eingibt</td></tr><tr><td>Rabatt %</td><td>Höhe des Rabatts — **nur prozentual**</td></tr><tr><td>Von / Bis</td><td>Gültigkeitszeitraum</td></tr><tr><td>Mindestbestellwert</td><td>ab welchem Warenwert der Gutschein gilt; <code>0</code> bedeutet keine Grenze</td></tr><tr><td>Währung</td><td></td></tr><tr><td>Art der Kundenauswahl</td><td>zum Beispiel *alle Kunden*</td></tr><tr><td>Verwendbarkeit</td><td>wie oft und von wem der Code eingelöst werden darf, siehe unten</td></tr><tr><td>Kombinierbar mit eCom - Rabatt</td><td>Bestimmt das Zusammentreffen mit einem Sonderrabatt, siehe unten</td></tr><tr><td>Kampagne</td><td>Zuordnung zu einer Kampagne</td></tr></tbody></table>

## Verwendungsregeln für Gutscheine

Das Feld **Verwendbarkeit** legt fest, wie oft und von wem der Code eingelöst werden darf. Die Auswahlliste kennt vier Werte, im Ausgangszustand steht sie auf *bitte wählen…*:

<table id="bkmrk-wert-bedeutung-gutsc"><thead><tr><th>Wert</th><th>Bedeutung</th></tr></thead><tbody><tr><td>Gutschein ist einmalig verwendbar</td><td>kundenübergreifend nur ein einziges Mal</td></tr><tr><td>Gutschein ist mehrfach verwendbar</td><td>beliebig oft</td></tr><tr><td>Gutschein ist mehrfach verwendbar, aber nur bei Erstbestellung</td><td>bei mehreren Kunden, aber je Kunde nur bei dessen erster Bestellung</td></tr><tr><td>Gutschein ist mehrfach verwendbar, aber nur einmal je Kunde</td><td>bei allen Kunden, aber je Kunde nur einmal</td></tr></tbody></table>

Der Gutscheinwert wird **ausschließlich prozentual** verrechnet. Das Feld heißt *Rabatt %*, einen festen Betrag gibt es nicht.

## Wenn Gutschein und Sonderrabatt zusammentreffen

Je Gutschein wird über den Haken **Kombinierbar mit eCom - Rabatt** festgelegt, ob er mit einem Sonderrabatt zusammentrifft.

<table id="bkmrk-einstellung-am-gutsc"><thead><tr><th>Einstellung am Gutschein</th><th>Verhalten</th></tr></thead><tbody><tr><td>**Ja**</td><td>Beide Rabatte werden **addiert**. Die Summe wird als Kopfrabatt in den DeDeSales-Auftrag eingetragen.</td></tr><tr><td>**Nein**</td><td>Das eCom-System **verweigert den Gutschein**, wenn der Sonderrabatt höher ist als der Gutschein-Rabatt.</td></tr></tbody></table>

Die Regel bei **Nein** ist also kein einfaches Verbot der Kombination, sondern ein Vergleich: Der Gutschein wird **nur dann abgelehnt, wenn der Sonderrabatt höher ist**. Bei Gleichstand wird er angenommen.

> **Wichtig:** Der Vergleich entscheidet nur über die **Annahme** des Gutscheins — nicht darüber, wie viel am Ende abgezogen wird. Ist der Gutschein angenommen, wird der Sonderrabatt beim Bestellabschluss **auf null gesetzt**. Es zählt dann ausschließlich der Gutschein-Rabatt, unabhängig von seiner Höhe.

Das ist die praktische Folge: Bei **Nein** addiert sich nichts, und ein angenommener Gutschein **ersetzt** den Sonderrabatt.

## Warum ein Gutschein abgelehnt wird

<table id="bkmrk-grund-meldung-code-e"><thead><tr><th>Grund</th><th>Meldung</th></tr></thead><tbody><tr><td>Code existiert nicht, gilt nicht für diesen Mandanten oder Kunden, oder die Währung passt nicht</td><td>„Gutschein nicht gefunden!"</td></tr><tr><td>Gültigkeitszeitraum überschritten</td><td>„Der Gutschein ist abgelaufen!"</td></tr><tr><td>*einmalig verwendbar* und bereits von irgendjemandem eingelöst</td><td>„Gutschein bereits eingelöst!"</td></tr><tr><td>*nur einmal je Kunde* und von diesem Kunden bereits eingelöst</td><td>„Gutschein bereits eingelöst!"</td></tr><tr><td>*nur bei Erstbestellung* und der Kunde hat bereits einen abgeschlossenen Auftrag</td><td>„Dieser Gutschein ist nur für Erstbesteller!"</td></tr><tr><td>nicht kombinierbar und der Sonderrabatt ist höher</td><td>„Gutschein nicht kombinierbar und niedriger als der Sonderrabatt!"</td></tr><tr><td>Mindestbestellwert des Gutscheins nicht erreicht</td><td>„Mindestbestellwert … unterschritten!" mit eingesetztem Betrag</td></tr></tbody></table>

Treffen mehrere Gründe zu, erscheinen die Meldungen **untereinander**. Die Meldung *„Der Gutschein ist abgelaufen!"* bildet die Ausnahme: Sie erscheint nur, wenn kein anderer Ablehnungsgrund vorliegt.

## Was der Kunde im Shop sieht

Weder Gutschein noch Sonderrabatt mindern die angezeigte Summe. Beide erscheinen als **Text**:

<table id="bkmrk-ort-darstellung-ware"><thead><tr><th>Ort</th><th>Darstellung</th></tr></thead><tbody><tr><td>Warenkorb</td><td>Hinweiszeile über dem Gutscheinfeld, etwa *„Hier kommt ein Sonderrabatt (5%)"*</td></tr><tr><td>Bestellabschluss</td><td>je Rabatt ein grauer Hinweis, etwa *„Der Sonderrabatt von 5 % wird erst auf der Rechnung abgezogen."*</td></tr><tr><td>Bestätigungsseite</td><td>**kein Hinweis** — dort taucht der Rabatt nicht mehr auf</td></tr><tr><td>Bestätigungs-E-Mail</td><td>**kein Hinweis** — die Mail an den Kunden enthält im Auslieferungszustand weder Positionen noch Beträge. Mit einem eigenen Template lassen sich Positionen mitschicken</td></tr></tbody></table>

Der Kunde sieht den Rabatt also **nur im Bestellabschluss** und später auf der Rechnung.

Der Abzug erfolgt erst auf der **Rechnung**. Das ist eine bewusste Entscheidung — der Rabatt geht als Kopfrabatt in den Auftrag und wird bei der Fakturierung verrechnet.

## Übergabe an das ERP-System

> **Achtung:** Der Rabatt findet in Ihrem ERP-System nur dann Anwendung, wenn die Schnittstelle beziehungsweise der Connector den Kopfrabatt berücksichtigt. Das gilt für Gutscheine und Sonderrabatte gleichermaßen.

Beachten Sie außerdem, wie Ihre Schnittstelle definiert ist: Feste Beträge werden anders übergeben als prozentuale Werte.

## Auswertung

Um zu sehen, wer einen Gutschein verwendet hat, öffnen Sie im Backend die Gutscheinverwaltung und wählen den gewünschten Gutschein aus. Über den Reiter **generierte Gutscheine** auf der linken Seite erhalten Sie rechts eine Liste:

<table id="bkmrk-spalte-erl%C3%A4uterung-g"><thead><tr><th>Spalte</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Gutschein-Code</td><td></td></tr><tr><td>Ausgestellt am</td><td>Datum und Uhrzeit</td></tr><tr><td>Eingelöst am</td><td>Datum und Uhrzeit; leer, solange der Code nicht verwendet wurde</td></tr><tr><td>Kundennummer</td><td>wer ihn eingelöst hat</td></tr><tr><td>ADM</td><td>zuständiger Außendienstmitarbeiter</td></tr><tr><td>Auftragsnummer</td><td>der Auftrag, in dem der Gutschein gelandet ist</td></tr></tbody></table>

Über die **Auftragsnummer** lässt sich nachvollziehen, welche Bestellung zu einem Gutschein gehört.

# 4. Der Weg durch den Shop

# Hauptseite

## Übersicht

Die Hauptseite ist die Einstiegsseite nach der Anmeldung.

Sie bietet die beiden Wege zum Artikel — Warengruppen und Volltextsuche —, zeigt die für eCom freigeschalteten Auftragsvorlagen und enthält die Marketingflächen.

Kopf- und Fußzeile bleiben im ganzen Shop sichtbar.

> **Wichtig:** Sind **keine Container-Bilder** gepflegt, werden die Container-Bereiche ausgeblendet. Der Kunde landet nach der Anmeldung dann **direkt auf der Artikel-Übersichtsseite**, nicht auf der Hauptseite.

## Kopfzeile

Die Kopfzeile bleibt im ganzen Shop sichtbar.

<table id="bkmrk-element-erl%C3%A4uterung-" style="width: 100%;"><thead><tr><th style="width: 17.2754%;">Element</th><th style="width: 82.7246%;">Erläuterung</th></tr></thead><tbody><tr><td style="width: 17.2754%;">Logo</td><td style="width: 82.7246%;">Ihr Logo, links außen</td></tr><tr><td style="width: 17.2754%;">Shopbetreiber</td><td style="width: 82.7246%;">Name des Betreibers, daneben. Ist kein Name gepflegt, bleibt die Stelle leer und die übrigen Elemente rücken nach links — eine Ersatzanzeige gibt es nicht</td></tr><tr><td style="width: 17.2754%;">Kategorien</td><td style="width: 82.7246%;">Aufklappmenü mit der Warengruppenstruktur</td></tr><tr><td style="width: 17.2754%;">Highlights</td><td style="width: 82.7246%;">Aufklappmenü mit den für eCom markierten Auftragsvorlagen</td></tr><tr><td style="width: 17.2754%;">Produktsuche</td><td style="width: 82.7246%;">Volltextsuche, führt auf die *Artikel-Übersichtsseite*</td></tr><tr><td style="width: 17.2754%;">Warenkorb</td><td style="width: 82.7246%;">Symbol mit der Anzahl der Positionen</td></tr><tr><td style="width: 17.2754%;">Benutzersymbol</td><td style="width: 82.7246%;">Menü mit Kontofunktionen und Belegen</td></tr></tbody></table>

> **Hinweis:** Hat ein Highlight-Eintrag ein **Untermenü**, lädt der Klick auf den Eintrag selbst **keine** Artikelliste — er öffnet nur das Untermenü. Bei Kategorien lädt schon der erste Klick die Liste.

## Fußzeile

Am Seitenende stehen Logo und Shopbetreiber sowie zwei Spalten mit Verweisen. Sie sind auf jeder Seite des Shops erreichbar.

<table id="bkmrk-eintrag-erl%C3%A4uterung-" style="width: 100%;"><thead><tr><th style="width: 14.7734%;">Eintrag</th><th style="width: 68.0633%;">Erläuterung</th><th style="width: 17.2825%;">Sichtbar</th></tr></thead><tbody><tr><td style="width: 14.7734%;">Kontakt</td><td style="width: 68.0633%;">Formular für eine Mitteilung an Sie. Zusätzlich lassen sich die zuständigen Rollen mit Telefon, E-Mail und Fax einblenden.</td><td style="width: 17.2825%;">nur nach der Anmeldung</td></tr><tr><td style="width: 14.7734%;">Hotline</td><td style="width: 68.0633%;">Ruftext für Fragen zum eCom-System, aus dem Textbaustein *Support Hotline*.</td><td style="width: 17.2825%;">nur mit hinterlegtem Text</td></tr><tr><td style="width: 14.7734%;">Newsletter</td><td style="width: 68.0633%;">aus dem Textbaustein *Newsletter*.</td><td style="width: 17.2825%;">nur mit hinterlegtem Text</td></tr><tr><td style="width: 14.7734%;">Downloads</td><td style="width: 68.0633%;">Dateien, die per FTP im Ordner <code>&#95;&#95;DeDeContent&#92;Dateien&#92;Mitarbeiter&#92;&#95;&#95;&#95;eCom</code> hinterlegt sind.</td><td style="width: 17.2825%;">wenn Dateien vorhanden</td></tr><tr><td style="width: 14.7734%;">AGB</td><td style="width: 68.0633%;">Textbaustein oder URL</td><td style="width: 17.2825%;">nur mit hinterlegtem Inhalt</td></tr><tr><td style="width: 14.7734%;">Datenschutz</td><td style="width: 68.0633%;">Textbaustein oder URL</td><td style="width: 17.2825%;">**immer**</td></tr><tr><td style="width: 14.7734%;">Impressum</td><td style="width: 68.0633%;">Textbaustein oder URL</td><td style="width: 17.2825%;">**immer**</td></tr></tbody></table>

Der Eintrag **Kontakt** hängt allein am Anmeldestatus, nicht an gepflegten Inhalten: Er erscheint erst, wenn der Kunde angemeldet ist. Interessenten ohne Zugang nutzen stattdessen **Noch kein Kunde** auf der Anmeldemaske.

**Datenschutz** und **Impressum** sind Pflichtangaben und erscheinen deshalb bewusst **immer** — auch dann, wenn nichts hinterlegt ist. Der Link führt in diesem Fall auf eine interne Seite mit dem Platzhaltertext *„Für diesen Bereich ist aktuell kein Inhalt hinterlegt."*

> **Achtung:** Pflegen Sie diese beiden Texte vor dem Livegang. Ein fehlender Inhalt lässt den Link nicht verschwinden, sondern führt Ihre Kunden auf eine leere Seite.

Die **AGB** gelten dagegen als optionaler Rechtstext: Ohne hinterlegten Inhalt erscheint der Eintrag gar nicht erst in der Fußzeile.

Ganz unten rechts steht die **Version** des Shops, etwa `v19.0.35973.0`. Sie ist auf jeder Seite sichtbar — auch auf der Anmeldemaske — und die verlässlichste Angabe, wenn ein Kunde eine Beobachtung meldet.

Die **zweite Spalte** führt die selbst angelegten Menüpunkte aus der *Menüerweiterung*. Sie können auf einen Artikel, eine Warengruppe, eine Auftragsvorlage oder eine externe URL verweisen. Sind keine Menüpunkte gepflegt, entfällt die Spalte — sie bleibt nicht leer stehen.

### Kontaktmaske

Die Maske ist ein **reines Formular** mit drei Angaben:

<table id="bkmrk-feld-herkunft-kontak"><thead><tr><th>Feld</th><th>Herkunft</th></tr></thead><tbody><tr><td>Kontaktgrund</td><td>Auswahlliste aus der Code-Tabelle *eCom Kontaktgrund*</td></tr><tr><td>Name</td><td>Eingabe des Kunden</td></tr><tr><td>Text</td><td>Eingabe des Kunden</td></tr></tbody></table>

Die Anfrage geht über das E-Mail-Abo *eCom - Kontaktformular* an den Innendienst.

## Statusanzeigen in der Kopfzeile

<table id="bkmrk-anzeige-erl%C3%A4uterung-" style="width: 100%;"><thead><tr><th style="width: 18.2283%;">Anzeige</th><th style="width: 52.6894%;">Erläuterung</th><th style="width: 29.0822%;">Recht</th></tr></thead><tbody><tr><td style="width: 18.2283%;">Warenkorb</td><td style="width: 52.6894%;">Anzahl der Artikel im Warenkorb.</td><td style="width: 29.0822%;"> </td></tr><tr><td style="width: 18.2283%;">Benutzersymbol</td><td style="width: 52.6894%;">Öffnet ein Menü mit den Kontofunktionen und den **Belegen**. Eine Anzahl wird dort nicht geführt.</td><td style="width: 29.0822%;">Belegarten je nach <code>STATISTIK &#47; Belege &#47; …</code></td></tr></tbody></table>

### Menü des Benutzersymbols

Das Menü hat zwei Spalten:

<table id="bkmrk-spalte-eintr%C3%A4ge-link"><thead><tr><th>Spalte</th><th>Einträge</th></tr></thead><tbody><tr><td>links</td><td>*Mein Profil*, *Passwort ändern*, *Adresse ändern*, *E-Mail-Adresse ändern*, darunter abgesetzt *Abmelden* — siehe [Mein Profil](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/mein-profil)</td></tr><tr><td>rechts</td><td>die Belegarten — *Offene Posten*, *Rückstände*, *Auftrag*, *Lieferschein*, *Rechnung — siehe [Belege](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/belege)*</td></tr></tbody></table>

## Marketingflächen

Auf der Hauptseite stehen zwei Container-Bereiche zur Verfügung: **Startseite oben** und **Startseite unten**. Beide werden im Backend gepflegt, und für beide lässt sich unabhängig **Slider** oder **Float** einstellen — eine feste Zuordnung gibt es nicht.

Die übliche Kombination ist oben ein Slider und unten ein Float-Bereich:

<table id="bkmrk-bereich-darstellung-" style="width: 83.2143%;"><thead><tr><th style="width: 15.7552%;">Bereich</th><th style="width: 84.2448%;">Darstellung</th></tr></thead><tbody><tr><td style="width: 15.7552%;">oben, Slider</td><td style="width: 84.2448%;">Karten nebeneinander, Blättern über die Pfeile am Rand</td></tr><tr><td style="width: 15.7552%;">unten, Float</td><td style="width: 84.2448%;">Raster mit **vier Spalten**. Container vom Typ *Bild mit Text* oder *Text mit Bild* belegen zwei Spalten</td></tr></tbody></table>

Die Reihenfolge innerhalb eines Bereichs bestimmt die **Priorität** des Containers.

Sind keine Container-Bilder gepflegt, entfallen beide Bereiche — und damit die Hauptseite als Einstiegsseite. Siehe den Hinweis in der Übersicht.

Bildmaße und Darstellungsarten sind auf der Seite *Marketing-Container* beschrieben.

# Artikel-Übersichtsseite

## Übersicht

Die Artikel-Übersichtsseite zeigt eine Menge von Artikeln zur Auswahl.

Sie wird angezeigt, wenn der Kunde über die Volltextsuche, über eine Kategorie oder über die Highlights einsteigt. Sind keine Container-Bilder gepflegt, ist sie außerdem die Einstiegsseite direkt nach der Anmeldung.

Ein Klick auf einen Artikel führt auf die *Artikel-Detailseite*.

## Aufbau

<table id="bkmrk-bereich-erl%C3%A4uterung-"><thead><tr><th>Bereich</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Filterleiste</td><td>links: Lieferbarkeit, Kategorien, Highlights, Ansicht, Sortierung, Artikel pro Seite</td></tr><tr><td>Ergebnisliste</td><td>rechts daneben, zeigt die gefundenen Artikel</td></tr></tbody></table>

## Unterschied zwischen Kategorie und Highlight beim Einstieg

<table id="bkmrk-einstieg-verhalten-b"><thead><tr><th>Einstieg</th><th>Verhalten beim Klick</th></tr></thead><tbody><tr><td>Kategorie</td><td>lädt die Artikelliste sofort</td></tr><tr><td>Highlight ohne Untermenü</td><td>lädt die Artikelliste sofort</td></tr><tr><td>Highlight **mit Untermenü**</td><td>lädt **keine** Artikelliste, sondern öffnet nur das Untermenü. Erst ein Eintrag daraus führt zur Liste</td></tr></tbody></table>

## Steuerung der Anzeige

<table id="bkmrk-element-erl%C3%A4uterung-" style="width: 100%; height: 225.375px;"><thead><tr style="height: 29.7969px;"><th style="width: 22.4098%; height: 29.7969px;">Element</th><th style="width: 77.5902%; height: 29.7969px;">Erläuterung</th></tr></thead><tbody><tr style="height: 29.7969px;"><td style="width: 22.4098%; height: 29.7969px;">Produkt sofort lieferbar</td><td style="width: 77.5902%; height: 29.7969px;">Filtert die Liste auf sofort lieferbare Produkte.</td></tr><tr style="height: 46.5938px;"><td style="width: 22.4098%; height: 46.5938px;">Kategorien</td><td style="width: 77.5902%; height: 46.5938px;">Schränkt die Anzeige auf eine Warengruppe und deren Untergruppen ein. Die Liste ist hierarchisch und führt je Eintrag die Anzahl der Artikel in Klammern</td></tr><tr style="height: 29.7969px;"><td style="width: 22.4098%; height: 29.7969px;">Sortierung</td><td style="width: 77.5902%; height: 29.7969px;">*Relevanz, Artikelnummer*, *Bezeichnung, Lagerbestand Aufsteigend, Lagerbestand absteigend, Standardwert wird über das Backend gesteuert*</td></tr><tr style="height: 29.7969px;"><td style="width: 22.4098%; height: 29.7969px;">Artikel pro Seite</td><td style="width: 77.5902%; height: 29.7969px;">25 \| 50 \| 100 \| 200</td></tr><tr style="height: 29.7969px;"><td style="width: 22.4098%; height: 29.7969px;">Ansicht</td><td style="width: 77.5902%; height: 29.7969px;">Umschalter mit zwei Werten: **Liste** und **Kacheln**.</td></tr><tr><td style="width: 22.4098%;">Pager - unter der Liste</td><td style="width: 77.5902%;">Wechselt die Seiten</td></tr><tr style="height: 29.7969px;"><td style="width: 22.4098%; height: 29.7969px;">Alle übernehmen - unter der Liste</td><td style="width: 77.5902%; height: 29.7969px;">Übernimmt die Artikel der **angezeigten Seite** in den Warenkorb. Siehe unten.</td></tr></tbody></table>

### Alle übernehmen

Die Schaltfläche übernimmt genau das, was gerade auf dem Bildschirm steht — nicht das gesamte Suchergebnis und nicht das Sortiment.

<table id="bkmrk-einstellung-wirkung-" style="width: 100%;"><thead><tr><th style="width: 21.0904%;">Einstellung</th><th style="width: 78.9096%;">Wirkung auf die Übernahme</th></tr></thead><tbody><tr><td style="width: 21.0904%;">Kategorie</td><td style="width: 78.9096%;">nur die Artikel dieser Kategorie</td></tr><tr><td style="width: 21.0904%;">Produkt sofort lieferbar</td><td style="width: 78.9096%;">nur die lieferbaren Artikel</td></tr><tr><td style="width: 21.0904%;">Artikel pro Seite</td><td style="width: 78.9096%;">**nur die aktuelle Seite**. Bei 50 Artikeln pro Seite werden höchstens 50 übernommen, unabhängig davon, wie viele Treffer es insgesamt gibt</td></tr></tbody></table>

Nicht jeder Artikel der Seite lässt sich übernehmen. Bleibt einer liegen, erscheint rechts neben der Schaltfläche in Rot:

> „Nicht alle Artikel konnten in den Warenkorb gelegt werden."

<table id="bkmrk-ursache-erl%C3%A4uterung-"><thead><tr><th>Ursache</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Matrix-Artikel</td><td>lässt sich grundsätzlich nicht aus der Liste übernehmen, sondern nur über die *Matrixerfassung*</td></tr><tr><td>gesperrter Artikel</td><td>Artikel mit einem Status, der die Bestellung ausschließt</td></tr></tbody></table>

### Kategoriefilter

Es werden nur Kategorien angezeigt, in denen auch Artikel enthalten sind.

Ausnahme: Wird von der Startseite direkt auf eine Kategorie verlinkt, erscheint sie auch ohne Inhalt.

### Sortierung

*Relevanz* wirkt nur bei einer Suche und sortiert die besten Treffer nach oben. Welche Sortierung im Auslieferungszustand gilt, legt die Einstellung *Standardsortierung* im Backend fest.

## Aufbau einer Zeile in der Listenansicht

<table id="bkmrk-element-erl%C3%A4uterung--1" style="width: 100%;"><thead><tr><th style="width: 18.1104%;">Element</th><th style="width: 81.8896%;">Erläuterung</th></tr></thead><tbody><tr><td style="width: 18.1104%;">Artikelbild</td><td style="width: 81.8896%;">sofern zum Artikel vorhanden</td></tr><tr><td style="width: 18.1104%;">Artikelnummer</td><td style="width: 81.8896%;"> </td></tr><tr><td style="width: 18.1104%;">Artikelbezeichnung</td><td style="width: 81.8896%;">führt auf die Artikel-Detailseite</td></tr><tr><td style="width: 18.1104%;">Lagerbestand</td><td style="width: 81.8896%;">wenn im Backend eingestellt, wird der Lagerbestand als Pille rechts neben der Produktnummer angezeigt</td></tr><tr><td style="width: 18.1104%;">Kennzeichen</td><td style="width: 81.8896%;">Farbige Marker am Artikel, etwa *Fokusartikel* oder *Topseller*. Sie kommen aus **Ja-Nein-Feldern des Artikelstamms** — ist das Feld gesetzt, erscheint der Marker.</td></tr><tr><td style="width: 18.1104%;">Preis</td><td style="width: 81.8896%;">sofern zum Artikel vorhanden</td></tr><tr><td style="width: 18.1104%;">Menge</td><td style="width: 81.8896%;">Eingabefeld mit **−** und **+**</td></tr><tr><td style="width: 18.1104%;">Warenkorb-Symbol</td><td style="width: 81.8896%;">legt den Artikel mit der eingestellten Menge in den Warenkorb</td></tr></tbody></table>

> **Ausnahme:** Ein Matrix-Artikel lässt sich nicht aus der Zeile in den Warenkorb legen. Er muss über die Detailseite geöffnet werden — dort führt die Schaltfläche **Matrix öffnen** in die *Matrixerfassung*.

## Was die Artikelmenge einschränkt

Sieht ein Kunde weniger Artikel als erwartet, kommen drei Ursachen in Frage:

- Die Einstellung *Artikel ohne Bestand nicht anzeigen* ist gesetzt.
- Die Einstellung *Warengruppen ausblenden* ist gesetzt.
- Für den Kunden greift eine Auftragsvorlage mit geschlossener Listung, die die Artikel auf eine Artikelliste begrenzt.

# Artikel-Detailseite

## Übersicht

Die Artikel-Detailseite zeigt einen einzelnen Artikel mit allen verfügbaren Informationen.

Sie zeigt alles, was zum Artikel geliefert wird — Beschreibung, Staffelpreise, Einheiten und Produkteigenschaften.

Welche Abschnitte erscheinen, hängt von Rechten und Einstellungen ab.

## Kopf

<table id="bkmrk-bezeichnung-sichtbar"><thead><tr><th>Bezeichnung</th><th>Sichtbar</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Artikelnummer</td><td>immer</td><td>erscheint als *Produkt* mit der Nummer unter der Bezeichnung</td></tr><tr><td>Artikelbezeichnung</td><td>immer</td><td> </td></tr><tr><td>Verpackungseinheit</td><td>wenn am Artikel gesetzt</td><td>Beschriftung *Verpackungseinheit (VE)*</td></tr><tr><td>Preis</td><td>wenn geliefert</td><td> </td></tr><tr><td>UVP</td><td>wenn geliefert</td><td>Es gibt **keine Einstellung** dazu — der UVP hängt allein an den gelieferten Daten</td></tr><tr><td>Artikelstatus</td><td>wenn eingestellt</td><td>Einstellung *Artikelstatus anzeigen*</td></tr><tr><td>Lagerbestand</td><td>je Einstellung</td><td>Farbige oder graue Pille mit Zahl, je nach Einstellung *Lagerbestand anzeigen*. Der Tooltip nennt die Verfügbarkeit.</td></tr><tr><td>Artikelbild</td><td>immer</td><td>Ein Klick öffnet das Bild in einem Popup in größerer Ansicht.</td></tr></tbody></table>

> **Grundsatz:** Alle Angaben dieser Seite setzen voraus, dass die zugehörigen **Daten geliefert** werden. Fehlt ein Wert in den Artikeldaten, bleibt die Zeile im Shop leer oder entfällt — unabhängig von Rechten und Einstellungen.

## Artikellangtext

Der Artikellangtext stammt aus dem DeDeSales-Client. An dieser Stelle sind Formatierungen möglich, und es lassen sich Videos einbetten.

Beispiel für eine Einbettung:

```html
<p><b>DeDeSales </b>ist die mobile CRM Lösung für den Außendienst.</p>
<iframe width="50%" height="50%" src="https://www.youtube.com/embed/uYamA4wRXk0"
  title="YouTube video player" frameborder="0" allowfullscreen></iframe>

```

## Bestellmenge

Eingabefeld für die Bestellmenge mit Schaltfläche zur Übernahme in den Warenkorb. Die voreingestellte Menge entspricht der des DeDeSales-Clients.

Bei der Übernahme in den Warenkorb prüft das System:

- Ist der Artikel bereits im Warenkorb?
- Ist die Menge gültig?

### Matrix-Artikel

Bei einem **Matrix-Artikel** ist der Aufbau der Seite derselbe — nur die Schaltfläche ist eine andere:

<table id="bkmrk-artikel-schaltfl%C3%A4che"><thead><tr><th>Artikel</th><th>Schaltfläche</th></tr></thead><tbody><tr><td>normaler Artikel</td><td>*In den Warenkorb*</td></tr><tr><td>Matrix-Artikel</td><td>**Matrix öffnen**</td></tr></tbody></table>

Die Mengen werden dann nicht hier, sondern in der **Matrixerfassung** erfasst. Ob ein Artikel ein Matrix-Artikel ist, ergibt sich aus dem **Artikelstatus**.

Siehe [Matrixerfassung](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/matrixerfassung).

## Zusatzinformationen

<table id="bkmrk-bezeichnung-erl%C3%A4uter"><thead><tr><th>Bezeichnung</th><th>Erläuterung</th><th>Bedingung</th></tr></thead><tbody><tr><td>Produkteigenschaften</td><td>Ein eigener Bereich mit EAN, Größe und Gewicht</td><td>Einstellung *Produkteigenschaften anzeigen*</td></tr><tr><td>Verweis auf eine Webseite</td><td>Am Seitenende kann eine URL zum Artikel stehen.</td><td>wenn in den Artikeldaten vorhanden</td></tr><tr><td>Beschreibung</td><td>Der Artikellangtext aus dem DeDeSales-Client.</td><td>Recht <code>BASIS &#47; Artikelstamm &#47; Beschreibungstexte</code></td></tr><tr><td>Staffelpreise</td><td>Die verfügbaren Staffelpreise zum Artikel.</td><td>sofern zum Artikel vorhanden</td></tr><tr><td>Artikelhistorie</td><td>Die letzten Käufe dieses Kunden zum gewählten Artikel mit Menge, Datum und Preis.</td><td>Recht <code>AUFTRAG &#47; Position &#47; Artikelhistorie</code></td></tr><tr><td>Einheiten</td><td>Die Einheiten des Artikels.</td><td>Recht <code>BASIS &#47; Artikelstamm &#47; Einheiten anzeigen</code></td></tr></tbody></table>

# Warenkorb

## Übersicht

Der Warenkorb sammelt die Positionen der Bestellung.

Artikel gelangen aus der *Artikel-Übersichtsseite*, aus der *Artikel-Detailseite*, über die Sammelübernahme oder direkt hier über die Produktnummer in den Warenkorb.

Im Warenkorb löst der Kunde außerdem Gutscheine ein und startet — sofern freigeschaltet — die Live-Preis-Findung. Von hier geht es weiter in den *Bestellabschluss*.

## Aufbau

<table id="bkmrk-spalte-erl%C3%A4uterung-p"><thead><tr><th>Spalte</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Produkt</td><td>Bezeichnung, darunter die Artikelnummer</td></tr><tr><td>Menge</td><td>Eingabefeld mit **−** und **+**</td></tr><tr><td>Einzelpreis</td><td> </td></tr><tr><td>Gesamt</td><td>Menge mal Einzelpreis</td></tr><tr><td>Papierkorb-Symbol</td><td>entfernt die Position</td></tr></tbody></table>

Unter der Liste liegen das Feld **Produktnummer** für die Direkteingabe und — sofern freigeschaltet — das Feld **Gutscheincode** mit der Schaltfläche *Einlösen*.

## Artikel aufnehmen

### Direkteingabe der Artikelnummer

Der Kunde gibt eine Artikelnummer ein und bestätigt mit Enter.

<table id="bkmrk-fall-verhalten-artik"><thead><tr><th>Fall</th><th>Verhalten</th></tr></thead><tbody><tr><td>Artikelnummer ist korrekt</td><td>Der Artikel kann über das Warenkorbsymbol hinzugefügt werden.</td></tr><tr><td>Artikelnummer ist nicht korrekt</td><td>Es erscheint eine Fehlermeldung. Ihr Text lässt sich über die Übersetzung ändern.</td></tr></tbody></table>

### Excel-Vorlage

Artikel können per Excel-Vorlage in den Warenkorb eingelesen werden.

<table id="bkmrk-recht-einstellung-au"><thead><tr><th>Recht</th><th>Einstellung</th></tr></thead><tbody><tr><td><code>AUFTRAG &#47; XLS Import</code></td><td>Nein · falsche VEs als Fehler melden · falsche VEs aufrunden und melden</td></tr></tbody></table>

Die Auswahl legt fest, wie mit abweichenden Verpackungseinheiten umgegangen wird:

<table id="bkmrk-wert-verhalten-nein-"><thead><tr><th>Wert</th><th>Verhalten</th></tr></thead><tbody><tr><td>Nein</td><td>kein Excel-Import, die Schaltfläche fehlt</td></tr><tr><td>falsche VEs als Fehler melden</td><td>die betroffene Zeile wird gemeldet und nicht übernommen</td></tr><tr><td>falsche VEs aufrunden und melden</td><td>die Menge wird auf die nächste gültige Verpackungseinheit aufgerundet</td></tr></tbody></table>

Die Datei ist eine **XLSX**-Datei mit den Spalten *Artikelnummer* und *Menge* in dieser Reihenfolge; die erste Zeile gilt als Überschrift und wird nicht importiert.

Bei Fehlern erscheint die Schaltfläche **Alle fehlerfreien Artikel übernehmen**. Damit gelangen alle Zeilen ohne Fehler in den Warenkorb, die gemeldeten bleiben außen vor.

<table id="bkmrk-fall-verhalten-impor"><thead><tr><th>Fall</th><th>Verhalten</th></tr></thead><tbody><tr><td>Import erfolgreich</td><td>Meldung *„x neue Position(en) übernommen."*, der Warenkorb wird **ergänzt**</td></tr><tr><td>Artikel liegt bereits im Warenkorb</td><td>die Mengen werden **addiert**</td></tr><tr><td>Artikelnummer unbekannt</td><td>die Zeile wird gemeldet und nicht übernommen</td></tr><tr><td>falscher Dateityp oder keine Datenzeilen</td><td>Meldung *„Die Excel kann nicht eingelesen werden. Bitte überprüfen Sie das Format der Excel-Datei."*</td></tr></tbody></table>

> **Hinweis:** Beim Aufrunden erscheint **keine** gesonderte Meldung, obwohl der Wert *aufrunden und melden* heißt.

## Preisnachlässe

<table id="bkmrk-element-erl%C3%A4uterung-" style="width: 100%;"><thead><tr><th style="width: 16.0995%;">Element</th><th style="width: 56.9636%;">Erläuterung</th><th style="width: 26.9368%;">Bedingung</th></tr></thead><tbody><tr><td style="width: 16.0995%;">Sonderrabatt</td><td style="width: 56.9636%;">Gilt automatisch für alle Kunden und alle Artikel im hinterlegten Zeitraum.</td><td style="width: 26.9368%;">eCom / Sonderrabatte</td></tr><tr><td style="width: 16.0995%;">Gutscheincode</td><td style="width: 56.9636%;">Der Kunde gibt einen Code ein. Die Verwendungsregeln legen fest, wie oft und von wem er eingelöst werden darf.</td><td style="width: 26.9368%;">eCom / Gutscheinverwaltung zzgl. Einstellung - Gutscheineingabe aktiviert</td></tr></tbody></table>

## Live-Preis-Findung

Ist die Live-Preis-Findung aktiviert, kann der Kunde im Warenkorb die Preise durch das **ERP-System** berechnen lassen.

<table id="bkmrk-recht-auftrag-%2F-posi"><thead><tr><th>Recht</th></tr></thead><tbody><tr><td><code>AUFTRAG &#47; Position &#47; Live Preisabfrage</code></td></tr></tbody></table>

### Wann die Live-Preise verfallen

Die abgefragten Preise sind eine **Momentaufnahme**. Sie werden verworfen, sobald sich die Grundlage ändert:

<table id="bkmrk-ausl%C3%B6ser-folge-jede-"><thead><tr><th>Auslöser</th><th>Folge</th></tr></thead><tbody><tr><td>jede Änderung am Warenkorb — Menge, neue Position, gelöschte Position</td><td>Die Live-Preise werden zurückgesetzt.</td></tr><tr><td>Neuladen der Seite, etwa mit **F5**</td><td>ebenso</td></tr></tbody></table>

Danach zeigt der Warenkorb wieder die regulären Preise, und die Abfrage muss erneut ausgelöst werden.

> **Hinweis:** Das ist kein Fehler, sondern Absicht — ein Live-Preis gehört zu genau der Zusammenstellung, für die er berechnet wurde. Ändert sich der Warenkorb, wäre er nicht mehr belastbar.

## Zusammenfassung

<table id="bkmrk-anzeige-erl%C3%A4uterung-"><thead><tr><th>Anzeige</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Gesamtsumme</td><td>Bezieht sich auf die Preise, die die Preisfindung liefert. Ohne Offline-Preisfindung sind das Listenpreise.</td></tr><tr><td>zzgl. Frachtkosten</td><td>erscheint, wenn Frachtkosten anfallen — als eigene Zeile unter der Summe, **nicht** eingerechnet</td></tr><tr><td>Sonderrabatt</td><td>erscheint als **Hinweistext** über dem Gutscheinfeld, etwa *„Hier kommt ein Sonderrabatt (5%)"*</td></tr></tbody></table>

> **Wichtig:** Weder der Sonderrabatt noch ein eingelöster Gutschein werden von der Gesamtsumme **abgezogen**. Beide erscheinen als Text. Der Abzug erfolgt erst auf der Rechnung.

## Schaltflächen

<table id="bkmrk-name-funktion-sichtb"><thead><tr><th>Name</th><th>Funktion</th><th>Sichtbarkeit</th></tr></thead><tbody><tr><td>Zur Kasse</td><td>Führt zum Bestellabschluss.</td><td>immer</td></tr><tr><td>Weiter einkaufen</td><td>Zurück in den Shop; der Warenkorb bleibt erhalten.</td><td>immer</td></tr><tr><td>Warenkorb leeren</td><td>Entfernt alle Positionen.</td><td>immer</td></tr><tr><td>Live Preisabfrage</td><td>Lässt die Preise durch das ERP-System berechnen.</td><td>Recht <code>AUFTRAG &#47; Position &#47; Live Preisabfrage</code></td></tr><tr><td>Excel Upload</td><td>Liest Artikel aus einer Excel-Vorlage ein.</td><td>Recht <code>AUFTRAG &#47; XLS Import</code></td></tr></tbody></table>

# Bestellabschluss

## Übersicht

Im Bestellabschluss vervollständigt der Kunde die Bestellung und schickt sie ab.

Aus dem Warenkorb kommen die Positionen, hier kommen die Kopfangaben hinzu: Liefertermin, Lieferadresse, Bestellnummer und Texte.

Welche Felder erscheinen, steuern die Rechte der eCom-Rolle. Ob die Bestellung abgeschickt werden kann, entscheiden zusätzlich mehrere Wertgrenzen aus Mandant und Einstellungen.

## Felder

<table id="bkmrk-feld-recht-referenz-"><thead><tr><th>Feld</th><th>Recht</th><th>Referenz</th></tr></thead><tbody><tr><td>Liefertermin</td><td> </td><td>Einstellung *Liefertermineingabe*: Nein · Optional · Pflicht. **Nicht** das gleichnamige Recht der Rolle, siehe unten</td></tr><tr><td>Lieferadresse, Auswahl aus einer Liste</td><td><code>AUFTRAG &#47; Kopf &#47; Lieferadresse&#44; Auswahl aus Datenbank</code></td><td> </td></tr><tr><td>Lieferadresse, neue Adresse erfassen</td><td><code>AUFTRAG &#47; Kopf &#47; Lieferadresse&#44; Erfassung einer neuen Adresse</code></td><td> </td></tr><tr><td>Lieferadresse ist Pflicht</td><td><code>AUFTRAG &#47; Kopf &#47; Lieferadresse Pflicht</code></td><td> </td></tr><tr><td>Ihre Bestellnummer</td><td><code>AUFTRAG &#47; Kopf &#47; Kundenauftragsnummer</code>: Nein · Optional · Pflicht</td><td>Einstellung *Kundenauftragsnummer generieren*</td></tr><tr><td>Auftragstext extern</td><td><code>AUFTRAG &#47; Kopf &#47; Auftragkopf – Auftragstext extern</code></td><td> </td></tr><tr><td>Auftragstext intern</td><td><code>AUFTRAG &#47; Kopf &#47; Auftragkopf – Auftragstext intern</code></td><td> </td></tr><tr><td>Kommissioniertext</td><td><code>AUFTRAG &#47; Kopf &#47; Kommissioniertext</code></td><td>Beschriftung *Auftragskopf – Kommissioniertext*</td></tr><tr><td>Bemerkung</td><td> </td><td> </td></tr><tr><td>Ausliefertext</td><td> </td><td>Beschriftung im Shop; in den Rechten *Auslieferertext*</td></tr></tbody></table>

### Reihenfolge auf dem Bildschirm

Die Seite ist **zweispaltig**. Links die Eingaben, rechts die Zusammenfassung des Warenkorbs.

<table id="bkmrk-reihenfolge-links-be"><thead><tr><th>Reihenfolge links</th><th>Beschriftung im Shop</th></tr></thead><tbody><tr><td>1</td><td>**Lieferadresse** — als Text, daneben die Schaltfläche **Ändern**</td></tr><tr><td>2</td><td>**Wunschliefertermin** — Datumsfeld mit dem Platzhalter *Bitte wählen*</td></tr><tr><td>3</td><td>**Ihre Bestellnummer**</td></tr><tr><td>4</td><td>**Bemerkung**</td></tr><tr><td>5</td><td>**Auftragkopf - Auftragstext extern**</td></tr><tr><td>6</td><td>**Ausliefertext**</td></tr><tr><td>7</td><td>**Auftragskopf - Kommissioniertext**</td></tr><tr><td>8</td><td>**Incoterms** und **USt-ID** — kleine Textzeilen ohne Eingabefeld</td></tr><tr><td>9</td><td>Schaltfläche **Verbindlich bestellen** über die volle Spaltenbreite</td></tr></tbody></table>

Rechts steht die Warenkorb-Karte mit den Positionen, der **Gesamtsumme** und darunter dem grauen Rabatthinweis.

> **Beschriftungen sind uneinheitlich:** Das Terminfeld heißt im Shop **Wunschliefertermin**, während die Einstellung im Backend *Liefertermineingabe* heißt. Beim Auftragstext steht **Auftragkopf** ohne s, beim Kommissioniertext **Auftragskopf** mit s. Und das Feld, das in den Rechten *Auslieferertext* heißt, trägt im Shop die Beschriftung **Ausliefertext**.

### Angaben aus dem Kundenstamm

Neben den Eingabefeldern zeigt der Bestellabschluss Konditionen, die am Kunden hängen:

<table id="bkmrk-angabe-beispiel-inco"><thead><tr><th>Angabe</th><th>Beispiel</th></tr></thead><tbody><tr><td>Incoterms</td><td>Code mit Übersetzung aus der Code-Tabelle</td></tr><tr><td>USt-ID</td><td>Umsatzsteuer-Identnummer des Kunden</td></tr><tr><td>Versandbedingungen</td><td>Code mit Übersetzung aus der Code-Tabelle</td></tr><tr><td>Zahlungsbedingungen</td><td>Code mit Übersetzung aus der Code-Tabelle</td></tr></tbody></table>

Jede dieser Angaben erscheint **nur, wenn sie am Kunden hinterlegt ist**. Sind Versand- und Zahlungsbedingungen nicht gepflegt, stehen dort nur Incoterms und USt-ID.

<table id="bkmrk-eigenschaft-verhalte"><thead><tr><th>Eigenschaft</th><th>Verhalten</th></tr></thead><tbody><tr><td>Herkunft</td><td>**ERP-System**, am Kunden hinterlegt</td></tr><tr><td>Änderbar im Shop</td><td>**nein** — reine Anzeige</td></tr><tr><td>Beschriftung des Werts</td><td>über die zugehörige **Code-Tabelle** übersetzbar</td></tr></tbody></table>

> **Nicht verwechseln mit den Rechten:** Zum Bereich `AUFTRAG / Kopf` gehören zwar Rechte namens *Versandbedingungen*, *Zahlungsbedingungen* und *Zahlungsmethode*, diese sind aber **nicht eCom-relevant**. Sie steuern das Ändern der Konditionen, das im Shop nicht möglich ist. Die reine Anzeige hängt an keinem Recht.

### Zusammenfassung des Warenkorbs

Rechts neben den Feldern zeigt die Seite den Warenkorb noch einmal:

<table id="bkmrk-angabe-beispiel-je-p"><thead><tr><th>Angabe</th><th>Beispiel</th></tr></thead><tbody><tr><td>je Position: Bezeichnung, Menge, Betrag</td><td>*dedesales — 2× — 240,00 EUR*</td></tr><tr><td>**Gesamtsumme**</td><td>*480,00 EUR*</td></tr></tbody></table>

### Rabatte werden nicht abgezogen

Gutschein und Sonderrabatt mindern die angezeigte Summe **nicht**. Statt dessen erscheint je Rabatt ein grauer Hinweis unter der Zusammenfassung:

<table id="bkmrk-fall-hinweis-gutsche"><thead><tr><th>Fall</th><th>Hinweis</th></tr></thead><tbody><tr><td>Gutschein eingelöst</td><td>„Die Gutschrift von 3 % wird erst auf der Rechnung abgezogen."</td></tr><tr><td>Sonderrabatt aktiv</td><td>„Der Sonderrabatt von 5 % wird erst auf der Rechnung abgezogen."</td></tr></tbody></table>

Das ist eine **bewusste Entscheidung**, kein Fehler: Der Rabatt geht als Kopfrabatt in den Auftrag und wird bei der Fakturierung verrechnet.

So sieht der Kunde beim Ausfüllen der Kopfangaben, was er bestellt — ohne in den Warenkorb zurückzuwechseln.

## Pflichtfelder

Drei Angaben lassen sich zur Pflicht machen. Gemeinsam haben sie eines: Die Prüfung läuft **auf dem Server, erst beim Abschicken**.

<table id="bkmrk-angabe-gesteuert-%C3%BCbe"><thead><tr><th>Angabe</th><th>Gesteuert über</th><th>Stufen</th></tr></thead><tbody><tr><td>Lieferadresse</td><td>Recht <code>AUFTRAG &#47; Kopf &#47; Lieferadresse Pflicht</code></td><td>nur **Ja/Nein**</td></tr><tr><td>Ihre Bestellnummer</td><td>Recht <code>AUFTRAG &#47; Kopf &#47; Kundenauftragsnummer</code></td><td>Nein · Optional · Pflicht</td></tr><tr><td>Liefertermin</td><td>Einstellung *Liefertermineingabe*</td><td>Nein · Optional · Pflicht</td></tr></tbody></table>

> **Wichtig:** Pflichtfelder sind in der Maske **nicht gekennzeichnet** — kein Sternchen, keine Hervorhebung, kein technischer Pflicht-Vermerk. Alle Felder sehen gleich aus. Der Kunde erfährt erst beim Klick auf *Verbindlich bestellen*, dass etwas fehlt.

### In der Praxis merkt man von der Pflicht wenig

Wer die Maske ausprobiert, hat schnell den Eindruck, es gebe **gar keine** Pflichtfelder. Das täuscht nicht ganz — zwei der drei Angaben werden vom System selbst gefüllt, bevor die Prüfung greift:

<table id="bkmrk-angabe-warum-die-pfl"><thead><tr><th>Angabe</th><th>Warum die Pflicht selten auffällt</th></tr></thead><tbody><tr><td>Liefertermin</td><td>Steht die Einstellung auf *Pflicht*, setzt der Server in ein leeres Feld das frühestmögliche Datum.</td></tr><tr><td>Ihre Bestellnummer</td><td>Ist *Kundenauftragsnummer generieren* aktiv, erzeugt das System bei leerem Feld selbst eine Nummer.</td></tr><tr><td>**Lieferadresse**</td><td>Hier gibt es **keinen** Ersatzwert. Das ist die einzige der drei Angaben, die eine Bestellung spürbar aufhält.</td></tr></tbody></table>

Mit gesetztem Recht *Lieferadresse Pflicht* und aktiver Nummerngenerierung blockiert nur die Lieferadresse. Nimmt man das Adressrecht heraus, geht die Bestellung durch — auch wenn *Ihre Bestellnummer* auf *Pflicht* steht.

### Wie sich die Stufen im Shop unterscheiden

<table id="bkmrk-angabe-unterschied-z" style="width: 100%;"><thead><tr><th style="width: 20.0189%;">Angabe</th><th style="width: 79.9811%;">Unterschied zwischen den Stufen</th></tr></thead><tbody><tr><td style="width: 20.0189%;">Ihre Bestellnummer</td><td style="width: 79.9811%;">*Optional* und *Pflicht* sehen im Formular **gleich** aus: Das Feld erscheint ohne Pflicht-Hinweis. Nur *Nein* blendet es aus.</td></tr><tr><td style="width: 20.0189%;">Liefertermin</td><td style="width: 79.9811%;">*Nein* und *Optional* verhalten sich **gleich** — es findet keine Pflichtprüfung statt.</td></tr></tbody></table>

Die Stufe entscheidet also nicht über das Aussehen der Maske, sondern nur darüber, ob die Bestellung beim Abschicken abgewiesen wird.

### Der Liefertermin wird an zwei Stellen eingestellt

Das ist die Stolperfalle dieses Felds: Es gibt **zwei** Steuerungen für den Liefertermin an verschiedenen Orten, mit unterschiedlichen Auswahllisten.

<table id="bkmrk-stelle-ort-werte-ein"><thead><tr><th>Stelle</th><th>Ort</th><th>Werte</th></tr></thead><tbody><tr><td>Einstellung *Liefertermineingabe*</td><td>*eCom \\ Einstellungen*</td><td>**drei**: Nein · Optional · Pflicht</td></tr><tr><td>Liefertermin-Recht</td><td>Rolle</td><td>**fünf**: zusätzlich *Pflicht zu Beginn* und *Automatischer Vorschlag*</td></tr></tbody></table>

Maßgeblich für den Shop ist die **eCom-Einstellung** — und zwar nur für die Pflichtprüfung, nicht für die Anzeige. Das Recht in der Rolle gehört zum Vertriebsclient und wirkt im Shop an keiner Stelle; seine beiden zusätzlichen Werte gibt es dort nicht.

> **Achtung für die Einrichtung:** Wer die Pflicht im Shop will, setzt die **eCom-Einstellung** auf *Pflicht*. Ein auf *Pflicht* stehendes Recht in der Rolle bewirkt im Shop nichts.

Das Verhalten, das man hinter *Automatischer Vorschlag* erwarten würde, gibt es übrigens auch ohne diesen Wert: Steht die eCom-Einstellung auf *Pflicht* und lässt der Kunde das Feld leer, setzt der Server selbst das **frühestmögliche Datum** ein — die Pflichtprüfung ist damit erfüllt. Eine eigene Eingabe des Kunden bleibt unangetastet.

## Meldungen beim Abschicken

Alle Prüfungen laufen erst, wenn der Kunde auf **Verbindlich bestellen** klickt. Bis dahin meldet die Maske nichts.

Die Meldung erscheint dann **oben auf der Seite**, zwischen der Überschrift *Bestellabschluss* und dem Formular: ein heller Kasten über die volle Breite, am linken Rand rot abgesetzt. Sie steht **nicht am betroffenen Feld** — welches Feld gemeint ist, muss der Kunde dem Text entnehmen.

<table id="bkmrk-ausl%C3%B6ser-meldung-wir"><thead><tr><th>Auslöser</th><th>Meldung</th><th>Wirkung</th></tr></thead><tbody><tr><td>Liefertermin fehlt</td><td>„Es wurde kein Liefertermin angegeben."</td><td>blockiert — **ob sie im Shop überhaupt erscheinen kann, ist offen**, siehe unten</td></tr><tr><td>Liefertermin zu früh</td><td>„Der Liefertermin kann nicht eingehalten werden." — oft ergänzt um „Der früheste Liefertermin ist …"</td><td>blockiert</td></tr><tr><td>Liefertermin vor dem Bestelldatum</td><td>„Der Liefertermin darf nicht vor dem Bestelldatum liegen."</td><td>blockiert</td></tr><tr><td>Bestellnummer fehlt</td><td>„Es wurde keine Kundenauftragsnummer angegeben."</td><td>blockiert</td></tr><tr><td>Lieferadresse fehlt oder existiert nicht mehr</td><td>„Die Lieferadresse ist ungültig."</td><td>blockiert</td></tr><tr><td>Felder der neu erfassten Lieferadresse fehlen</td><td>„Bitte geben Sie bei der temporären Lieferadresse folgende Felder an:"</td><td>blockiert</td></tr><tr><td>Postleitzahl fehlerhaft</td><td>„Bitte geben Sie eine korrekte Postleitzahl ein."</td><td>blockiert</td></tr><tr><td>Land fehlt</td><td>„Bitte wählen Sie ein Land aus."</td><td>blockiert</td></tr><tr><td>Mindestbestellwert unterschritten</td><td>„Der Mindestbestellwert von … wurde nicht erreicht." mit eingesetztem Betrag</td><td>blockiert</td></tr><tr><td>Warenkorb leer</td><td>„Der Warenkorb ist leer."</td><td>verhindert das Abschicken</td></tr></tbody></table>

Zwei weitere Meldungen gehören zur Frachtfreigrenze. Sie erscheinen **im Warenkorb**, nicht hier:

<table id="bkmrk-ausl%C3%B6ser-meldung-fra"><thead><tr><th>Auslöser</th><th>Meldung</th></tr></thead><tbody><tr><td>Frachtfreigrenze erreicht</td><td>„Lieferung frei Haus"</td></tr><tr><td>Frachtfreigrenze nicht erreicht</td><td>„Die Frachtfreigrenze von … wurde nicht erreicht."</td></tr></tbody></table>

> **Achtung:** Dieselbe Meldung erscheint auch, wenn das Recht *Lieferadresse Pflicht* gesetzt ist, der Kunde aber **gar keine Adresse auswählen kann** — etwa weil für ihn keine hinterlegt ist. Der Text spricht dann von einer ungültigen Adresse, obwohl schlicht keine zur Auswahl steht. Wer das Recht setzt, sollte also sicherstellen, dass die Kunden auch Lieferadressen haben.

> **Hinweis:** Bei der neu erfassten Lieferadresse nennt der Shop nur den Einleitungssatz — die Liste der fehlenden Felder, die dahinter stehen müsste, erscheint nicht. Der Kunde muss die Felder selbst durchgehen.

### Die Texte lassen sich anpassen

Alle Meldungen bis auf *„Der Warenkorb ist leer."* sind **übersetzbare Texte**, keine fest verdrahteten Zeichenketten. Sie lassen sich je Kultur administrativ überschreiben — der oben genannte Wortlaut ist der Auslieferungszustand.

Wer eigene Formulierungen hinterlegt, sollte das dokumentieren: Die Doku nennt die Standardtexte.

## Rückfragen erreichen den Kunden nicht

Das System kennt neben blockierenden Prüfungen auch **Rückfragen** — Meldungen, die der Bearbeiter im Vertriebsclient bestätigt, um fortzufahren.

Im Shop gibt es niemanden, der so eine Rückfrage beantworten könnte. Der Shop **überspringt sie deshalb grundsätzlich**. Das ist eine bewusste Entscheidung, kein Fehler.

Die praktische Folge: Mehrere Mandantenfelder werden korrekt berechnet, ihre Meldung erreicht den Kunden aber nie.

<table id="bkmrk-feld-verhalten-im-sh"><thead><tr><th>Feld</th><th>Verhalten im Shop</th></tr></thead><tbody><tr><td>Maximaler Positionswert</td><td>wird berechnet, die Rückfrage wird verworfen — der Kunde sieht nichts</td></tr><tr><td>Warnung ab Menge</td><td>ebenso</td></tr><tr><td>Mindestauftragswert (Warnung)</td><td>dazu kommt: Der Wert wird nie gefüllt und bleibt immer 0</td></tr></tbody></table>

> **Hinweis:** *Maximaler Positionswert* und *Warnung ab Menge* wirken damit nicht im Shop — sie sind aber **nicht funktionslos**. Im Vertriebsclient greifen sie, und im alten Shop wurde die Meldung dem Kunden sogar angezeigt. Stillgelegt ist sie erst im neuen Shop.

## Was den Liefertermin begrenzt

<table id="bkmrk-steuerung-ort-wirkun"><thead><tr><th>Steuerung</th><th>Ort</th><th>Wirkung</th></tr></thead><tbody><tr><td>Mindestlieferzeit in Tagen</td><td>*Grundkonfiguration \\ Mandanten*</td><td>Legt den frühestmöglichen Liefertermin fest.</td></tr><tr><td>Lieferausgang am Tag der Bestellung</td><td>*eCom \\ Einstellungen*, Uhrzeit</td><td>Legt fest, bis wann eine Bestellung eingehen muss, damit sie am selben Tag bearbeitet wird.</td></tr><tr><td>Liefertermineingabe</td><td>*eCom \\ Einstellungen*</td><td>Steuert, ob der Kunde einen Termin eingeben muss.</td></tr><tr><td>FeiertagsID</td><td>*Grundkonfiguration \\ Mandanten*</td><td>Bestimmt den Feiertagskalender.</td></tr></tbody></table>

### Wie der früheste Termin berechnet wird

Ausgangspunkt ist das Bestelldatum plus die **Mindestlieferzeit in Tagen**. Dabei gilt:

- **Samstage und Sonntage werden übersprungen.**
- Für jeden getroffenen **Feiertag** kommt ein weiterer Tag hinzu. Welche Tage das sind, bestimmt der über die **FeiertagsID** hinterlegte Kalender.
- Die Uhrzeit aus *Lieferausgang am Tag der Bestellung* wird ausgewertet: Bestellt der Kunde **vorher**, geht die Bestellung noch am selben Tag hinaus und der Termin kommt einen Tag früher. **Nachher** rutscht er einen Tag weiter.

Die FeiertagsID wirkt damit tatsächlich im Shop — nicht nur im ERP-System.

> **Wichtig:** Der Kalender im Shop **sperrt nichts**. Wochenenden, Feiertage und zu frühe Termine lassen sich anklicken und eintippen. Erst beim Abschicken weist der Server sie ab, mit der Meldung *„Der Liefertermin kann nicht eingehalten werden."* Eine eigene Rüst- oder Transportzeitregel für ein Land kann die Berechnung zusätzlich verändern.

## Preisanzeige nach einer Live-Preis-Abfrage

Hat der Kunde im Warenkorb eine Live-Preis-Abfrage ausgelöst, wirkt sich das auch hier aus.

Die Summe trägt dann den Zusatz **(Live Preis)** — siehe oben.

Der **Hinweistext zu den Nettopreisen** aus der Einstellung *KIP anzeigen* erscheint auf dieser Seite nicht.

> **Noch zu klären:** Ob das an der Live-Preis-Abfrage liegt oder ob der Bestellabschluss diesen Hinweis grundsätzlich nicht zeigt. Im Warenkorb blieb er nach der Abfrage sichtbar, hier fehlt er.

Ändert der Kunde anschließend noch etwas am Warenkorb, verfallen die Live-Preise. Siehe [Warenkorb](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/warenkorb).

## Was den Bestellwert prüft

Es gibt **vier** Felder mit einem Mindestwert. Für den Shop zählt nur eines davon.

<table id="bkmrk-feld-ort-wirkung-im-"><thead><tr><th>Feld</th><th>Ort</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>**Mindestbestellwert, Reiter eCom**</td><td>*Grundkonfiguration \\ Mandanten*, Reiter **eCom**</td><td>**Das ist der Wert, der greift.**</td></tr><tr><td>Mindestbestellwert</td><td>*Grundkonfiguration \\ Mandanten*, allgemein</td><td>**keine** — wird im Bestellabschluss nicht gelesen, nur für den Export verwendet</td></tr><tr><td>Mindestbestellwert des Debitors</td><td>am Debitor</td><td>nur in einem Sonderfall, siehe unten</td></tr><tr><td>Mindestauftragswert (Warnung)</td><td>*Grundkonfiguration \\ Mandanten*</td><td>**keine** — der Wert wird nirgends gefüllt und bliebe als Rückfrage ohnehin unsichtbar</td></tr></tbody></table>

> **Wichtig:** Der allgemeine *Mindestbestellwert* des Mandanten sieht aus wie die naheliegende Stelle, wirkt im Shop aber nicht. Wer eine Wertgrenze für den Shop setzen will, pflegt sie im **Reiter eCom**. Das ist die häufigste Verwechslung an dieser Stelle.

### Wann der Debitor-Wert gilt

Der Wert am Debitor kommt nur zum Tragen, wenn **zwei** Mandanten-Einstellungen zusammenkommen:

- *Benutze Mindestbestellwert anstatt Frachtfreigrenze* ist aktiv, **und**
- die Rückfrage-Einstellung *Mindestauftragswert* steht auf **Auftrag blockieren**, nicht auf *Warnung ausgeben*.

Nur dann gewinnt ein am Debitor hinterlegter Wert größer als 0. In allen anderen Fällen — und das ist der Normalfall — gilt der Wert aus dem Reiter eCom.

> **Noch zu klären:** In den eCom-Einstellungen gibt es einen Haken *Mindestbestellwert aus Debitor anwenden*. Die Bedingungen, die der Shop tatsächlich prüft, sind die beiden oben genannten — dieser Haken ist dabei nicht darunter. Ob er an anderer Stelle wirkt oder ob es sich um dieselbe Einstellung unter anderem Namen handelt, ist offen.

### Wie gerechnet wird

<table id="bkmrk-frage-antwort-netto-"><thead><tr><th>Frage</th><th>Antwort</th></tr></thead><tbody><tr><td>netto oder brutto?</td><td>**netto** — dieselbe Summe aus Menge mal Preis wie im Warenkorb</td></tr><tr><td>zählen Frachtkosten mit?</td><td>**nein** — die Prüfung läuft, bevor die Frachtkosten entstehen</td></tr></tbody></table>

## Frachtkosten

<table id="bkmrk-steuerung-ort-ecom-k"><thead><tr><th>Steuerung</th><th>Ort</th><th>eCom-Kennzeichen</th></tr></thead><tbody><tr><td>Frachtfreigrenze</td><td>*Grundkonfiguration \\ Mandanten*, Werteliste</td><td>**ja**</td></tr><tr><td>Frachtkosten</td><td>*Grundkonfiguration \\ Mandanten*, Werteliste</td><td>**ja**</td></tr><tr><td>Frachtkosten Artikel</td><td>*eCom \\ Einstellungen*</td><td>—</td></tr></tbody></table>

- Unterhalb der Frachtfreigrenze werden die Frachtkosten berechnet, oberhalb nicht.
- Im Warenkorb sind die Frachtkosten ein **Anzeigewert** — die Zeile *zzgl. Frachtkosten* steht unter der Summe und ist nicht eingerechnet.
- Erst beim Abschicken entsteht daraus eine **echte Auftragsposition** mit dem hinterlegten Frachtkostenartikel, Menge 1 und dem Betrag als Preis.

> **Achtung:** Ist *Frachtkosten Artikel* **leer**, bricht die Berechnung **still** ab. Es erscheint kein Fehler, und die Bestellung entsteht ganz normal — nur ohne Frachtkosten. Wer Frachtkosten berechnen will, muss den Artikel also pflegen; ein fehlender Eintrag fällt sonst niemandem auf.

> **Achtung:** Bei Frachtfreigrenze und Frachtkosten ist das eCom-Kennzeichen eine Weiche, kein Zusatz. Eine Zeile gilt entweder für den Shop oder für den Client. Fehlt die eCom-Zeile, hat der Shop keinen Wert. Siehe Buch *Backend eCom*.

## Ihre Bestellnummer erzeugen lassen

Ist die Einstellung *Kundenauftragsnummer generieren* aktiv und das Feld beim Abschicken **leer**, erzeugt das System selbst eine Nummer.

<table id="bkmrk-eigenschaft-verhalte-1"><thead><tr><th>Eigenschaft</th><th>Verhalten</th></tr></thead><tbody><tr><td>Schema</td><td>**Auftrags-ID, Schrägstrich, Datum** — etwa <code>12345&#47;21&#46;09&#46;2026</code></td></tr><tr><td>Wann</td><td>unabhängig vom Recht — auch bei *Nein* und *Optional*</td></tr><tr><td>Eigene Eingabe</td><td>bleibt erhalten; erzeugt wird nur in ein leeres Feld</td></tr><tr><td>Sichtbarkeit</td><td>**erst nach dem Abschicken**, etwa auf der Bestätigung — nicht vorbelegt im Formular</td></tr></tbody></table>

Damit erklärt sich auch, warum die Pflicht bei *Ihre Bestellnummer* zusammen mit dieser Einstellung nie auffällt: Das Feld ist zum Zeitpunkt der Prüfung schon gefüllt.

## Aufbau und Ablauf

Der Bestellabschluss ist **eine einzige Seite**, kein mehrstufiger Ablauf.

<table id="bkmrk-name-funktion-sichtb"><thead><tr><th>Name</th><th>Funktion</th><th>Sichtbarkeit</th></tr></thead><tbody><tr><td>Verbindlich bestellen</td><td>Schickt die Bestellung ab und legt den Auftrag an.</td><td>immer</td></tr></tbody></table>

> **Achtung:** Es gibt **keine Zurück-Schaltfläche**. Solange *Verbindlich bestellen* nicht geklickt ist, kommt der Kunde nur über die Zurück-Funktion des Browsers in den Warenkorb.

## Bestätigung

Nach dem Abschicken wechselt der Shop auf eine **eigene Seite**. Darauf steht **mittig** ein Kasten mit einem Dankestext, der **Auftragsnummer** und der Schaltfläche **Weiter einkaufen**. Die Eingabefelder und die Warenkorb-Zusammenfassung sind dann nicht mehr zu sehen.

## Wenn der Kunde gar nicht bestellen kann

Maßgeblich ist die **Auftragssperre** am Kunden. Sie ist die einzige Sperre, die der Shop abfragt — eine *Liefersperre* wertet er nicht aus.

Die Sperre kommt aus dem ERP-System und lässt sich im eCom-Backend nicht setzen.

<table id="bkmrk-eigenschaft-verhalte-2"><thead><tr><th>Eigenschaft</th><th>Verhalten</th></tr></thead><tbody><tr><td>Geprüft wird</td><td>ausschließlich die **Auftragssperre**</td></tr><tr><td>Wann</td><td>**erst beim Abschicken** — nicht beim Anmelden und nicht beim Legen in den Warenkorb</td></tr><tr><td>Folge</td><td>Es entsteht **kein Auftrag**.</td></tr></tbody></table>

Ein gesperrter Kunde kann also bis zuletzt einkaufen und die Sperre erst am Ende bemerken. Zusätzlich fragt der Shop die Auftragssperre bei der **Live-Preisabfrage** im Warenkorb ab — das ist eine andere Stelle als der Bestellabschluss.

### Was dabei beobachtet wurde

Bei einem Kunden mit Auftragssperre:

<table id="bkmrk-beobachtung-ergebnis"><thead><tr><th>Beobachtung</th><th>Ergebnis</th></tr></thead><tbody><tr><td>Bestellung absenden</td><td>**möglich** — keine Meldung, keine Blockade</td></tr><tr><td>Bestätigungsseite</td><td>erschien, mit einer **Auftragsnummer**</td></tr><tr><td>Auftrag im System</td><td>zu dieser Nummer **nicht auffindbar**</td></tr><tr><td>Preise im Shop</td><td>**durchgehend keine** — das hat mit der Sperre aber **nichts zu tun**, siehe unten</td></tr></tbody></table>

Die Sperre verhindert das Bestellen also **nicht**. Sie äußert sich anders als erwartet, und der Kunde erhält eine Bestätigung, der offenbar kein Auftrag entspricht.

Die fehlenden Preise sind **keine Folge der Sperre**: Die normale Preisanzeige in Katalog und Warenkorb ist von der Auftragssperre überhaupt nicht betroffen. Bei diesem Testkunden lag es also an den **Konditionen**, nicht am eCom-System.

> **Noch nicht abschließend gesichert:** Der beobachtete Warenkorb enthielt Positionen ohne Preis. Ob das den Bestellabschluss zusätzlich beeinflusst, ist offen.

> **Achtung:** Bis das geklärt ist, sollte sich niemand darauf verlassen, dass eine Auftragssperre den Shop sauber blockiert.

## Auftragssperre am fertigen Auftrag

Davon zu unterscheiden ist die Sperre am **fertigen Auftrag**. Sie verhindert das Bestellen nicht, sondern betrifft nur die **Weiterverarbeitung**: Die Bestellung wird an das ERP-System übermittelt, muss dort aber manuell bearbeitet beziehungsweise freigeschaltet werden.

Welche Bedingung eine Sperre auslöst, steuern die Sperr-Regeln der Rolle. Für den Shop relevant sind unter anderem *Aufträge grundsätzlich mit Auftragssperre versehen* und *Mindestbestellwert nicht erreicht*.

Die vollständige Liste steht auf der Seite *eCom-Rechte im Überblick*.

## Nach dem Abschicken

<table id="bkmrk-vorgang-erl%C3%A4uterung-"><thead><tr><th>Vorgang</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Auftrag</td><td>Die Bestellung wird als regulärer DeDeSales-Auftrag angelegt.</td></tr><tr><td>Bestätigung an den Kunden</td><td>E-Mail über das Template *Bestellung*, versandt über das Abo *eCom - Aufträge anlegen*. Empfänger ist die **E-Mail-Adresse des Shop-Zugangs**, nicht die aus dem Kundenstamm. Der Text enthält im Auslieferungszustand **weder Positionen noch Beträge** — nur eine Danksagung. Der Wortlaut lässt sich unter *Grundkonfiguration \\ Einstellungen \\ E-Mail Inhalte* ändern; für eine **Positionsauflistung** ist ein eigenes Template nötig, das der Projektleiter bei DeDeNet hinterlegt.</td></tr><tr><td>Benachrichtigung intern</td><td>Über dasselbe Abo, mit **Positionsauflistung** im Mailtext. Über die Einstellung *Bestellmail zusätzlich per CC an zuständige Mitarbeiter versenden* geht sie außerdem per CC an den dem Kunden zugeordneten Mitarbeiter.</td></tr><tr><td>Excel-Datei mit den Positionen</td><td>Nur wenn zusätzlich das Abo *Versand von Aufträgen incl. Excel* gesetzt ist. Ohne dieses Abo kommt die Mail ohne Anhang.</td></tr><tr><td>Fehlerfall</td><td>Kann der Auftrag im Server nicht verarbeitet werden, informiert das Pflicht-Abo *eCom - Benachrichtigung bei fehlgeschlagenem ERP Export* den Innendienst.</td></tr></tbody></table>

# 5. Weitere Masken

# Matrixerfassung

## Übersicht

Ein **Matrix-Artikel** hat Varianten in zwei Dimensionen — etwa Größe und Farbe. Statt einer einzigen Bestellmenge erfasst der Kunde eine Menge je Kombination.

Dafür öffnet sich eine eigene Seite. Sie wird über die Schaltfläche **Matrix öffnen** auf der *Artikel-Detailseite* aufgerufen.

Ob ein Artikel ein Matrix-Artikel ist, ergibt sich aus dem **Artikelstatus**.

> **Hinweis:** Die Matrix selbst — welche Zeilen und Spalten es gibt und welche Kombinationen bestellbar sind — wird im **ERP-System** definiert und mit den Artikeldaten geliefert. Im eCom-Backend lässt sie sich nicht pflegen.

## Aufbau

<table id="bkmrk-bereich-inhalt-kopf-"><thead><tr><th>Bereich</th><th>Inhalt</th></tr></thead><tbody><tr><td>Kopf</td><td>Als Überschrift steht der **Name der Matrix** — er wird im ERP-System vergeben und ist dort änderbar. Darunter **Produkt** mit der Artikelnummer des Matrixartikels</td></tr><tr><td>Auswahlleiste</td><td>Anzahl der ausgewählten Zellen, Sammel-Mengenfeld und *Auswahl aufheben*</td></tr><tr><td>Matrix</td><td>Tabelle mit den Varianten — Zeilen und Spalten kommen aus den Artikeldaten</td></tr><tr><td>Fußzeile</td><td>**Anzahl der Positionen** und die **Gesamtmenge**</td></tr></tbody></table>

<table id="bkmrk-name-funktion-zur%C3%BCck"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>Zurück zum Artikel</td><td>führt zurück auf die Artikel-Detailseite. Erfasste, noch nicht übernommene Mengen gehen dabei **ohne Rückfrage verloren**</td></tr><tr><td>Erfasste Mengen in den Warenkorb</td><td>übernimmt alle erfassten Mengen. Die Schaltfläche ist **inaktiv**, solange keine Menge erfasst ist</td></tr></tbody></table>

## Die Matrix

Jede Zelle steht für eine Kombination aus Zeile und Spalte.

<table id="bkmrk-darstellung-der-zell"><thead><tr><th>Darstellung der Zelle</th><th>Bedeutung</th></tr></thead><tbody><tr><td>Auswahlkreis und Mengenfeld mit **−** und **+**</td><td>Die Kombination ist bestellbar.</td></tr><tr><td>**×**, grau hinterlegt</td><td>Die Kombination gibt es nicht. Hier lässt sich nichts erfassen.</td></tr><tr><td>dunkel hinterlegt, Haken im Auswahlkreis</td><td>Die Zelle ist **ausgewählt**.</td></tr></tbody></table>

Es gibt also in der Regel weniger bestellbare Zellen als Zeilen mal Spalten.

## Zwei Wege, Mengen zu erfassen

Der Hinweis über der Matrix nennt beide:

> „Zellen anklicken, um Mengen gemeinsam zu erfassen — oder eine Menge direkt in der Zelle eintragen."

<table id="bkmrk-weg-vorgehen-einzeln"><thead><tr><th>Weg</th><th>Vorgehen</th></tr></thead><tbody><tr><td>einzeln</td><td>Menge direkt in der Zelle eintragen oder über **−** und **+** einstellen</td></tr><tr><td>gemeinsam</td><td>mehrere Zellen anklicken und die Menge über das **Sammel-Mengenfeld** der Auswahlleiste setzen</td></tr></tbody></table>

### Die Auswahlleiste

Sie steht über der Matrix und ändert sich, sobald mindestens eine Zelle ausgewählt ist:

<table id="bkmrk-zustand-inhalt-der-l"><thead><tr><th>Zustand</th><th>Inhalt der Leiste</th></tr></thead><tbody><tr><td>nichts ausgewählt</td><td>**0 ausgewählt**, dazu der Hinweis *„Zellen anklicken, um Mengen gemeinsam zu erfassen — oder eine Menge direkt in der Zelle eintragen."*</td></tr><tr><td>Zellen ausgewählt</td><td>**x ausgewählt**, ein Mengenfeld mit **−** und **+**, und **Auswahl aufheben**</td></tr></tbody></table>

Das Mengenfeld der Leiste wirkt auf **alle ausgewählten Zellen zugleich**: Ein Klick auf **+** setzt jede davon auf eins, der nächste auf zwei und so fort.

Der gemeinsame Weg lohnt, wenn von vielen Varianten dieselbe Menge bestellt wird — etwa je zehn Stück in allen Größen einer Farbe.

**Auswahl aufheben** hebt die Markierung auf. Die bereits gesetzten Mengen bleiben dabei erhalten — nur die Auswahl endet.

## Kontrolle vor der Übernahme

Unten links führt die Seite mit:

<table id="bkmrk-anzeige-bedeutung-po"><thead><tr><th>Anzeige</th><th>Bedeutung</th></tr></thead><tbody><tr><td>Positionen</td><td>Anzahl der Zellen mit einer Menge größer null</td></tr><tr><td>Gesamtmenge</td><td>Summe aller erfassten Mengen</td></tr></tbody></table>

Beide Werte sind die schnellste Kontrolle vor dem Klick auf **Erfasste Mengen in den Warenkorb**: Stimmt die Gesamtmenge mit der erwarteten Bestellmenge überein, ist nichts verrutscht.

## Verpackungseinheiten

In der Matrixerfassung wird die **Verpackungseinheit nicht geprüft**. Jede Menge lässt sich erfassen, auch eine, die nicht zur Verpackungseinheit des Artikels passt.

Das unterscheidet die Matrix von den anderen Wegen in den Warenkorb: Beim **Excel-Import** wird die Verpackungseinheit geprüft und die Zeile je nach Einstellung abgewiesen oder aufgerundet.

## Übernahme in den Warenkorb

<table id="bkmrk-schritt-verhalten-me"><thead><tr><th>Schritt</th><th>Verhalten</th></tr></thead><tbody><tr><td>Meldung</td><td>*„x Positionen wurden in den Warenkorb übernommen."*</td></tr><tr><td>Matrix danach</td><td>wird **geleert** und steht für eine neue Erfassung bereit</td></tr><tr><td>Im Warenkorb</td><td>**eine eigene Position je Kombination** — als einzelne Artikel, nicht als Sammelposition</td></tr></tbody></table>

> **Wichtig:** Die Matrix lässt sich **nicht wieder öffnen**. Eine übernommene Erfassung ist im Warenkorb nur noch als einzelne Positionen vorhanden und auch nur dort zu korrigieren.

Weil die Maske nach der Übernahme leer ist und erneut befüllt werden kann, lässt sich derselbe Artikel mehrfach nacheinander erfassen. Die Positionen landen dann zusätzlich im Warenkorb.

# Belege

## Übersicht

Der Kunde kann seine Belege im Shop einsehen — jede Belegart auf einer eigenen Seite.

Erreichbar sind sie über das **Benutzersymbol** rechts oben in der Kopfzeile. Dessen Menü führt in der rechten Spalte die Belegarten auf.

Voraussetzung ist, dass die Belege aus dem ERP-System geliefert werden.

## Belegarten im Menü

Jeder Menüeintrag hängt an einem gleichnamigen Recht:

<table id="bkmrk-men%C3%BCeintrag-recht-of"><thead><tr><th>Menüeintrag</th><th>Recht</th></tr></thead><tbody><tr><td>Offene Posten</td><td><code>STATISTIK &#47; Offene Posten</code></td></tr><tr><td>Rückstände</td><td><code>STATISTIK &#47; Rückstände</code></td></tr><tr><td>Auftrag</td><td><code>STATISTIK &#47; Belege &#47; Aufträge</code></td></tr><tr><td>Gutschrift</td><td><code>STATISTIK &#47; Belege &#47; Gutschriften</code></td></tr><tr><td>Kontrakt</td><td><code>STATISTIK &#47; Belege &#47; Kontrakte</code></td></tr><tr><td>Lastschrift</td><td><code>STATISTIK &#47; Belege &#47; Lastschrift</code></td></tr><tr><td>Lieferschein</td><td><code>STATISTIK &#47; Belege &#47; Lieferscheine</code></td></tr><tr><td>Rechnung</td><td><code>STATISTIK &#47; Belege &#47; Rechnungen</code></td></tr></tbody></table>

Welche Einträge erscheinen, steuert die **Rolle**: Ein Eintrag steht nur im Menü, wenn das zugehörige Recht gesetzt ist. Ist in der Rolle etwa nur *Lieferscheine* angehakt, erscheint auch nur dieser eine Eintrag.

**Zwei Bedingungen müssen zusammenkommen:**

<table id="bkmrk-bedingung-ohne-sie-d"><thead><tr><th>Bedingung</th><th>Ohne sie</th></tr></thead><tbody><tr><td>das Recht ist in der Rolle gesetzt</td><td>der Eintrag fehlt im Menü</td></tr><tr><td>es gibt Belege dieser Art</td><td>der Eintrag fehlt ebenfalls</td></tr></tbody></table>

Ein Kunde ohne Belege sieht also nichts — auch dann nicht, wenn alle Rechte gesetzt sind.

## Aufbau einer Belegseite

<table id="bkmrk-bereich-inhalt-titel"><thead><tr><th>Bereich</th><th>Inhalt</th></tr></thead><tbody><tr><td>Titel</td><td>**Belege**</td></tr><tr><td>Schaltfläche</td><td>Belegart und Anzahl der Belege, zum Beispiel *Auftrag (10)*</td></tr><tr><td>Suchfeld</td><td>**Suchbegriff** — sucht nach der **Belegnummer**</td></tr><tr><td>Liste</td><td>die Belege dieser Art</td></tr></tbody></table>

Suchfeld und Schaltfläche erscheinen nur, wenn Belege vorhanden sind.

### Spalten der Belegliste

<table id="bkmrk-spalte-erl%C3%A4uterung-b"><thead><tr><th>Spalte</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Belegnummer</td><td></td></tr><tr><td>Belegdatum</td><td></td></tr><tr><td>Status</td><td>zum Beispiel *nicht beliefert*</td></tr><tr><td>Bestellart</td><td></td></tr><tr><td>Betrag</td><td></td></tr><tr><td>Download</td><td>Symbol am Ende der Zeile. Erzeugt eine **XLSX**-Datei</td></tr></tbody></table>

Sortieren und Filtern ist nicht möglich. Die Liste ist nach **Belegdatum absteigend** geordnet, der neueste Beleg steht oben.

### Positionen eines Belegs

Ein Klick auf eine Belegzeile klappt die **Positionen** auf. Sie haben ein eigenes Suchfeld.

<table id="bkmrk-spalte-erl%C3%A4uterung-p"><thead><tr><th>Spalte</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Produkt</td><td>Artikelnummer</td></tr><tr><td>Bezeichnung</td><td></td></tr><tr><td>Status</td><td></td></tr><tr><td>Menge</td><td>bestellte Menge</td></tr><tr><td>Geliefert</td><td>bereits gelieferte Menge</td></tr><tr><td>Preis</td><td></td></tr></tbody></table>

Das **Download-Symbol** sitzt in der Belegzeile, nicht in den Positionszeilen.

## Abweichungen einzelner Belegarten

<table id="bkmrk-belegart-besonderhei"><thead><tr><th>Belegart</th><th>Besonderheit</th></tr></thead><tbody><tr><td>Rückstände</td><td>Statt des Download-Symbols steht dort der Link **Als Datei exportieren**.</td></tr><tr><td>Offene Posten</td><td>**kein Download.** Außerdem eine eigene Meldung bei leerer Liste, siehe unten</td></tr></tbody></table>

Alle Downloads liefern eine **XLSX**-Datei — auch die über das Symbol in der Belegzeile. Ein Beleg als PDF ist nicht vorgesehen.

## Meldungen

<table id="bkmrk-fall-meldung-keine-b"><thead><tr><th>Fall</th><th>Meldung</th></tr></thead><tbody><tr><td>keine Belege dieser Art vorhanden</td><td>„Keine Belege gefunden."</td></tr><tr><td>keine offenen Posten vorhanden</td><td>„Es liegen aktuell keine offenen Posten vor."</td></tr></tbody></table>

## Wie weit die Belege zurückreichen

Der Zeitraum lässt sich **nicht einstellen**. Er ergibt sich daraus, welche Belege importiert werden — standardmäßig sind das die **letzten drei Jahre**.

# Mein Profil

## Übersicht

Über das **Benutzersymbol** in der Kopfzeile erreicht der Kunde seine Kontofunktionen. Die linke Spalte des Menüs führt vier Seiten und die Abmeldung:

<table id="bkmrk-eintrag-inhalt-mein-"><thead><tr><th>Eintrag</th><th>Inhalt</th></tr></thead><tbody><tr><td>Mein Profil</td><td>Anzeige von Kundennummer und letztem Login</td></tr><tr><td>Passwort ändern</td><td></td></tr><tr><td>Adresse ändern</td><td>Änderung der Stammadresse</td></tr><tr><td>E-Mail-Adresse ändern</td><td>Änderung der Zugangsadresse, mit Bestätigungslink</td></tr><tr><td>Abmelden</td><td>beendet die Sitzung</td></tr></tbody></table>

## Mein Profil

Reine Anzeige, keine Eingabefelder.

<table id="bkmrk-angabe-erl%C3%A4uterung-k"><thead><tr><th>Angabe</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Kundennummer</td><td>zugleich der Benutzername für die Anmeldung</td></tr><tr><td>Letzter Login</td><td>Datum und Uhrzeit der vorigen Anmeldung</td></tr></tbody></table>

## Adresse ändern

Die Felder sind mit den **aktuellen Daten vorbelegt**. Alle Felder lassen sich ändern.

> **Hinweis:** Die Adressänderung hängt an **keinem Recht und keiner Einstellung**. Jeder Kunde mit Shop-Zugang kann sie auslösen, und abschalten lässt sie sich nicht.

<table id="bkmrk-feld-pflicht-name-ja"><thead><tr><th>Feld</th><th>Pflicht</th></tr></thead><tbody><tr><td>Name</td><td>ja</td></tr><tr><td>Name (Zusatz)</td><td>nein</td></tr><tr><td>Straße</td><td>ja</td></tr><tr><td>PLZ</td><td>ja</td></tr><tr><td>Ort</td><td>ja</td></tr><tr><td>Telefon</td><td>ja</td></tr><tr><td>Fax</td><td>nein</td></tr><tr><td>E-Mail (Kontakt)</td><td>nein</td></tr><tr><td>Homepage</td><td>nein</td></tr></tbody></table>

<table id="bkmrk-name-funktion-adress"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>Adresse speichern</td><td>schickt die Änderung ab</td></tr></tbody></table>

<table id="bkmrk-fall-meldung-gespeic"><thead><tr><th>Fall</th><th>Meldung</th></tr></thead><tbody><tr><td>gespeichert</td><td>„Ihre Adresse wurde erfolgreich gespeichert." *(grün)*</td></tr></tbody></table>

Der Kunde bleibt nach dem Speichern auf der Seite.

> **Hinweis:** Das Feld **E-Mail (Kontakt)** gehört zur Adresse und ist **nicht** die Adresse des Shop-Zugangs. Die wird über *E-Mail-Adresse ändern* gepflegt.

### Was mit der Änderung geschieht

Der Shop schreibt die Adresse **nicht** unmittelbar in die Stammdaten.

<table id="bkmrk-schritt-beschreibung"><thead><tr><th>Schritt</th><th>Beschreibung</th></tr></thead><tbody><tr><td>1</td><td>Der Shopbetreiber erhält eine E-Mail über das Abo <code>Kundenstammdatenänderung</code>. Sie enthält nur den **neuen** Wert, hervorgehoben.</td></tr><tr><td>2</td><td>Die Änderung wird im ERP-System vorgenommen — in der Regel **von Hand**.</td></tr><tr><td>3</td><td>Mit dem nächsten Import steht die neue Adresse im Shop.</td></tr></tbody></table>

> **Wichtig:** Die Änderung erscheint **nicht im Backend**. Es gibt keine Liste offener Adressänderungen — die E-Mail an den Innendienst ist der einzige Hinweis. Wird sie übersehen, passiert nichts.

Ob ein ERP-System die Änderung direkt übernimmt, hängt vom System ab; üblich ist der manuelle Weg.

> **Nicht verwechseln:** Die Stammadresse hat nichts mit der **Lieferadresse** im Bestellabschluss zu tun. Das sind zwei getrennte Dinge.

## E-Mail-Adresse ändern

Betrifft die Adresse des **Shop-Zugangs**.

Über den Feldern steht der Hinweis: *„Sie erhalten an die neue Adresse einen Bestätigungslink — erst nach dessen Aufruf wird die Änderung wirksam."*

<table id="bkmrk-feld-erl%C3%A4uterung-akt"><thead><tr><th>Feld</th><th>Erläuterung</th></tr></thead><tbody><tr><td>Aktuelle E-Mail-Adresse</td><td></td></tr><tr><td>Neue E-Mail-Adresse</td><td></td></tr><tr><td>Neue E-Mail-Adresse bestätigen</td><td>Wiederholung zur Kontrolle</td></tr></tbody></table>

<table id="bkmrk-name-funktion-e-mail"><thead><tr><th>Name</th><th>Funktion</th></tr></thead><tbody><tr><td>E-Mail-Adresse ändern</td><td>stößt den Vorgang an</td></tr></tbody></table>

Der Vorgang ist damit **zweistufig**: Erst nach dem Aufruf des Links in der E-Mail an die neue Adresse ist die Änderung wirksam.

### Welche Adresse geändert wird

<table id="bkmrk-datenbestand-wirkung"><thead><tr><th>Datenbestand</th><th>Wirkung</th></tr></thead><tbody><tr><td>Zugangsdaten des eCom-Benutzers</td><td>**wird geändert**</td></tr><tr><td>Kundenstammdaten</td><td>bleiben unverändert</td></tr></tbody></table>

Ab diesem Zeitpunkt gehen **alle E-Mails des Shops** an die neue Adresse — belegt für *Passwort vergessen* und die **Bestellbestätigung**. Auch *Passwort vergessen?* verlangt dann die neue Adresse.

> **Wichtig:** Die Adresse im **Kundenstamm** ändert sich dadurch **nicht**. Wer auch dort eine andere Adresse braucht — etwa für Rechnungen aus dem ERP-System —, muss zusätzlich eine Adressänderung veranlassen oder sie im ERP-System ändern lassen.

## Passwort ändern

Dieselbe Maske wie bei der erzwungenen Kennwortänderung — Felder *Aktuelles Passwort*, *Neues Passwort* und *Neues Passwort bestätigen*, Schaltfläche **Passwort ändern**.

Siehe [Anmeldung und Registrierung](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/anmeldung-und-registrierung), Abschnitt *Erzwungene Kennwortänderung bei der Erstanmeldung*.

# 6. Konfiguration und Rechte

# eCom-Rechte im Überblick

## Übersicht

Der Funktionsumfang des Shops wird über eine Rolle gesteuert, genau wie beim Außendienst-Client.

Für das eCom-System steht ein eigener Mitarbeiter zur Verfügung, dem eine Rolle zugewiesen werden muss. Rechte, Berechtigungen und Rollenrechte meinen dasselbe.

ECom-relevante Rechte erkennen Sie im Web-Backend am **blauen Warenkorb-Symbol** hinter dem Eintrag. Rechte ohne dieses Symbol wirken nicht auf den Shop.

Die Rechte steuern den **Funktionsumfang** des Shops, also welche Felder, Angaben und Zusatzfunktionen ein Kunde sieht. Sie steuern **nicht**, ob er überhaupt bestellen kann.

> **Wichtig:** Ein Kunde mit Shop-Zugang kann immer bestellen — unabhängig von den Rollenrechten. Ein Rollenrecht, mit dem sich das Bestellen entziehen ließe, gibt es nicht. Wer nicht bestellen soll, braucht eine **Sperre am Kunden**. Die liegt nicht an der Rolle und kommt aus dem **ERP-System** — sie wird also nicht im Backend gepflegt, sondern mit den Kundendaten geliefert.

Wie sich die Sperre im Shop äußert, ist nicht, was man erwartet: Der Kunde kann die Bestellung **absenden** und erhält eine Bestätigung — ein Auftrag entsteht aber offenbar nicht. Beobachtet wurde außerdem, dass dieser Kunde **keine Preise** sieht. Einzelheiten und der Stand der Prüfung stehen auf der Seite *Bestellabschluss*.

Das unterscheidet die Sperre von den Sperr-Regeln, bei denen der Auftrag entsteht und nur markiert wird.

> \*\*Maßgeblich ist die **Auftragssperre** am Kunden. Eine *Liefersperre* wertet der Shop nicht aus. Die Prüfung greift **erst beim Abschicken** der Bestellung. Nicht zu verwechseln mit der gleichnamigen **Sperr-Regel** weiter unten, die den fertigen Auftrag markiert.

Nicht zu verwechseln mit dem Bereich *AUFTRAG / Sperr-Regeln* weiter unten: Diese Rechte verhindern das Bestellen nicht, sondern versehen den entstandenen Auftrag mit einer Sperre, damit er vor der Weiterverarbeitung geprüft wird.

## Bereich AUFTRAG

<table id="bkmrk-recht-einstellung-wi"><thead><tr><th>Recht</th><th>Einstellung</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>AUFTRAG / Bestellvorschlag (durch DeDeNet)</td><td>Checkbox</td><td>Löst eine E-Mail im Namen von DeDeNet aus.</td></tr><tr><td>AUFTRAG / XLS Import</td><td>Nein · falsche VEs als Fehler melden · falsche VEs aufrunden und melden</td><td>Steuert das Einlesen von Artikeln in den Warenkorb per Excel-Vorlage. Die Auswahl legt fest, wie mit abweichenden Verpackungseinheiten umgegangen wird.</td></tr></tbody></table>

## Bereich AUFTRAG / Kopf

Diese Rechte steuern die Eingabefelder im Bestellabschluss.

<table id="bkmrk-recht-einstellung-wi-1"><thead><tr><th>Recht</th><th>Einstellung</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>AUFTRAG / Kopf / Auftragkopf – Auftragstext extern</td><td>Checkbox</td><td>Schaltet im Bestellabschluss ein Textfeld für einen externen Text frei.</td></tr><tr><td>AUFTRAG / Kopf / Auftragkopf – Auftragstext intern</td><td>Checkbox</td><td>Schaltet im Bestellabschluss ein Textfeld für einen internen Text frei.</td></tr><tr><td>AUFTRAG / Kopf / Kommissioniertext</td><td>Checkbox</td><td>Schaltet im Bestellabschluss ein Textfeld für den Kommissioniertext frei.</td></tr><tr><td>AUFTRAG / Kopf / Kundenauftragsnummer</td><td>Nein · Optional · Pflicht</td><td>Feld im Bestellabschluss. Bei *Pflicht* muss der Kunde eine Nummer eingeben. Siehe Hinweis unten.</td></tr><tr><td>AUFTRAG / Kopf / Lieferadresse, Auswahl aus Datenbank</td><td>Checkbox</td><td>Der Kunde kann eine hinterlegte abweichende Lieferadresse aus einer Liste auswählen, sofern vorhanden.</td></tr><tr><td>AUFTRAG / Kopf / Lieferadresse, Erfassung einer neuen Adresse</td><td>Checkbox</td><td>Der Kunde kann eine Lieferadresse angeben, die nicht in den Daten hinterlegt ist — etwa für einen Messestand.</td></tr><tr><td>AUFTRAG / Kopf / Lieferadresse Pflicht</td><td>Checkbox</td><td>Es muss eine Lieferadresse ausgewählt werden.</td></tr></tbody></table>

> **Hinweis zur Kundenauftragsnummer:** Zusätzlich zu diesem Recht gibt es unter *eCom \\ Einstellungen* die Einstellung *Kundenauftragsnummer generieren*, die das Feld **Ihre Bestellnummer** im Warenkorb freischaltet. Wie beide zusammenwirken, ist noch nicht abschließend geklärt.

## Bereich AUFTRAG / Position

<table id="bkmrk-recht-einstellung-wi-2"><thead><tr><th>Recht</th><th>Einstellung</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>AUFTRAG / Position / Live Preisabfrage</td><td>Checkbox</td><td>Ermöglicht dem Kunden, im Warenkorb eine Live-Preis-Findung durchzuführen und die Preise durch das ERP-System berechnen zu lassen. Siehe [Preisfindung](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/preisfindung).</td></tr><tr><td>AUFTRAG / Position / Artikelhistorie</td><td>Checkbox</td><td>Zeigt auf der Artikel-Detailseite die letzten Käufe des Kunden zum gewählten Artikel mit Menge, Datum und Preis.</td></tr></tbody></table>

## Bereich BASIS / Artikelstamm

<table id="bkmrk-recht-einstellung-wi-3"><thead><tr><th>Recht</th><th>Einstellung</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>BASIS / Artikelstamm / Beschreibungstexte</td><td>Checkbox</td><td>Zeigt auf der Artikel-Detailseite die Beschreibung, also den Artikellangtext aus dem DeDeSales-Client.</td></tr><tr><td>BASIS / Artikelstamm / Einheiten anzeigen</td><td>Checkbox</td><td>Zeigt auf der Artikel-Detailseite die Einheiten des Artikels.</td></tr></tbody></table>

## Bereich AUFTRAG / Sperr-Regeln

Die Sperr-Regeln legen fest, wann ein Auftrag aus dem Shop mit einer Auftragssperre versehen wird. Ein gesperrter Auftrag wird an das ERP-System übermittelt, muss dort aber **manuell bearbeitet beziehungsweise freigeschaltet** werden.

Die Wirkung ist bei allen Regeln dieselbe; sie unterscheiden sich nur im Auslöser.

<table id="bkmrk-recht-ausl%C3%B6ser-auftr"><thead><tr><th>Recht</th><th>Auslöser</th></tr></thead><tbody><tr><td>AUFTRAG / Sperr-Regeln / Aufträge grundsätzlich mit Auftragssperre versehen</td><td>jeder Auftrag</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Angebrochene Mengen</td><td>der Auftrag enthält angebrochene Mengen</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Interne Kopfnotiz vorhanden</td><td>im Auftragskopf ist eine interne Notiz erfasst</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Kopfrabatt</td><td>ein Kopfrabatt ist gesetzt</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Mindestbestellwert nicht erreicht</td><td>der Mindestbestellwert ist nicht erreicht</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Positions-Rabatt</td><td>eine Position trägt einen Rabatt</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Preis auf 0,00 geändert</td><td>ein Positionspreis wurde auf 0,00 geändert</td></tr><tr><td>AUFTRAG / Sperr-Regeln / Preis manuell geändert ( &gt; 0 )</td><td>ein Positionspreis wurde manuell geändert</td></tr></tbody></table>

## Bereich STATISTIK / Belege

Diese Rechte steuern, welche Belegarten dem Kunden im Shop zur Verfügung stehen. Ein Menüeintrag erscheint nur, wenn das Recht gesetzt ist **und** Belege dieser Art vorliegen. Siehe [Belege](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/belege).

Die Rechte für **Offene Posten** und **Rückstände** liegen direkt unter *STATISTIK*, die übrigen unter *STATISTIK / Belege*. Jedes Recht steuert den gleichnamigen Menüeintrag.

> **Hinweis:** Im selben Bereich stehen auch **Angebote** und **Inventuren**. Beide tragen **kein Warenkorb-Symbol** und wirken nicht auf den Shop. Voraussetzung ist, dass die Belege aus dem ERP-System geliefert werden.

<table id="bkmrk-recht-statistik-%2F-of"><thead><tr><th>Recht</th></tr></thead><tbody><tr><td>STATISTIK / Offene Posten</td></tr><tr><td>STATISTIK / Rückstände</td></tr><tr><td>STATISTIK / Belege / Aufträge</td></tr><tr><td>STATISTIK / Belege / Gutschriften</td></tr><tr><td>STATISTIK / Belege / Kontrakte</td></tr><tr><td>STATISTIK / Belege / Lastschrift</td></tr><tr><td>STATISTIK / Belege / Lieferscheine</td></tr><tr><td>STATISTIK / Belege / Rechnungen</td></tr></tbody></table>

Die Belege erreicht der Kunde über das Benutzersymbol in der Kopfzeile. Siehe [Belege](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/belege).

# Einstellungen im Überblick

## Übersicht

Die Einstellungen unter *eCom \\ Einstellungen* bestimmen das Verhalten des Shops.

Sie wirken ausschließlich auf das eCom-System und lassen den DeDeSales-Client unberührt.

Änderungen werden erst nach einer Datenbereitstellung wirksam.

## Artikelanzeige

<table id="bkmrk-einstellung-typ-wirk"><thead><tr><th>Einstellung</th><th>Typ</th><th>Wirkung</th></tr></thead><tbody><tr><td>Artikel ohne Bestand nicht anzeigen</td><td>Checkbox</td><td>Es werden nur Artikel angezeigt, die einen Lagerbestand haben. Häufige Ursache für scheinbar fehlende Artikel.</td></tr><tr><td>Artikelbemerkungen anzeigen</td><td>Checkbox</td><td>Zeigt Bemerkungen zum Artikel an.</td></tr><tr><td>Nächsten Termin anzeigen</td><td>Checkbox</td><td>**Ohne Wirkung im neuen Shop.** Die Einstellung gehört zur Ansprechpartner-Liste der Kontaktmaske, die bewusst nicht umgesetzt wurde. Siehe [Hauptseite](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/hauptseite).</td></tr><tr><td>Produkteigenschaften anzeigen</td><td>Checkbox</td><td>Schaltet auf der Artikel-Detailseite den **Reiter** mit EAN, Größe und Gewicht ein oder aus. **Nicht** zu verwechseln mit frei gepflegten Artikelattributen — die steuert sie nicht.</td></tr><tr><td>Standardsortierung</td><td>Auswahl</td><td>Sortierung der Artikelliste im Auslieferungszustand. Werte: *Sortierung Artikelnummer Bezeichnung* (Standard), *Artikelnummer Bezeichnung*, *Bezeichnung Artikelnummer*, *Relevanz Artikelnummer*, *Lagerbestand aufsteigend*, *Lagerbestand absteigend*.</td></tr><tr><td>Warengruppen ausblenden</td><td>Checkbox</td><td>Blendet die Warengruppen im Shop aus, sofern sie gepflegt sind. Verhindert doppelte Anzeigen, wenn zusätzlich Auftragsvorlagen für eCom vorhanden sind.</td></tr></tbody></table>

### Artikelstatus anzeigen

Der Artikelstatus kommt aus den Artikeldaten und steuert die Anzeige im Shop. Die Einstellung wirkt im Hintergrund; eine eigene Statusanzeige gibt es im Standard nicht.

Von den Statuswerten, die DeDeSales kennt, sind im Shop nur zwei wirksam:

<table id="bkmrk-wert-wirkung-im-shop"><thead><tr><th>Wert</th><th>Wirkung im Shop</th></tr></thead><tbody><tr><td>Matrix</td><td>Der Artikel öffnet die **Matrixerfassung** statt des normalen Mengenfelds. Siehe [Matrixerfassung](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/matrixerfassung).</td></tr><tr><td>Gesperrt</td><td>Der Artikel ist **nicht bestellbar**. Er lässt sich auch nicht über *Alle übernehmen* in den Warenkorb legen.</td></tr></tbody></table>

*Gesperrt* wirkt dabei **binär**: Der Shop unterscheidet nicht zwischen den feineren Varianten *GesperrtNurRetoure* und *GesperrtAuftragUndRetoure*.

Die übrigen Werte — *Standard*, *Auslaufartikel*, *Neu*, *NeuHinweis*, *Displaybestückung* und die beiden genannten Gesperrt-Varianten — haben im eCom-Shop **keine Wirkung**. Sie stammen aus DeDeSales und spielen nur dort eine Rolle.

> **Hinweis:** Verlassen Sie sich für Hervorhebungen im Shop nicht auf den Artikelstatus. Farbige Marker wie *Fokusartikel* oder *Topseller* kommen aus **Ja-Nein-Feldern des Artikelstamms**, nicht aus dem Status. Siehe [Artikel-Übersichtsseite](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/artikel-ubersichtsseite).

### Lagerbestand anzeigen

Steuert, ob und wie der Lagerbestand am Artikel erscheint. Die Anzeige ist eine kleine **Pille** neben dem Artikel, mit einem **Tooltip** beim Überfahren mit der Maus.

<table id="bkmrk-wert-pille-tooltip-n"><thead><tr><th>Wert</th><th>Pille</th><th>Tooltip</th></tr></thead><tbody><tr><td>Nein</td><td>keine Anzeige</td><td>—</td></tr><tr><td>Ampel</td><td>nur farbig, **ohne Zahl**</td><td>*Auf Lager*, *nicht auf Lager* oder ein Hinweis, dass keine Information vorliegt</td></tr><tr><td>Absolut</td><td>**grau** mit der Zahl</td><td>—</td></tr><tr><td>Beides</td><td>**farbig** mit der Zahl</td><td>bei einer Zahl das Wort *Lagerbestand*, sonst der Hinweis auf die fehlende Information</td></tr></tbody></table>

### Wenn kein Bestand geliefert wird

Hier unterscheiden sich die beiden Werte mit Zahl:

<table id="bkmrk-wert-ohne-bestandsda"><thead><tr><th>Wert</th><th>ohne Bestandsdaten</th></tr></thead><tbody><tr><td>Absolut</td><td>**keine Pille** — die Anzeige entfällt ganz</td></tr><tr><td>Beides</td><td>Pille in **Grau** mit dem Text **k.A.**</td></tr></tbody></table>

Der Unterschied liegt also darin, wie deutlich der fehlende Bestand gezeigt wird: Bei *Absolut* bleibt die Stelle einfach leer, bei *Beides* steht dort ausdrücklich **k.A.**

### Was die Farben bedeuten

<table id="bkmrk-farbe-bedingung-gr%C3%BCn"><thead><tr><th>Farbe</th><th>Bedingung</th></tr></thead><tbody><tr><td>grün</td><td>Bestand **größer als 0**</td></tr><tr><td>rot</td><td>Bestand **0 oder kleiner**</td></tr><tr><td>grau</td><td>kein Bestand geliefert</td></tr></tbody></table>

Es gibt keinen Schwellwert: Schon ein einziges Stück färbt die Pille grün.

### KIP anzeigen

Zeigt kundenindividuelle Preise an. Die Einstellung bestimmt zugleich, welcher Hinweistext dem Kunden zu den Preisen angezeigt wird. Intern trägt sie die Bezeichnung `EComKIP`.

<table id="bkmrk-einstellung-hinweist"><thead><tr><th>Einstellung</th><th>Hinweistext</th><th>Darstellung</th></tr></thead><tbody><tr><td>nicht gesetzt</td><td>„Listenpreise! Ihr Kundenpreis wird bei der Faktura errechnet."</td><td>roter Rahmen</td></tr><tr><td>gesetzt</td><td>„Bei allen Preisen handelt es sich um Netto Listenpreise."</td><td>schlichter grauer Kasten ohne Rahmen</td></tr></tbody></table>

> **Noch zu klären:** Ob diese Hinweistexte nach einer **Live-Preis-Abfrage** ausgeblendet werden. Beschrieben ist es so, beobachtet wurde jedoch, dass der Text im Warenkorb stehen bleibt.

### Frachtkosten Artikel

Artikelnummer des Frachtkostenartikels. Werden Frachtkosten berechnet, erscheinen sie über diesen Artikel als eigene Zeile im Warenkorb.

Der Betrag selbst stammt nicht aus dieser Einstellung, sondern aus der Werteliste *Frachtkosten* des Mandanten. Siehe [Bestellabschluss](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/bestellabschluss).

### Mindestbestellwert aus Debitor anwenden

Soll im Bestellabschluss der Mindestbestellwert des Debitors gelten statt des Mandantenwerts.

> **Noch zu klären:** Für den Vorrang des Debitor-Werts prüft der Shop **zwei andere** Bedingungen — *Benutze Mindestbestellwert anstatt Frachtfreigrenze* am Mandanten und die Rückfrage-Einstellung *Mindestauftragswert* auf *Auftrag blockieren*. Dieser Haken war dabei nicht darunter. Ob er an anderer Stelle wirkt, ist offen. Im Normalfall gilt der **Mindestbestellwert aus dem Reiter eCom** des Mandanten. Siehe [Bestellabschluss](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/bestellabschluss).

### Gutscheineingabe

Steuert, ob der Kunde im Warenkorb ein Feld zur Eingabe eines Gutscheincodes erhält.

> **Hinweis:** Diese Einstellung wirkt unabhängig von der Gutscheinverwaltung unter *eCom \\ Gutscheinverwaltung*. Ohne die Eingabemöglichkeit kann ein angelegter Gutschein nicht eingelöst werden.

## Bestellung und Lieferung

<table id="bkmrk-einstellung-typ-wirk-1"><thead><tr><th>Einstellung</th><th>Typ</th><th>Wirkung</th></tr></thead><tbody><tr><td>Kundenauftragsnummer generieren</td><td>Checkbox</td><td>Schaltet im Warenkorb das Feld **Ihre Bestellnummer** frei.</td></tr><tr><td>Lieferausgang am Tag der Bestellung</td><td>Uhrzeit</td><td>Legt fest, bis wann eine Bestellung eingehen muss, damit sie am selben Tag bearbeitet wird.</td></tr><tr><td>Liefertermineingabe</td><td>Auswahl</td><td>Drei Werte: *Nein* (Standard), *Optional*, *Pflicht*. **Achtung:** Auch bei *Nein* erscheint das Feld im Shop. **Nicht verwechseln** mit dem Liefertermin-Recht der Rolle, das fünf Werte kennt und zum Vertriebsclient gehört. Siehe [Bestellabschluss](https://wiki.dedesales.de/books/leistungsbeschreibung-ecom/page/bestellabschluss).</td></tr></tbody></table>

## Zugang und Registrierung

<table id="bkmrk-einstellung-typ-wirk-2"><thead><tr><th>Einstellung</th><th>Typ</th><th>Wirkung</th></tr></thead><tbody><tr><td>Kunde muss bei Erstanmeldung Kennwort ändern</td><td>Checkbox</td><td>Erzwingt die Änderung des Kennworts bei der ersten Anmeldung.</td></tr><tr><td>Neukundenregistrierung ohne PLZ Feld</td><td>Checkbox</td><td>Im Formular *Noch kein Kunde* ist keine Postleitzahl erforderlich.</td></tr><tr><td>Registrierung ohne PLZ Feld</td><td>Checkbox</td><td>Bei *Zugang anfordern* ist keine Postleitzahl erforderlich.</td></tr><tr><td>Noch kein Kunde</td><td>Checkbox</td><td>Haken gesetzt: der Button *Noch kein Kunde* erscheint und löst eine E-Mail mit den Daten des Interessenten aus. Haken entfernt: es gibt nur den Button *Noch kein Zugang*. Der Bereich lässt sich über den Textbaustein *Noch kein Zugang – Hinweis* textlich erweitern.</td></tr></tbody></table>

### Kennwortstärke

Legt die Anforderungen an das Kennwort des Kunden fest.

<table id="bkmrk-wert-anforderung-bit"><thead><tr><th>Wert</th><th>Anforderung</th></tr></thead><tbody><tr><td>Bitte einen Wert auswählen…</td><td>Standard — keine Anforderung</td></tr><tr><td>Buchstaben und Zahlen</td><td>Buchstaben und Zahlen müssen enthalten sein</td></tr><tr><td>Buchstaben, Zeichen und Zahlen</td><td>Buchstaben, Sonderzeichen und Zahlen müssen enthalten sein</td></tr></tbody></table>

## Darstellung und Kommunikation

<table id="bkmrk-einstellung-typ-wirk-3"><thead><tr><th>Einstellung</th><th>Typ</th><th>Wirkung</th></tr></thead><tbody><tr><td>Shopbetreiber</td><td>Auswahl</td><td>Kunde, dessen Name in der Kopfzeile des Shops neben dem Logo erscheint. Ohne Angabe bleibt die Stelle in manchen Bereichen leer.</td></tr><tr><td>Bestellmail zusätzlich per CC an zuständige Mitarbeiter versenden</td><td>Checkbox</td><td>Die Bestellbestätigung geht zusätzlich per CC an den dem Kunden zugeordneten Mitarbeiter. Der Kunde erhält sie ohnehin.</td></tr></tbody></table>

### Default-Sprache

Sprache, die als Rückfalloption verwendet wird, wenn sich ein Kunde mit einer Kultur anmeldet, für die keine Sprachlizenz vorliegt.

Voraussetzung ist, dass für die gewählte Kultur Artikeltexte und Warengruppentexte vorhanden sind.

### CSS

Freitextfeld für die Farbgebung des Shops. Die Farben werden als CSS-Variablen in HSL-Notation hinterlegt.

```css
:root {
    --primary: hsl(215 100% 25%);
    --primary-soft: hsl(215 100% 94%);
    --secondary: hsl(211 100% 40%);
    --accent: var(--primary);

    --primary-foreground: hsl(0 0% 100%);
    --secondary-foreground: hsl(0 0% 100%);
    --accent-foreground: var(--primary-foreground);
    --primary-soft-foreground: var(--primary);

    --ring: var(--primary);
}

```

<table id="bkmrk-variable-bedeutung--"><thead><tr><th>Variable</th><th>Bedeutung</th></tr></thead><tbody><tr><td><code>&#45;&#45;primary</code></td><td>Hauptfarbe des Shops, etwa für Schaltflächen und aktive Elemente</td></tr><tr><td><code>&#45;&#45;primary&#45;foreground</code></td><td>Schrift- und Symbolfarbe auf der Hauptfarbe</td></tr><tr><td><code>&#45;&#45;primary&#45;soft</code></td><td>aufgehellte Variante der Hauptfarbe, für Flächen und Hervorhebungen</td></tr><tr><td><code>&#45;&#45;primary&#45;soft&#45;foreground</code></td><td>Schriftfarbe auf der aufgehellten Fläche</td></tr><tr><td><code>&#45;&#45;secondary</code></td><td>Zweitfarbe</td></tr><tr><td><code>&#45;&#45;secondary&#45;foreground</code></td><td>Schriftfarbe auf der Zweitfarbe</td></tr><tr><td><code>&#45;&#45;accent</code></td><td>Akzentfarbe</td></tr><tr><td><code>&#45;&#45;accent&#45;foreground</code></td><td>Schriftfarbe auf der Akzentfarbe</td></tr><tr><td><code>&#45;&#45;ring</code></td><td>Farbe des Fokusrahmens bei Tastaturbedienung</td></tr><tr><td><code>&#45;&#45;shop&#45;hintergrund</code></td><td>Farbe des Seitenhintergrunds; im Auslieferungszustand <code>var&#40;&#45;&#45;primary&#45;soft&#41;</code></td></tr><tr><td><code>&#45;&#45;verlauf&#45;warm</code></td><td>warmer Endpunkt des Hintergrundfarbverlaufs; zeigt auf <code>&#45;&#45;shop&#45;hintergrund</code></td></tr><tr><td><code>&#45;&#45;verlauf&#45;kalt</code></td><td>kalter Endpunkt des Hintergrundfarbverlaufs; zeigt ebenfalls auf <code>&#45;&#45;shop&#45;hintergrund</code></td></tr></tbody></table>

Die HSL-Notation lautet `hsl(Farbwinkel Sättigung Helligkeit)`. Im Beispiel ist `215` ein Blauton, `100%` die volle Sättigung und `25%` eine dunkle Ausprägung. Für eine hellere oder dunklere Variante derselben Farbe genügt es daher, den letzten Wert zu ändern.

### Seitenhintergrund

Hinter der Seite liegt eine Farbfläche, die technisch als **Farbverlauf** mit zwei Endpunkten aufgebaut ist — `--verlauf-warm` und `--verlauf-kalt`.

Beide Endpunkte zeigen auf dieselbe Variable:

```css
--shop-hintergrund: var(--primary-soft);
--verlauf-warm: var(--shop-hintergrund);
--verlauf-kalt: var(--shop-hintergrund);

```

Daraus folgt zweierlei:

<table id="bkmrk-kein-sichtbarer-verl"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>**Kein sichtbarer Verlauf**</td><td>Beide Endpunkte tragen denselben Wert. Der Hintergrund ist einfarbig.</td></tr><tr><td>**Der Hintergrund folgt der Hausfarbe**</td><td>Über <code>&#45;&#45;primary&#45;soft</code> — wer die Hauptfarbe umstellt, bekommt den passenden hellen Hintergrund von allein.</td></tr></tbody></table>

**Einen anderen Hintergrund setzen:** eine Zeile im Feld **CSS** genügt.

```css
:root {
    --shop-hintergrund: hsl(0 0% 100%);
}

```

`hsl(0 0% 100%)` ist Weiß: Sättigung `0%`, Helligkeit `100%`.

**Einen echten Verlauf erzeugen:** `--verlauf-warm` und `--verlauf-kalt` einzeln auf zwei **verschiedene** Farben setzen und `--shop-hintergrund` unberührt lassen. Eine Einstellung im Backend gibt es dafür nicht — es läuft immer über das Feld **CSS**. Beispiel:

```css
:root {
    --verlauf-warm: hsl(27 87% 94%);
    --verlauf-kalt: hsl(215 100% 94%);
}

```

`var(--primary)` bedeutet, dass die Variable denselben Wert wie die Hauptfarbe übernimmt. Wer nur eine Farbe anpassen möchte, ändert `--primary` und `--primary-soft`; der Rest folgt automatisch.

> **Achtung:** Achten Sie auf ausreichenden Kontrast zwischen einer Farbe und ihrer zugehörigen `-foreground`-Farbe, damit Texte lesbar bleiben.

# Marketing-Container

## Übersicht

Container sind die Werbeflächen des Shops. Im Alltag auch Banner, Werbebanner oder Aktionsfläche genannt.

Über sie weisen Sie Ihre B2B-Kunden auf besondere Auftragsvorlagen, Neuheiten und ähnliches hin.

Ein Container besteht aus:

- einem **Inhalt** — Bild, Text oder beides, je nach Container-Typ
- einer **Position** im eCom-System
- einem **Ziel**, auf das verlinkt wird

## Container-Typen

Es gibt drei Container-Typen:

<table id="bkmrk-typ-inhalt-bild-nur-"><thead><tr><th>Typ</th><th>Inhalt</th></tr></thead><tbody><tr><td>Bild</td><td>nur ein Bild</td></tr><tr><td>Bild mit Text</td><td>Bild und Text, Bild zuerst</td></tr><tr><td>Text mit Bild</td><td>Text und Bild, Text zuerst</td></tr></tbody></table>

Wie Bild und Text angeordnet werden, hängt vom **Bereich** ab:

<table id="bkmrk-typ-im-float-bereich"><thead><tr><th>Typ</th><th>im Float-Bereich</th><th>im Slider</th></tr></thead><tbody><tr><td>Bild mit Text</td><td>Text **rechts neben** dem Bild</td><td>Text **unten im** Bild</td></tr><tr><td>Text mit Bild</td><td>Text **links neben** dem Bild</td><td>Text **oben im** Bild</td></tr></tbody></table>

Der Unterschied zwischen den beiden Typen ist also die Reihenfolge: Im Float-Bereich stehen Bild und Text nebeneinander, im Slider übereinander — und der Typ bestimmt, was zuerst kommt.

Der Text lässt sich über eine Werkzeugleiste **formatieren**.

### Platzbedarf der Text-Typen

Ein Container vom Typ *Bild mit Text* oder *Text mit Bild* belegt im Float-Bereich eine **Doppelkachel**, also zwei der vier Spalten. Das **Bild darin bleibt genauso groß** wie in einer einfachen Kachel — es nimmt die eine Hälfte der Doppelkachel ein, der Text die andere.

<table id="bkmrk-breite-der-kachel-br"><thead><tr><th></th><th>Breite der Kachel</th><th>Breite des Bildes darin</th></tr></thead><tbody><tr><td>einfache Float-Kachel</td><td>300 Pixel</td><td>298 Pixel</td></tr><tr><td>Float-Kachel *mit Text*</td><td>616 Pixel</td><td>298 Pixel — identisch</td></tr></tbody></table>

Das ist so gewollt: Alle Bilder einer Reihe stehen dadurch pixelgenau gleich breit nebeneinander.

**Für die Bildpflege heißt das: Die Typen mit Text brauchen kein größeres Bild.**

## Die Container-Übersicht

Unter *eCom \\ Container* listet eine Tabelle alle angelegten Container. Darüber liegt **Neuen Container anlegen**.

<table id="bkmrk-spalte-bedeutung-bez"><thead><tr><th>Spalte</th><th>Bedeutung</th></tr></thead><tbody><tr><td>Bezeichnung</td><td>frei vergebener Name, dient nur der Wiedererkennung im Backend</td></tr><tr><td>Position</td><td>Bereich, in dem der Container erscheint. Es gibt genau zwei: *Startseite oben* und *Startseite unten*</td></tr><tr><td>Kultur</td><td>Sprache, für die der Container gilt, etwa <code>de&#45;DE</code>. In einem mehrsprachigen Shop pflegen Sie den Container je Sprache</td></tr><tr><td>Priority</td><td>Reihenfolge innerhalb der Position</td></tr><tr><td>Typ</td><td>*Bild*, *Bild mit Text* oder *Text mit Bild*</td></tr><tr><td>Linktyp</td><td>*Kein*, *Artikel*, *Warengruppe*, *Auftragsvorlage* oder *Externe Url*</td></tr><tr><td>Link</td><td>das Ziel des Linktyps — Artikelnummer, Warengruppennummer oder URL</td></tr><tr><td>Von / Bis</td><td>**Anzeigezeitraum.** Bleiben die Felder leer, gilt keine zeitliche Begrenzung</td></tr><tr><td>Status</td><td>Steuert, ob der Container im Shop erscheint. Siehe unten</td></tr></tbody></table>

> **Hinweis:** Die **Priorität** wirkt innerhalb einer Position. Mehrere Container mit derselben Priorität sind möglich — dann entscheidet das System über die Reihenfolge.

### Status

<table id="bkmrk-status-im-shop-sicht"><thead><tr><th>Status</th><th>Im Shop sichtbar</th></tr></thead><tbody><tr><td>Freigegeben</td><td>**ja**</td></tr><tr><td>In Bearbeitung</td><td>nein</td></tr><tr><td>Abgeschlossen</td><td>nein</td></tr><tr><td>Gelöscht</td><td>nein</td></tr></tbody></table>

> **Wichtig:** Nur **Freigegeben** erscheint im Shop. Ein Container, der nicht auftaucht, obwohl Bild und Position stimmen und die Daten bereitgestellt sind, steht in der Regel auf einem anderen Status.

Der Status wirkt damit zugleich als **Archiv**: Abgelaufene Aktionen können Sie auf *Abgeschlossen* setzen, statt sie zu löschen — sie bleiben in der Liste und lassen sich später wieder freigeben.

## Steuerung eines Containers

<table id="bkmrk-eigenschaft-bedeutun"><thead><tr><th>Eigenschaft</th><th>Bedeutung</th></tr></thead><tbody><tr><td>Priorität</td><td>Legt fest, an welcher Stelle der Container angezeigt wird. <code>1</code> = als erstes.</td></tr><tr><td>Kunden</td><td>Soll der Container nur bei bestimmten Kunden erscheinen, wählen Sie hier eine Kundenliste aus.</td></tr><tr><td>Linktyp</td><td>Legt fest, was beim Klick auf den Container passiert. Siehe unten.</td></tr></tbody></table>

## Linktypen

<table id="bkmrk-linktyp-verhalten-ke"><thead><tr><th>Linktyp</th><th>Verhalten</th></tr></thead><tbody><tr><td>Kein</td><td>Es passiert nichts, da kein Linktyp zugewiesen ist.</td></tr><tr><td>Artikel</td><td>Verlinkt auf eine eingegebene Artikelnummer.</td></tr><tr><td>Warengruppe</td><td>Verlinkt auf eine ausgewählte Warengruppe.</td></tr><tr><td>Auftragsvorlage</td><td>Verlinkt auf eine ausgewählte Auftragsvorlage. **Diese muss für eCom freigeschaltet sein.** Siehe Vorbehalt unten.</td></tr><tr><td>Externe URL</td><td>Verlinkt auf eine externe Seite, zum Beispiel Ihre Homepage.</td></tr></tbody></table>

> **Noch zu klären:** Beim Linktyp *Auftragsvorlage* ist nicht gesichert, ob die **Vorlage** freigeschaltet sein muss oder die **Artikel** darin.

## Darstellungsarten

Es gibt zwei Positionen: **Startseite oben** und **Startseite unten**. Weitere Bereiche stehen nicht zur Verfügung.

Über den Unterpunkt *Positionen* legen Sie je Position fest, wie die Container dort dargestellt werden. Zur Auswahl stehen **Slider** und **Float**.

Beide Positionen sind dabei **frei belegbar**: Sie können oben einen Slider und unten einen Float-Bereich einrichten, aber ebenso umgekehrt oder zweimal dieselbe Darstellungsart. Die Position legt nur fest, **wo** der Bereich liegt, nicht **wie** er aussieht.

Beim Slider entscheidet zusätzlich das **Anzeige Intervall**, wie der Bereich aussieht — es steuert nicht nur das Tempo, sondern die Darstellung:

<table id="bkmrk-float-slider-ohne-au"><thead><tr><th></th><th>Float</th><th>Slider ohne Autoplay</th><th>Slider mit Autoplay</th></tr></thead><tbody><tr><td>Anzeige Intervall</td><td>entfällt</td><td><code>0</code></td><td>größer als <code>0</code></td></tr><tr><td>Sichtbar</td><td>mehrere Kacheln nebeneinander, bei voller Zeile automatischer Umbruch</td><td>mehrere Karten nebeneinander, alle gleich hoch</td><td>**immer nur ein Bild**, das nach der eingestellten Zeit weiterblättert</td></tr><tr><td>Mehrere Container</td><td>von links nach rechts gestapelt</td><td>mehrere Karten gleichzeitig sichtbar, Blättern über **Pfeile**</td><td>**immer nur eine** Karte sichtbar, automatischer Wechsel, darunter eine **Punktleiste**</td></tr><tr><td>Anzeigefläche</td><td>298 × 298 Pixel je Kachel (vier Spalten bei 1248 Pixel Inhaltsbreite)</td><td>Karten sind 315 Pixel hoch, die Breite richtet sich nach dem Bild</td><td>1248 × 416 Pixel</td></tr></tbody></table>

> **Wichtig:** Das Anzeige Intervall gehört zur **Position**, nicht zum einzelnen Bild — es gilt für alle Container dieser Position. Wird es später geändert, ändert sich damit auch das benötigte Bildformat.

### Automatischer Wechsel im Slider

Ob der Slider von allein weiterblättert, steuert das Feld **Anzeige Intervall**. Es erscheint nur, wenn als Art der Anzeige *Slider* gewählt ist.

Der Wert wird in **Millisekunden** angegeben: `3000` sind drei Sekunden.

<table id="bkmrk-wert-verhalten-0-kei"><thead><tr><th>Wert</th><th>Verhalten</th></tr></thead><tbody><tr><td><code>0</code></td><td>Kein automatischer Wechsel. Mehrere Karten stehen nebeneinander, der Anwender blättert über die Pfeile weiter.</td></tr><tr><td>größer als <code>0</code></td><td>Der Slider wechselt nach der angegebenen Zeit automatisch zum nächsten Container. Das Bild **steht** während dieser Zeit, es läuft nicht durch.</td></tr></tbody></table>

**Die Zeit gilt je Bild, nicht für den ganzen Durchlauf.** Bei drei Containern und `3000` steht jedes Bild drei Sekunden, ein vollständiger Umlauf dauert also neun Sekunden.

### Navigation im Slider

Welches Bedienelement erscheint, hängt am Anzeige Intervall:

<table id="bkmrk-anzeige-intervall-be"><thead><tr><th>Anzeige Intervall</th><th>Bedienelement</th></tr></thead><tbody><tr><td><code>0</code></td><td>**Pfeile** links und rechts am Slider</td></tr><tr><td>größer als <code>0</code></td><td>**Punktleiste** unter dem Slider</td></tr></tbody></table>

### Wann der automatische Wechsel aussetzt

<table id="bkmrk-situation-verhalten-"><thead><tr><th>Situation</th><th>Verhalten</th></tr></thead><tbody><tr><td>Maus liegt über dem Slider</td><td>Der Slider hält an, solange der Zeiger dort liegt. Dasselbe gilt bei Tastaturfokus.</td></tr><tr><td>Anwender klickt einen Punkt der Punktleiste an</td><td>Der Slider **stoppt dauerhaft** auf diesem Bild.</td></tr></tbody></table>

> **Wichtig:** Nach einem Klick auf die Punktleiste läuft der Slider **nicht** wieder von allein an. Weiterschalten geht dann nur noch über die Punkte. Das ist beabsichtigt.

> **Wichtig:** Sind keine Container-Bilder gepflegt, werden die Bereiche **ausgeblendet**. Der Kunde sieht dann keine Startseite, sondern landet nach der Anmeldung direkt auf der Artikel-Übersichtsseite. Wer die Startseite als Einstieg möchte, muss also mindestens einen Container mit Bild pflegen.

### Beschneidung im Float-Bereich

Im Float-Bereich füllt das Bild die **Höhe der Kachel** aus. Enthält eine Nachbarkachel viel Text, wird die ganze Reihe höher — das Bild wird dann **links und rechts angeschnitten**.

Das gilt nur für den Float-Bereich. Im **Slider** wird nicht beschnitten, dort ist das Bild immer vollständig zu sehen.

> **Empfehlung für die Bildpflege:** quadratisch **900 × 900 Pixel**, Motiv **mittig** und mit seitlichem Rand, damit ein Anschnitt nichts Wesentliches abschneidet.

## Empfohlene Bildgrößen

Als Faustregel gilt: **Für den Slider eher breite Bilder, für den Float-Bereich quadratische.**

Technisch dahinter steht: Bilder werden grundsätzlich **vollständig eingepasst**. Beschnitten wird nur dort, wo das Bild eine Fläche ausfüllen soll:

<table id="bkmrk-fl%C3%A4che-verhalten-bei"><thead><tr><th>Fläche</th><th>Verhalten bei abweichendem Seitenverhältnis</th></tr></thead><tbody><tr><td>Float-Kachel</td><td>**Beschnitt** — seitlich, das Bild füllt die Kachel</td></tr><tr><td>Hintergrundbild der Anmeldeseite</td><td>**Beschnitt** — seitlich</td></tr><tr><td>Slider, beide Varianten</td><td>**kein Beschnitt**, stattdessen Leerstreifen</td></tr></tbody></table>

<table id="bkmrk-bereich-empfohlene-b"><thead><tr><th>Bereich</th><th>Empfohlene Bildgröße</th><th>Anzeigefläche</th><th>Beschnitt</th></tr></thead><tbody><tr><td>Float-Kachel</td><td>**900 × 900** Pixel (1:1)</td><td>298 × 298 Pixel</td><td>ja — das Bild füllt die Kachel vollständig</td></tr><tr><td>Slider ohne Autoplay</td><td>mindestens **630 Pixel hoch**, Seitenverhältnis zwischen etwa 1:1 und 2,3:1 — zum Beispiel **945 × 630**</td><td>Karten 315 Pixel hoch, Breite nach Bild, höchstens 720 Pixel</td><td>nein</td></tr><tr><td>Slider mit Autoplay</td><td>**1500 × 500** Pixel (3:1)</td><td>1248 × 416 Pixel</td><td>nein — stattdessen Leerstreifen bei abweichendem Verhältnis</td></tr></tbody></table>

Beim Slider **ohne** Autoplay sind die Karten nicht gleich breit, sondern gleich hoch: 315 Pixel. Die Breite ergibt sich aus dem Bild. Deshalb entsteht hier weder Beschnitt noch Leerstreifen — unabhängig vom Seitenverhältnis.

Die einzige Grenze ist die **maximale Kartenbreite von 720 Pixel**. Bei 315 Pixel Höhe entspricht das etwa 2,3:1. Breitere Bilder — etwa Banner im Verhältnis 4:1 — stoßen an diese Grenze und bekommen wieder schmale Streifen oben und unten.

Beim Slider **mit** Autoplay ist die Fläche dagegen fest auf **3:1** eingestellt. Das Bild wird hineingepasst, nicht beschnitten — weicht sein Verhältnis ab, entstehen Leerstreifen:

<table id="bkmrk-bild-folge-h%C3%B6her-als"><thead><tr><th>Bild</th><th>Folge</th></tr></thead><tbody><tr><td>höher als 3:1</td><td>Leerstreifen **links und rechts**</td></tr><tr><td>breiter als 3:1</td><td>Leerstreifen **oben und unten**</td></tr></tbody></table>

Deshalb die Empfehlung 1500 × 500: Sie trifft das Verhältnis der Anzeigefläche genau.

> **Grundregel für alle Bilder:** Wo **nicht** beschnitten wird, macht ein größerer Rahmen das Bild nicht größer — nur ein passendes Seitenverhältnis füllt den Rahmen aus. Weicht das Verhältnis ab, entstehen Leerstreifen an den Seiten oder oben und unten.

## Weitere Bildmaße im Shop

### Hintergrundbild der Anmeldeseite

<table id="bkmrk-wert-empfohlene-bild"><thead><tr><th></th><th>Wert</th></tr></thead><tbody><tr><td>Empfohlene Bildgröße</td><td>**1400 × 1400** Pixel (1:1)</td></tr><tr><td>Anzeigefläche</td><td>rund 686 × 711 Pixel bei 1400 Pixel Fensterbreite, also nahezu quadratisch</td></tr><tr><td>Beschnitt</td><td>ja, seitlich — Motiv mittig halten</td></tr></tbody></table>

Formular und Bild liegen in einer gemeinsamen Karte. Diese ist auf 1248 Pixel begrenzt, das Bild nimmt 55 Prozent davon ein — die Anzeigefläche wächst also mit dem Fenster, bleibt aber nahezu quadratisch.

> **Wichtig:** Unter 992 Pixel Bildschirmbreite — also auf Smartphone und Tablet — wird das Bild **ausgeblendet**. Es darf deshalb keine Information enthalten, die zur Anmeldung nötig ist.

### Logo des Betreibers

<table id="bkmrk-wert-empfohlene-bild-1"><thead><tr><th></th><th>Wert</th></tr></thead><tbody><tr><td>Empfohlene Bildgröße</td><td>etwa **290 Pixel hoch**, Breite beliebig bis maximal 380 Pixel</td></tr><tr><td>Format</td><td>PNG mit transparentem Hintergrund</td></tr><tr><td>Angezeigt wird es</td><td>144 Pixel hoch auf der Anmeldeseite, 56 Pixel hoch in Kopf- und Fußzeile</td></tr></tbody></table>

Das Logo wird **nie beschnitten, aber auch nie vergrößert**. Ein zu kleines Logo wirkt auf der Anmeldeseite unscharf — dort hilft nur eine größere Bilddatei, nicht eine Änderung der Darstellungsgröße.

## Kennzeichnung KI-generierter Bilder

Ab **Version 19** kann ein Bild als *mit KI erstellt* gekennzeichnet werden. Der Shop blendet dann automatisch einen Hinweis über dem Bild ein.

Gekennzeichnet wird am Container selbst, mit dem Haken **Bild ist KI generiert**. Siehe die Backend-Anleitung *Bilder als KI-generiert kennzeichnen*.

<table id="bkmrk-beschreibung-aussehe"><thead><tr><th></th><th>Beschreibung</th></tr></thead><tbody><tr><td>Aussehen</td><td>graue, halbtransparente Pille mit weißer Schrift **AI GENERATED**</td></tr><tr><td>Größe</td><td>rund 90 × 19 Pixel</td></tr><tr><td>Position</td><td>obere rechte Ecke, 8 Pixel Abstand</td></tr></tbody></table>

Im Slider wandert der Hinweis an den **unteren Rand**, wenn der Text oben auf dem Bild liegt — also beim Container-Typ *Text mit Bild*.

> **Wichtig:** Der Hinweis richtet sich nach der **Anzeigefläche**, nicht nach dem Bild. Füllt das Bild die Fläche nicht aus — etwa ein quadratisches Bild im 3:1-Autoplay-Slider —, steht er am Rand der Fläche und damit deutlich **neben** dem Bild. In den Float-Kacheln, wo das Bild die Kachel ausfüllt, liegt er dagegen auf dem Bild.

**Wo der Hinweis erscheint:**

- Container der Startseite — Float-Kacheln, Slider und Autoplay-Streifen
- Hintergrundbild der Anmeldeseite
- Logo auf der Anmeldeseite

**Wo bewusst nicht:** am Logo in Kopf- und Fußzeile. Dort ist das Logo nur 56 Pixel hoch, der Hinweis wäre breiter als das Logo selbst.

> **Wichtig für die Bildauswahl:** In der oberen rechten Ecke sollte im Motiv nichts Wichtiges stehen — der Hinweis liegt darüber.