Dokumentation des PrestaShop Vorbestellung Moduls (dfpreorder)
dfpreorder installieren und einrichten: Vorbestellregeln, Anzeige auf der Produktseite, Zuteilung des eingegangenen Bestands, Verzögerungen und Cron-Aufgabe.
<p>Das Modul <strong>DataFirefly Pre-Orders</strong> (dfpreorder) verkauft Produkte, bevor sie im Lager eintreffen, unter PrestaShop 8 und 9. Diese Seite behandelt Installation, Einstellungen, Regeln, Wareneingang und Fehlerbehebung.</p>
<h2>Installation</h2>
<ol>
<li>Laden Sie das ZIP in Ihrem DataFirefly-Kundenkonto herunter.</li>
<li>Gehen Sie im Backoffice zu <em>Module > Modul-Manager > Modul hochladen</em> und senden Sie das ZIP.</li>
<li>Bei der Installation legt das Modul seine Tabellen, seine zwei Bestellstatus und zwei Menüpunkte an: <em>Katalog > Vorbestellungen</em> für die Regeln und <em>Bestellungen > Vorbestellungen</em> für die Nachverfolgung.</li>
<li>Öffnen Sie die Modulkonfiguration, prüfen Sie die allgemeinen Einstellungen und kopieren Sie die Cron-URL.</li>
</ol>
<p>Das Modul läuft von PrestaShop 8.0 bis 9.x mit demselben ZIP, im Multishop und mehrsprachig. Die Texte liegen auf Deutsch, Englisch, Französisch, Spanisch, Italienisch, Niederländisch, Polnisch und Portugiesisch vor.</p>
<h2>Allgemeine Einstellungen</h2>
<ul>
<li><strong>Standard-Button-Text</strong> und <strong>Badge-Text</strong>, je Sprache. Jede Regel kann sie überschreiben.</li>
<li><strong>Warenkörbe mit Vorbestellungen und Lagerware</strong>: ohne Hinweis erlauben, mit dem Hinweis erlauben, dass die Bestellung in einer Sendung geliefert wird, oder die Mischung verbieten.</li>
<li><strong>Zustimmungs-Checkbox im Checkout</strong>: fügt ein Pflichtfeld hinzu, wenn der Warenkorb eine Vorbestellung enthält. Der Text unterstützt den Platzhalter <code>%date%</code>, der durch das späteste voraussichtliche Versanddatum des Warenkorbs ersetzt wird. Der Zeitstempel wird an jeder Vorbestellposition gespeichert.</li>
<li><strong>E-Mails</strong> für Bestätigung und Verfügbarkeit, einzeln schaltbar.</li>
<li><strong>Automatische Zuteilung</strong> des eingegangenen Bestands und der <strong>Bestellstatus</strong>, der gilt, sobald alle Positionen zugeteilt sind.</li>
<li><strong>Benachrichtigen-Formular</strong> bei nicht bestellbaren Produkten.</li>
<li><strong>Strukturierte Daten PreOrder</strong>, standardmäßig aus: nur aktivieren, wenn Ihr Theme oder SEO-Modul nicht bereits Produkt-JSON-LD ausgibt.</li>
</ul>
<h2>Eine Vorbestellregel anlegen</h2>
<p>Gehen Sie zu <em>Katalog > Vorbestellungen</em> und dann auf <em>Regel hinzufügen</em>. Eine Regel gilt für ein Produkt oder für eine bestimmte Variante.</p>
<h3>Die drei Modi</h3>
<ul>
<li><strong>Bei fehlendem Bestand</strong>: Die Vorbestellung startet bei Bestand null und endet mit dem Wareneingang. Das ist der Modus für Lieferengpässe.</li>
<li><strong>Erzwungen</strong>: Das Produkt bleibt vorbestellbar, solange die Regel aktiv ist, auch mit Bestand. Das ist der Modus für einen Produktlaunch.</li>
<li><strong>Zeitfenster</strong>: Die Vorbestellung öffnet und schließt zu den eingetragenen Terminen. Das Schließen übernimmt die Cron-Aufgabe und ersatzweise jeder Aufruf der Produktseite.</li>
</ul>
<h3>Die weiteren Felder</h3>
<ul>
<li><strong>Voraussichtliches Versanddatum</strong>: erscheint auf der Produktseite, im Warenkorb, im Kundenkonto, auf der Rechnung und in den E-Mails.</li>
<li><strong>Höchstmenge</strong> und <strong>Maximum pro Kunde</strong>: 0 bedeutet unbegrenzt. Die Limits werden serverseitig bei jedem Speichern des Warenkorbs geprüft.</li>
<li><strong>Vorbestellrabatt</strong> in Prozent oder als Betrag: verfügbar in den Modi erzwungen und Zeitfenster, in denen der Zeitraum vorab bekannt ist. Er erzeugt einen Sonderpreis, der mit dem Ende der Regel entfernt wird.</li>
<li><strong>Button-Text</strong> und <strong>Hinweistext</strong> je Sprache, speziell für die Regel.</li>
<li><strong>Countdown</strong> (bis zum Ende oder bis zum Launch) und <strong>Balken der reservierten Einheiten</strong>, der eine Höchstmenge voraussetzt.</li>
</ul>
<h3>Viele Regeln auf einmal</h3>
<p>Die Schaltfläche <em>Massenzuweisung und CSV-Import</em> öffnet zwei Formulare. Das erste legt eine Regel je Produkt an, das zu einer Kategorie, Marke oder einem Lieferanten passt, wobei sich die Kriterien addieren. Das zweite importiert eine CSV mit den Spalten <code>product</code> (ID oder Artikelnummer), <code>combination</code> (optional), <code>mode</code>, <code>release_date</code>, <code>max_qty</code>, <code>max_per_customer</code>, <code>date_start</code>, <code>date_end</code>. Bestehende Regeln werden aktualisiert.</p>
<h2>Was der Kunde sieht</h2>
<p>Bei einem vorbestellbaren Produkt trägt der Warenkorb-Button den gewählten Text, ein Badge erscheint auf den Bildern in Listen und auf der Produktseite, und ein Kasten zeigt den voraussichtlichen Termin, Ihren Hinweis, den Countdown und den Balken der reservierten Einheiten. Der Block aktualisiert sich beim Wechsel der Variante.</p>
<p>Im Warenkorb ist jede betroffene Position mit dem Termin gekennzeichnet. Im Checkout wiederholt die Zustimmungs-Checkbox den Termin. Nach der Bestellung verfolgt der Kunde seine Vorbestellungen unter <em>Mein Konto > Meine Vorbestellungen</em> und kann für wartende Positionen eine Stornierung beantragen.</p>
<h2>Nachverfolgung und Zuteilung</h2>
<p><em>Bestellungen > Vorbestellungen</em> bündelt die Nachverfolgung.</p>
<h3>Dashboard</h3>
<p>Die Kennzahlen zeigen wartende Einheiten, betroffene Bestellungen, reservierten Umsatz inkl. MwSt., bereits zugeteilte Einheiten und Stornierungsanfragen. Die Produkttabelle nennt je Produkt oder Variante die wartenden Einheiten, den PrestaShop-Bestand, die sofort zuteilbaren Einheiten und die beim Lieferanten zu bestellende Menge. Der CSV-Export nutzt dieselben Spalten.</p>
<h3>Einen Wareneingang zuteilen</h3>
<p>Eine Vorbestellung senkt den Bestand bereits bei der Bestellung und drückt ihn unter null. Die physisch für Vorbestellungen verfügbaren Einheiten sind daher: wartende Einheiten + aktueller Bestand. Nach einem Wareneingang bedient die Schaltfläche <em>Zuteilen (älteste zuerst)</em> die Bestellungen nach Bestelldatum, oder <em>Bestellungen wählen</em> öffnet die Zuteilungsmaske mit vorausgewählten, änderbaren Positionen.</p>
<p>Sind alle vorbestellten Positionen einer Bestellung zugeteilt, wechselt die Bestellung in den konfigurierten Status (standardmäßig <em>Vorbestellung: versandbereit</em>) und der Kunde erhält eine E-Mail. Danach bereiten Sie die Bestellung wie gewohnt vor.</p>
<div class=“df-callout note“><p>Die automatische Zuteilung bedient Vorbestellungen ohne manuelle Freigabe, aber nie vor dem angekündigten Termin einer erzwungenen Regel oder einer Regel mit Zeitfenster.</p></div>
<h2>Eine Verzögerung bearbeiten</h2>
<p>Öffnen Sie die Regel, ändern Sie das voraussichtliche Versanddatum und lassen Sie <em>Kunden bei Terminänderung benachrichtigen</em> aktiviert. Die wartenden Vorbestellungen werden aktualisiert und jeder betroffene Kunde erhält eine E-Mail mit dem neuen Termin und einem Link zur Stornierungsanfrage. Die Zahl der benachrichtigten Kunden erscheint nach dem Speichern, der Verlauf der angekündigten Termine steht unter dem Formular.</p>
<p>Stornierungsanfragen landen im Dashboard. <em>Stornierung bestätigen</em> gibt die reservierten Einheiten frei; die Erstattung erfolgt weiterhin über die Bestellseite mit Ihrer Zahlungsart. <em>Vorbestellung behalten</em> setzt die Positionen zurück auf wartend.</p>
<h2>Cron-Aufgabe</h2>
<p>Die Modulkonfiguration zeigt eine URL mit Token. Planen Sie sie bei Ihrem Hoster alle 15 Minuten ein. Sie öffnet und schließt Zeitfenster pünktlich und bedient bei aktiver automatischer Zuteilung die Vorbestellungen, deren Bestand eingetroffen ist.</p>
<h2>Häufige Fragen</h2>
<h3>Zahlt der Kunde den vollen Betrag?</h3>
<p>Ja, in Version 1.0. Eine Anzahlung mit späterer Restzahlung bei Verfügbarkeit ist für Version 1.1 geplant.</p>
<h3>Warum wechselt eine Bestellung zu Vorbestellung: wartet auf Bestand?</h3>
<p>Das Modul setzt diesen Status, sobald die Bestellung bezahlt ist und mindestens eine vorbestellte Position enthält. Der Status ist bezahlt und nicht versandfähig, damit keine unvollständige Bestellung in die Vorbereitung geht.</p>
<h3>Wirkt sich eine Regel auf einer Variante auf die anderen aus?</h3>
<p>PrestaShop verwaltet die Einstellung für Bestellungen ohne Bestand nur auf Produktebene. Das Modul setzt sie deshalb am Produkt und sperrt anschließend im Shop und im Warenkorb die nicht vorrätigen Varianten ohne Regel, damit das ursprüngliche Shopverhalten erhalten bleibt.</p>
<h3>Der Countdown erscheint nicht</h3>
<p>Er erscheint nur, wenn das Enddatum (Modus Zeitfenster) oder das voraussichtliche Versanddatum in der Zukunft liegt und die Option in der Regel aktiviert ist.</p>
<h3>Der Button behält seinen ursprünglichen Text</h3>
<p>Das Modul ersetzt den Text des Warenkorb-Buttons in Standard-Themes. Bei einem stark angepassten Theme wenden Sie sich mit der Produkt-URL an den Support: Der Selektor des Buttons lässt sich anpassen.</p>