VibeFox DPD Pickup for OpenCart — Hilfe
Anforderungen
OpenCart: 3.0.x (getestet mit 3.0.5.0) oder 4.0.2 und neuer (getestet mit 4.1.0.3).
PHP: 8.0 oder neuer.
DPD-Baltic-Zugangsdaten (Litauen, Lettland, Estland): die Liste der Abholpunkte stammt vom DPD-Baltic-Webservice. Sie benötigen den API-Benutzernamen und das Passwort, die DPD an seine Geschäftskunden vergibt. Fragen Sie Ihren DPD-Kundenbetreuer oder den DPD-Kundenservice Ihres Landes. Ein DPD-Baltic-Konto listet die Abholpunkte von Litauen, Lettland und Estland.
DPD Slowakei: die öffentliche Paketshop-Suche von DPD Slowakei benötigt keine Zugangsdaten.
Gewichtsklasse: Produktgewichte werden in kg umgerechnet. Ihr Shop braucht eine Gewichtsklasse mit der Einheit kg unter System > Localisation > Weight Classes (OpenCart hat standardmäßig eine).
VibeFox-Lizenzschlüssel: wird auf vibefox.net gekauft. Ein Schlüssel funktioniert auf einer Domain.
Installation
Der Download ist eine ZIP-Datei mit den Paketen für beide OpenCart-Versionen. Entpacken Sie sie auf Ihrem Computer. Sie enthält README.txt, das Paket für OpenCart 3 vfd_dpd_pickup-oc3-(version).ocmod.zip und das Paket für OpenCart 4 vfd_dpd_pickup.ocmod.zip. Installieren Sie nur das Paket für Ihre OpenCart-Version. Der Lizenzschlüssel ist für beide Versionen gleich.
OpenCart 3
1. Gehen Sie im Admin-Bereich zu Extensions > Installer, klicken Sie auf Upload und wählen Sie die Datei vfd_dpd_pickup-oc3-(version).ocmod.zip. Die Erweiterung fügt keine OCMOD-Modifikationen hinzu, daher müssen Sie Extensions > Modifications nicht aktualisieren. Statt des Installers können Sie auch den Inhalt des Ordners upload dieses Pakets in das Stammverzeichnis Ihres Shops kopieren.
2. Gehen Sie zu Extensions > Extensions und wählen Sie den Erweiterungstyp Shipping. Suchen Sie VibeFox DPD Pickup und klicken Sie auf Install (die grüne +-Schaltfläche).
3. Klicken Sie auf Edit (die Stift-Schaltfläche), um die Einstellungsseite zu öffnen.
4. Fügen Sie Ihren VibeFox-Lizenzschlüssel in License key im Lizenzblock oben auf der Seite Edit ein und klicken Sie auf Activate (siehe Lizenzschlüssel).
5. Wählen Sie Ihre DPD-API. Für DPD Litauen, Lettland oder Estland geben Sie den API-Benutzernamen und das Passwort ein. Prüfen Sie die Preise je Land, aktivieren Sie Enable/Disable und klicken Sie auf Save. Klicken Sie danach auf Refresh pickup points, um die Verbindung zu prüfen (siehe Konfiguration).
OpenCart 4
1. Gehen Sie im Admin-Bereich zu Extensions > Installer, klicken Sie auf Upload und wählen Sie die Datei vfd_dpd_pickup.ocmod.zip. Benennen Sie die Datei nicht um: OpenCart 4 entnimmt den Erweiterungscode dem Dateinamen, und ein umbenanntes Paket funktioniert nicht.
2. Das Paket erscheint auf derselben Seite in der Liste der installierten Erweiterungen. Klicken Sie daneben auf Install (die grüne +-Schaltfläche).
3. Gehen Sie zu Extensions > Extensions und wählen Sie den Erweiterungstyp Shipping. Suchen Sie VibeFox DPD Pickup, klicken Sie auf Install (die grüne +-Schaltfläche) und danach auf Edit (die Stift-Schaltfläche).
4. Geben Sie den Lizenzschlüssel und die Einstellungen wie in den Schritten 4 und 5 für OpenCart 3 ein. Die Einstellungsseite und ihre Felder sind in beiden Versionen gleich.
Nach der Installation ist die Methode ausgeschaltet, bis Sie Enable/Disable aktivieren und speichern. Wenn Sie die Erweiterung nach einer Deinstallation erneut installieren, werden die aufbewahrten Einstellungen wieder verwendet.
Konfiguration
Alle Einstellungen befinden sich auf der Seite der Erweiterung: Extensions > Extensions > Shipping > VibeFox DPD Pickup > Edit. Die Abschnitte sind links aufgeführt. Eine Schaltfläche Save speichert die gesamte Seite ohne Neuladen. Jedes Speichern leert außerdem die zwischengespeicherten Listen der Abholpunkte. Nur Admin-Benutzer mit der Berechtigung zum Ändern dieser Erweiterung können die Einstellungen speichern, die Abholpunkte aktualisieren oder das Protokoll leeren.
Warnungen oben auf der Seite zeigen an, wenn der Benutzername oder das Passwort der DPD-Baltic-API leer ist oder keine Preise eingetragen sind (in beiden Fällen wird die Methode an der Kasse nicht angezeigt), und wenn der Shop keine Gewichtsklasse mit der Einheit kg hat (Produktgewichte werden dann anhand ihres Einheitennamens gelesen, unbekannte Einheiten als kg). Einige Werte verhindern das Speichern, und dann wird nichts gespeichert: ein leeres Name oder ein Name mit mehr als 64 Zeichen, eine Sort order, die keine ganze Zahl ist, und ein Min weight (kg), der größer als das Max weight (kg) ist. Ein Wert, der keine Zahl oder eine negative Zahl ist, wird in einem Betrags- oder Gewichtsfeld nicht gespeichert: das Feld wird leer und eine Warnung nennt es, während die übrigen Einstellungen gespeichert werden. Zeilen von Country prices, die nicht im Format CC:PRICE stehen, werden in einer Warnung aufgelistet und ignoriert.
Allgemein
Die Methode wird in der Geozone angeboten, die unter Availability festgelegt ist (alle Zonen, falls keine festgelegt ist), oder mit Ignore shipping zones in den dort gewählten Ländern.
Enable/Disable: zeigt DPD Pickup an der Kasse an oder blendet es aus. Standard: aus.
Name: der Name der Versandart, den der Kunde an der Kasse sieht. Standard: DPD Pickup Point. Pflichtfeld, höchstens 64 Zeichen.
Tax class: die Steuerklasse für den Versandpreis oder None (Standard) für keine Steuer.
Sort order: die Position der Methode in der Liste der Versandarten. Eine ganze Zahl.
Liste der DPD-Abholpunkte
Abholpunkte werden von DPD geladen und zwischengespeichert (siehe So funktioniert es an der Kasse).
DPD API: das DPD-Unternehmen, bei dem Ihr Konto besteht. Baltic-Konten verwenden den Webservice ihres eigenen Landes.
API username (Baltic): Ihr Benutzername für den DPD-Baltic-Webservice. Für DPD Slowakei nicht nötig. Wenn Sie ihn leeren, wird auch das gespeicherte Passwort gelöscht.
API password (Baltic): Ihr Passwort für den DPD-Baltic-Webservice. Für DPD Slowakei nicht nötig. Nach dem Speichern bleibt das Feld leer und zeigt Saved - leave empty to keep it. Geben Sie nur dann einen neuen Wert ein, wenn Sie ihn ändern möchten.
Pickup points: die Schaltfläche Refresh pickup points leert den Cache und lädt die Abholpunkte jetzt von DPD: Litauen, Lettland und Estland für die Baltic-API sowie eine Testsuche in Bratislava für DPD Slowakei. Sie zeigt die Anzahl der Abholpunkte oder den Fehler je Land an. Speichern Sie zuerst die Einstellungen.
Preise
Die Versandpreise sind je Land fest, in der Standardwährung Ihres Shops, ohne Steuern. DPD-Preise werden nicht von der API abgefragt.
Country prices: eine Zeile je Land: CC:Preis, zum Beispiel EE:3.50. Ein Dezimalkomma wird akzeptiert. Standard: SK:3.50, LT:4.00, LV:4.00, EE:4.00.
Fallback cost: der Preis für Länder, die nicht in Country prices stehen. Standard: 5.00. Lassen Sie das Feld leer, um die Methode nur in den aufgelisteten Ländern anzubieten.
Calculation type: Per order (Standard) berechnet den Preis einmal. Per item (price x quantity) multipliziert ihn mit der Anzahl der Artikel im Warenkorb.
Free shipping from: der Versand ist kostenlos, wenn die Zwischensumme der Bestellung (nach Rabatten, vor Steuern) diesen Betrag erreicht. Lassen Sie das Feld leer, um es zu deaktivieren.
Verfügbarkeit
Die Methode wird auch ausgeblendet, wenn DPD keine Abholpunkte für die Adresse des Kunden liefert oder die DPD-API nicht erreichbar ist, weil eine Bestellung ohne Abholpunkt nicht zugestellt werden kann.
Min weight (kg): das minimale Warenkorbgewicht. Produktgewichte werden aus ihrer Gewichtsklasse umgerechnet. Leer oder 0 bedeutet keine Begrenzung.
Max weight (kg): schwerere Warenkörbe sehen die Methode nicht. Standard: 31.5. Leer oder 0 bedeutet keine Begrenzung. Prüfen Sie die Paketgrenzen der DPD-Pickup-Punkte und Paketstationen in Ihrem Land.
Minimum subtotal: zeigt die Methode nur an, wenn die Zwischensumme der Bestellung (nach Rabatten, vor Steuern) mindestens diesen Betrag erreicht. Lassen Sie das Feld leer, um sie immer anzuzeigen.
Geo zone: bietet die Methode nur für Adressen in dieser Geozone an. All zones (Standard) bedeutet keine Begrenzung. Geozonen werden unter System > Localisation > Geo Zones verwaltet. Wird nicht mit Ignore shipping zones verwendet.
Ignore shipping zones: wenn aktiviert, wird die Geozone nicht geprüft, und die Methode wird in den unten genannten Ländern angeboten. Wenn deaktiviert (Standard), wird nur die oben genannte Geozone verwendet.
Countries: die Zielländer für diesen Modus. Lassen Sie das Feld leer, um alle Länder zu erlauben. Wird nur mit Ignore shipping zones verwendet.
Auswahl des Abholpunkts
City order: zeigt zuerst die großen Städte (Tallinn, Riga, Vilnius, Bratislava und andere). Standardmäßig aktiviert.
City list width: die CSS-Breite der Stadtliste, zum Beispiel 100% oder 300px. Standard: 100%.
Pickup point list width: die CSS-Breite der Liste der Abholpunkte, zum Beispiel 100% oder 400px. Standard: 100%.
Erweitert
Debug log: schreibt API-Anfragen und Kassenschritte in storage/logs/vfd_dpd_debug.log.php (bei OpenCart 4 in system/storage/logs/vfd_dpd_debug.log.php). Die Datei kann nicht über das Web gelesen werden. API-Fehler werden immer protokolliert, auch wenn diese Option aus ist. Zugangsdaten werden nie protokolliert. Wenn die Datei 5 MB erreicht, wird sie nach vfd_dpd_debug.old.log.php verschoben und ein neues Protokoll begonnen.
Log: zeigt die Größe und die neuesten Einträge des Debug-Protokolls. Klicken Sie auf Clear log, um es zu leeren.
Remove data on uninstall: wenn aktiviert, löscht die Deinstallation der Erweiterung ihre Einstellungen, das Protokoll und die Auswahl nicht abgeschlossener Kassenvorgänge. Der in Bestellungen gespeicherte Abholpunkt bleibt immer erhalten.
Import / Export
Export: klicken Sie auf Download JSON, um die Einstellungen als JSON-Datei zu speichern. Das API-Passwort wird nicht exportiert.
Import: fügen Sie zuvor exportiertes JSON ein und klicken Sie auf Import, um die Einstellungen wiederherzustellen, zum Beispiel in einem anderen Shop. Die Werte werden wie bei einem normalen Speichern geprüft. Das gespeicherte API-Passwort bleibt erhalten.
So funktioniert es an der Kasse
Wenn OpenCart die Versandarten anzeigt, fragt es die Erweiterung nach dem Preis von DPD Pickup. Ist eine Geo zone festgelegt (und ist Ignore shipping zones aus) und liegt die Adresse außerhalb, wird die Methode nicht angeboten. Nur Produkte mit Requires Shipping auf Yes zählen: andere Produkte fügen kein Gewicht hinzu und sind nicht in der Zwischensumme enthalten. Die Erweiterung prüft die Länder (mit Ignore shipping zones), das Warenkorbgewicht und die minimale Zwischensumme, übernimmt den Preis für das Land (oder die Ersatzkosten) und wendet den kostenlosen Versand an, wenn die Zwischensumme hoch genug ist. Die Zwischensumme ist der Preis der versandpflichtigen Produkte nach Abzug des Gutscheinrabatts und vor Steuern.
Danach lädt sie die DPD-Abholpunkte für die Adresse. Liefert DPD keine, ist es nicht erreichbar oder fehlen die Baltic-Zugangsdaten, wird die Methode ausgeblendet. Bei DPD Slowakei wird die Methode angezeigt, solange Stadt oder Postleitzahl noch fehlen, und die Punkte erscheinen, sobald die Adresse vollständig ist. Der Preis wird in der Standardwährung berechnet und dem Kunden in seiner Währung mit der Steuer der gewählten Tax class angezeigt.
Eine Liste der Abholpunkte wird bis zu 24 Stunden zwischengespeichert, eine leere Liste bis zu 1 Stunde, jedoch nicht länger als die Cache-Lebensdauer von OpenCart (standardmäßig 1 Stunde). Ein fehlgeschlagener Abruf wird 5 Minuten gemerkt, sodass ein DPD-Ausfall die Kasse nie verlangsamt. Das API-Zeitlimit beträgt 15 Sekunden.
Die Erweiterung fragt keine DPD-Preise ab, erstellt keine DPD-Sendungen, druckt keine Etiketten, erstellt keine Manifeste, bestellt keine Kurierabholungen, verfolgt keine Pakete und zeigt keine Karte an. Unterstützt werden nur der DPD-Baltic-Webservice und die Paketshop-Suche von DPD Slowakei.
Abholpunkte
Wenn der Kunde DPD Pickup auswählt, erscheinen unter der Methode eine Stadtliste und eine Liste der Abholpunkte. Die Stadt der Kundenadresse ist vorausgewählt. Die Auswahl wird gespeichert, sobald der Kunde sie trifft. Bei DPD Slowakei sieht der Kunde Enter your city and postcode to see the DPD pickup points nearby., bis die Adresse vollständig ist, danach die Punkte in der Nähe. Hat DPD keine Punkte für die Adresse, sieht der Kunde No DPD pickup points are available for this address right now. Please check the address or choose another shipping method.
Ein Abholpunkt ist erforderlich. Ohne ihn kann der Kunde nicht fortfahren und sieht Please select a DPD pickup point. Klickt der Kunde auf Continue, prüft der Server, ob der Punkt zur DPD-Liste für die Adresse des Kunden gehört. Eine gefälschte oder veraltete Auswahl wird mit The selected DPD pickup point is not available for this address. Please choose another one. abgelehnt. Kann die DPD-Liste in diesem Moment nicht geladen werden, wird der bereits gewählte Punkt akzeptiert, und die Bestellung zeigt seine ID statt des Namens.
Bei OpenCart 4 klickt der Kunde im Versandart-Block der Kassenseite auf Choose und wählt im Fenster Shipping method options DPD Pickup aus. Die Stadtliste und die Liste der Abholpunkte erscheinen in diesem Fenster unter der Methode und funktionieren wie oben beschrieben. Die Schaltfläche Continue des Fensters geht ohne Abholpunkt nicht weiter, mit denselben Meldungen.
Der gewählte Punkt wird der Versandart der Bestellung hinzugefügt, zum Beispiel DPD Pickup Point: name, street, postcode city mit dem Standardtitel oder My title - DPD pickup point: name, street, postcode city mit Ihrem eigenen Titel (höchstens 128 Zeichen). So erscheint er in der Bestellung im Admin-Bereich, im Bestellverlauf des Kunden, in den Bestell-E-Mails und auf der Rechnung. Der in der Bestellung gespeicherte Name stammt von DPD, nicht vom Browser.
Bei OpenCart 4 kann der Text der Versandart bis zu 255 Zeichen lang sein. OpenCart 4 führt für die Kasse eine Bestellung und aktualisiert sie jedes Mal, wenn der Kunde erneut bestätigt. Der Abholpunkt der Bestellung wird dabei mit aktualisiert.
Auf der Bestellseite im Admin-Bereich (Sales > Orders) zeigt das Feld DPD pickup point über dem Verlauf den Namen des Punkts, seine ID und sein Land. Klicken Sie auf Edit, wählen Sie eine Stadt und einen anderen Punkt und klicken Sie auf Save. Der Punkt wird mit der DPD-Liste für die Bestelladresse geprüft, und das Feld zeigt Pickup point updated. oder Pickup point not found for the order address. Der Text der Versandart in der Bestellung wird aktualisiert, und dem Bestellverlauf wird eine Notiz hinzugefügt (nicht an den Kunden gesendet) mit dem alten Punkt, dem neuen Punkt und dem Admin-Benutzer. Zum Ändern des Punkts ist die Berechtigung zum Ändern von Bestellungen nötig, nicht der Zugriff auf die Einstellungen der Erweiterung. Bei DPD Slowakei braucht die Bestellung eine Versandstadt und Postleitzahl, sonst zeigt das Feld Add the shipping city and postcode to change the pickup point. Eine Bestellung ohne Punkt zeigt No pickup point was selected for this order., und das Debug-Protokoll enthält dafür einen Fehler. Das Feld und Edit funktionieren auch, nachdem die Erweiterung ausgeschaltet wurde.
Lizenzschlüssel
Die Erweiterung arbeitet mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock License — VibeFox DPD Pickup ist der erste Block auf Extensions > Extensions > Shipping > VibeFox DPD Pickup > Edit, oberhalb der Einstellungen. Fügen Sie den Schlüssel in License key ein und klicken Sie auf Activate. Danach zeigt der Block den maskierten Schlüssel, den Status (zum Beispiel das Datum, bis zu dem die Lizenz aktiv ist, und Ihre Domain) sowie die Schaltflächen Check now, um den Status erneut zu prüfen, Change key, um einen anderen Schlüssel einzugeben, und Remove key, um den Schlüssel aus diesem Shop zu entfernen. Darunter stehen die Zeile Product: opencart-shipping-dpd-pickup und der Link Manage licenses and domains in your account, der zu Ihrem vibefox.net-Konto führt. Nur Admin-Benutzer mit der Berechtigung Modify für die Erweiterung können den Schlüssel ändern. Die Texte des Blocks folgen der Admin-Sprache (Englisch und Russisch sind enthalten).
Wird der Schlüssel nicht akzeptiert, nennt der Block den Grund, zum Beispiel Key not found, This key belongs to another product, Domain limit reached oder License expired on mit einem Datum. Nachdem sich die Shop-Adresse geändert hat oder nachdem Sie in Ihrem Konto einen Domain-Platz freigegeben haben, klicken Sie auf Check now. Ist der Lizenzserver nicht erreichbar, arbeitet die Erweiterung mit dem zuletzt bekannten Status weiter.
Ein Schlüssel funktioniert auf einer Domain: der Shop-Adresse aus der OpenCart-Konfiguration. Das Entfernen des Schlüssels aus dem Shop gibt seinen Domain-Platz nicht frei. Geben Sie den Platz in Ihrem vibefox.net-Konto frei.
Ohne einen aktiven Schlüssel wird die Versandart DPD Pickup Kunden an der Kasse nicht angezeigt, und es wird kein Preis berechnet. Ein Admin-Benutzer, der im Admin-Bereich im selben Browser angemeldet ist, sieht die Methode im Shop weiterhin, markiert mit (unlicensed — visible to admins only), damit Sie die Erweiterung einrichten und testen können, bevor Sie einen Schlüssel kaufen. Bei OpenCart 4 gibt es diese Vorschau nicht: Der Shop sieht die Admin-Anmeldung nicht, daher wird die Methode ohne aktiven Schlüssel für alle ausgeblendet. Nachdem Sie die Seite Edit einmal geöffnet haben, erscheint ein Hinweis auf dem Dashboard des Admin-Bereichs. Schließen Sie ihn mit ×, um ihn 7 Tage lang auszublenden. Bestehende Bestellungen sind nicht betroffen.
Läuft eine Lizenz ab, arbeitet die Erweiterung weiter, aber Updates und Support benötigen eine Verlängerung. Der Status wird automatisch erneut geprüft, wenn Sie das Dashboard des Admin-Bereichs oder die Seite Edit öffnen: einmal am Tag in den ersten 14 Tagen nach der Eingabe des Schlüssels, danach einmal pro Woche. Ein Cron-Job ist nicht nötig. Beim Deinstallieren der Erweiterung werden der Lizenzschlüssel und der Lizenzstatus immer entfernt.
Fehlerbehebung
DPD Pickup erscheint nicht an der Kasse: prüfen Sie, ob die Lizenz aktiv ist und Enable/Disable eingeschaltet ist. Prüfen Sie Geo zone (oder Ignore shipping zones und Countries), die Gewichts- und Zwischensummen-Grenzen und ob das Land einen Preis (oder Ersatzkosten) hat. Prüfen Sie die Warnungen oben auf der Seite der Erweiterung und klicken Sie auf Refresh pickup points. Prüfen Sie, ob die Produkte Requires Shipping auf Yes gesetzt haben.
Ein Fehler nach Refresh pickup points: das Ergebnis zeigt den DPD-Fehler je Land. Zum Beispiel bedeutet "Login failed", dass DPD die Baltic-Zugangsdaten abgelehnt hat, sodass kein Abholpunkt geladen werden kann. Prüfen Sie API-Benutzernamen und Passwort bei DPD.
DPD Slowakei zeigt keine Punkte: die Punkte erscheinen, sobald der Kunde Stadt und Postleitzahl eingegeben hat. DPD listet nur Punkte im Umkreis von 50 km um diese Adresse.
Ursache finden: aktivieren Sie das Debug log, laden Sie die Kasse neu und sehen Sie sich das Feld Log auf der Seite der Erweiterung an. API-Fehler werden immer protokolliert. API-Benutzernamen und Passwörter werden nie in das Protokoll geschrieben.
Abholpunkte wirken nach einer Änderung veraltet: klicken Sie auf der Seite der Erweiterung auf Save oder Refresh pickup points. Beide leeren die zwischengespeicherten Listen.
Die Seite zeigt "Warning: You do not have permission to modify VibeFox DPD Pickup!": Ihre Admin-Benutzergruppe darf die Einstellungen möglicherweise nur ansehen. Geben Sie der Gruppe die Berechtigung zum Ändern für extension/shipping/vfd_dpd_pickup (OpenCart 3) oder extension/vfd_dpd_pickup/shipping/vfd_dpd_pickup (OpenCart 4) unter System > Users > User Groups.
Für Entwickler: der Suchradius für DPD Slowakei kann von einer anderen Erweiterung mit dem OpenCart-Ereignis vfd_dpd_pickup/sk_search_radius geändert werden.
Deinstallation
Gehen Sie zu Extensions > Extensions, wählen Sie den Typ Shipping und klicken Sie neben VibeFox DPD Pickup auf Uninstall (die rote −-Schaltfläche). Der Lizenzschlüssel und der Lizenzstatus dieser Erweiterung werden immer entfernt. OpenCart setzt immer Enable/Disable, Sort order, Tax class und Geo zone zurück. Die Erweiterung entfernt immer ihre Ereignisse und die zwischengespeicherten Listen der Abholpunkte. Ist Remove data on uninstall aktiviert, werden außerdem die übrigen Einstellungen, das Debug-Protokoll und die Auswahl nicht abgeschlossener Kassenvorgänge gelöscht. Ist es deaktiviert, bleiben die Einstellungen erhalten und werden bei einer erneuten Installation wieder verwendet. Der in Bestellungen gespeicherte Abholpunkt wird nie gelöscht, und bestehende Bestellungen behalten ihre Versandart und Kosten.
Um bei OpenCart 4 auch die Dateien der Erweiterung zu entfernen, gehen Sie nach der Deinstallation zu Extensions > Installer und klicken Sie in der Liste der installierten Erweiterungen neben VibeFox DPD Pickup auf Uninstall (die orangefarbene −-Schaltfläche) und danach auf Delete (die rote Mülltonnen-Schaltfläche), um das hochgeladene Paket zu entfernen.
DPD ist eine Marke ihres jeweiligen Inhabers. Diese Erweiterung ist nicht mit DPD verbunden und wird nicht von DPD unterstützt.
