VibeFox iMile for PrestaShop — Hilfe
Anforderungen
PrestaShop: 8.0 bis 9.x.
PHP: 8.0 oder neuer. Das Modul lässt sich auf älteren PHP-Versionen nicht installieren.
iMile-Tarif: die Preise, die Sie mit dem Vertrieb von iMile vereinbart haben. Sie tragen sie in der Preistabelle in der Standardwährung Ihres Shops ein.
iMile-API-Konto (nur für die Live-Schätzung): die Live-Schätzung nutzt die iMile-OpenAPI „Estimated order delivery costs“. Sie benötigen eine Customer ID und einen Secret key (den API-Schlüssel, den iMile zusammen mit Ihrer Customer ID ausstellt). Für einen Testkunden registrieren Sie sich im iMile-Entwicklerportal (developer.imile.com). Produktionsschlüssel erhalten Sie von Ihrem iMile-Kundenbetreuer. Wenn Sie nur die Preistabelle verwenden, benötigen Sie keine API-Schlüssel.
VibeFox-Lizenzschlüssel: erhältlich auf vibefox.net. Ein Schlüssel funktioniert auf einer Domain.
Installation
1. Im Back Office gehen Sie zu Modules > Module Manager und klicken auf Upload a module. Wählen Sie die ZIP-Datei des Moduls.
2. Wenn der Upload abgeschlossen ist, klicken Sie auf Configure, oder Sie suchen später VibeFox iMile in der Modulliste und klicken dort auf Configure.
3. Geben Sie Ihren VibeFox-Lizenzschlüssel in License key im Lizenzblock oben auf der Seite Configure ein und klicken Sie auf Activate (siehe Lizenzschlüssel).
4. Tragen Sie Ihre iMile-Preise in der Price table ein. Optional füllen Sie den Abschnitt Live rates (API) aus und aktivieren Live estimate (siehe Konfiguration). Klicken Sie auf Save.
Bei der Installation legt das Modul den Versanddienstleister iMile mit dem Lieferzeittext Courier delivery an. Der Versanddienstleister wird allen Zonen und allen Kundengruppen zugewiesen. Zonen, Kundengruppen, Lieferzeit, Logo und Größenbeschränkungen können Sie unter Shipping > Carriers ändern. Setzen Sie dort keine Preise: Der Preis kommt immer aus dem Modul.
Konfiguration
Alle Einstellungen befinden sich auf der Modulseite: Modules > Module Manager > VibeFox iMile > Configure. Sie gelten für jede Zone des Versanddienstleisters. Jeder Abschnitt hat eine eigene Schaltfläche Save, die die gesamte Seite speichert. Jedes Speichern löscht außerdem die zwischengespeicherten iMile-Schätzungen und Zugriffstoken.
Wenn Live estimate aktiv ist, aber nicht funktionieren kann, erscheinen Warnungen über den Einstellungen: Die Customer ID oder der Secret key fehlt, die Versandstadt oder das Versandland fehlt (oder das Land ist kein iMile-Markt), es gibt keine Wechselkurse, oder die Preistabelle ist leer und es gibt keinen Preis für andere Länder. Eine Warnung erscheint außerdem, wenn das Modul die Gewichtseinheit des Shops nicht kennt: Produktgewichte werden dann als Kilogramm behandelt. Stellen Sie die Einheit daher unter International > Localization (Local units) ein. Beim Speichern prüft das Modul, ob Method title gültig ist (höchstens 64 Zeichen), ob die Betrags- und Gewichtsfelder Zahlen ab 0 sind, ob Minimum weight nicht größer als Maximum weight ist und ob die Steuerregel existiert. Andernfalls zeigt es einen Fehler an und speichert nichts.
Allgemein
Enable iMile: schaltet den Versanddienstleister ein oder aus. Dies ist derselbe Schalter wie der Status des Versanddienstleisters unter Shipping > Carriers.
Method title: der Name des Versanddienstleisters, der im Warenkorb und auf der Kasse angezeigt wird. Standard: iMile. Pflichtfeld.
Live-Tarife (API) (optional)
Wenn iMile keine Schätzung liefert (keine Schlüssel, noch keine Stadt eingegeben, Fehler, Timeout, kein Wechselkurs), wird die Preistabelle verwendet.
Live estimate: aktivieren Sie diese Option, um die Versandkosten von iMile zu erhalten. Standard: aus. Solange die Live-Schätzung aus ist, wird während des Bestellvorgangs nichts an iMile gesendet.
Environment: Production (openapi.imile.com) (Standard) oder Test (test-openapi.52imile.cn). Testschlüssel funktionieren nur mit dem Testserver und liefern Testpreise.
Customer ID: der von iMile vergebene Kundencode (customerId), zum Beispiel C2102192601. Wenn Sie ihn leeren, wird auch der gespeicherte Secret key gelöscht.
Secret key: der geheime Schlüssel (API-Schlüssel), den iMile zusammen mit der Customer ID ausstellt. Er signiert die Anfragen. Nach dem Speichern bleibt das Feld leer und zeigt Saved — leave empty to keep it. an. Geben Sie nur dann einen neuen Wert ein, wenn Sie ihn ändern möchten.
Signature: wie die Anfragen signiert werden.
Ship-from country: das Land, aus dem Sie versenden. Standardmäßig ist es das Land Ihres Shops (Shop country). Die Liste enthält nur die Länder, für die das Modul iMile-Ländercodes hat.
Ship-from city: die Stadt, aus der Ihre Pakete versendet werden, geschrieben wie in der iMile-Städteliste (zum Beispiel Dubai, Riyadh). Lassen Sie das Feld leer, um die Shopstadt aus Shop Parameters > Contact > Stores zu verwenden.
Ship-from province: optional, zum Beispiel Dubai oder Riyadh Province.
iMile service: der Auftragstyp, der an iMile gesendet wird: Delivery order (100) (Standard) oder Express order (1100). Express muss für Ihr Konto und Ihr Land aktiviert sein.
Goods category: die Warenart, die an iMile gesendet wird: Normal goods (Standard), Sensitive (cosmetics, liquids...), With battery, Batteries / power banks, Documents oder Parcel.
Exchange rates: iMile schätzt in der Währung des Ziellandes. Tragen Sie pro Währung eine Zeile ein, mit dem Preis von 1 Einheit in der Standardwährung Ihres Shops, zum Beispiel „AED = 0.25“ oder „SAR = 0.24“. Als Dezimaltrennzeichen werden ein Punkt oder ein Komma akzeptiert. Für die Shopwährung selbst ist kein Kurs nötig. Ohne Kurs werden Schätzungen in dieser Währung nicht verwendet, stattdessen wird die Preistabelle genutzt. Derselbe Kurs rechnet den an iMile gemeldeten Warenwert um. Ungültige Zeilen werden beim Speichern entfernt.
Preise (werden verwendet, wenn die Live-Schätzung aus ist, und als Ersatz, wenn iMile keine Schätzung liefert)
Tragen Sie Ihren iMile-Tarif in der Standardwährung des Shops ein, ohne Steuern. Liegt er in AED, SAR oder einer anderen Währung vor, rechnen Sie ihn zuerst um.
Price table: eine Zeile pro Zielland. Klicken Sie auf Add country, um eine Zeile hinzuzufügen, und auf das Papierkorbsymbol, um eine zu entfernen. Wählen Sie * All other countries für eine Zeile, die alle Länder ohne eigene Zeile abdeckt. Jede Zeile hat einen Base price und optionale Gewichtsspalten: XS ≤1 kg, S ≤2 kg, M ≤3 kg, L ≤5 kg und XL >5 kg. Eine leere (oder 0) Gewichtsspalte verwendet den Grundpreis. Ein Grundpreis von 0 bedeutet kostenlosen Versand in dieses Land. Sowohl „9.99“ als auch „9,99“ werden akzeptiert. Zeilen ohne Preis und negative Preise werden beim Speichern entfernt. Pro Land bleibt nur eine Zeile erhalten.
Price for countries not in the table: ein Preis in der Standardwährung des Shops. Er wird verwendet, wenn die Tabelle keine Zeile für das Zielland hat (und keine Zeile *), oder wenn die Zeile für dieses Gewicht keinen Preis hat. Lassen Sie das Feld leer, um den Versanddienstleister in diesem Fall auszublenden.
Price applies: wie der Tabellenpreis berechnet wird.
Dieselbe Wahl gilt für die Live-Schätzung: Pro Bestellung wird ein Paket mit dem gesamten Warenkorb gesendet, pro Artikel wird für jedes unterschiedliche Paket angefragt und mit der Anzahl der Einheiten multipliziert. Hat der Warenkorb mehr als 5 unterschiedliche Pakete, wird die Preistabelle verwendet.
Produktgewichte und -maße werden von Ihren Shopeinheiten in Kilogramm und Zentimeter umgerechnet.
Bedingungen
Minimum weight: blendet den Versanddienstleister aus, wenn der Warenkorb weniger wiegt, in kg. 0 bedeutet keine Grenze.
Maximum weight: blendet den Versanddienstleister aus, wenn der Warenkorb mehr wiegt, in kg. Standard: 30. 0 bedeutet keine Grenze.
Minimum order amount: zeigt den Versanddienstleister nur an, wenn die Zwischensumme des Warenkorbs (nach Rabatten, vor Steuern) diesen Betrag erreicht. Leer lassen, um ihn immer anzuzeigen.
Free shipping from: die Zwischensumme des Warenkorbs (nach Rabatten, vor Steuern), ab der die iMile-Lieferung kostenlos ist. Leer lassen, um nie kostenlosen Versand anzubieten.
Tax: die Steuerregel des Versanddienstleisters oder No tax. Wählen Sie No tax, wenn die Preise in der Tabelle und die iMile-Schätzungen bereits die MwSt. enthalten.
Verfügbarkeit ohne Versandzonen
Ignore shipping zones: bietet iMile für die unten genannten Länder an, unabhängig von der passenden Zone. Beim Speichern wird der Versanddienstleister allen Zonen hinzugefügt, und später angelegte Zonen erhalten ihn ebenfalls. Schalten Sie die Option aus, werden diese hinzugefügten Zonen wieder entfernt, sodass der Versanddienstleister die Zonen zurückerhält, die er vorher hatte.
Countries: die Zielländer für diesen Modus. Leer lassen, um alle aktiven Länder zu verwenden. Dieses Feld wird nur verwendet, wenn Ignore shipping zones aktiv ist.
Erweitert
Debug log: schreibt die Tarifberechnungen in logs/vfd_imle_debug.log.php im Modulordner. Die Datei lässt sich nicht über das Web öffnen. Keine Schlüssel und keine Kundenadressen werden protokolliert. Fehlgeschlagene iMile-Anfragen werden immer protokolliert, auch wenn das Debug-Log aus ist. Schalten Sie das Log aus, wenn Sie fertig sind.
Log: zeigt die Größe und die neuesten Einträge des Debug-Logs. Klicken Sie auf Clear log, um es zu leeren.
Remove data on uninstall: ist die Option aktiv, löscht die Deinstallation des Moduls die iMile-Einstellungen, den Versanddienstleister, die zwischengespeicherten Schätzungen und die Logs. Ist sie aus, bleibt alles für eine erneute Installation erhalten.
Ablauf auf der Kasse
Im Versandschritt fragt PrestaShop das Modul nach dem iMile-Preis. Nur physische Produkte zählen: Virtuelle Produkte erhöhen das Gewicht nicht und sind nicht im Bestellwert enthalten. Das Modul prüft zuerst die Bedingungen: erlaubte Länder (wenn Ignore shipping zones aktiv ist), Warenkorbgewicht und Mindestbestellwert. Gilt kostenloser Versand, beträgt der Preis 0 und es wird keine Anfrage an iMile gesendet.
Bei aktiver Live-Schätzung sendet das Modul an iMile das Versandland, die Provinz und die Stadt, das Zielland, das Bundesland, die Stadt und die Postleitzahl, das Warenkorbgewicht in kg, die Größe in cm³ (aus den Produktmaßen), den Warenwert, den iMile-Service und die Warenkategorie. Die Schätzung wird immer als Vorauszahlung angefragt, sodass Nachnahmegebühren nicht enthalten sind. Eine Live-Schätzung wird erst angefragt, nachdem der Kunde eine Lieferadresse mit Stadt eingegeben hat, und nur, wenn jedes Produkt im Warenkorb ein Gewicht hat. Jede Antwort wird 1 Stunde zwischengespeichert. Eine fehlgeschlagene Anfrage wird 5 Minuten zwischengespeichert. Nach einem Timeout oder einem Serverfehler wird iMile 2 Minuten lang nicht angefragt, nach abgelehnten Schlüsseln 5 Minuten, damit die Kasse bei jeder Aktualisierung nicht auf iMile wartet. Das API-Timeout beträgt 12 Sekunden. Ein abgelaufenes Zugriffstoken wird automatisch erneuert.
Die Schätzung wird mit Ihren Wechselkursen in die Standardwährung des Shops umgerechnet. Liefert iMile keine brauchbare Schätzung (Schlüssel nicht gesetzt, Stadt noch nicht eingegeben, unbekannte Stadt, Fehler, Timeout, kein Wechselkurs), sieht der Kunde keinen Fehler, und es wird der Preis aus der Tabelle verwendet. Hat auch die Tabelle keinen Preis, wird der Versanddienstleister ausgeblendet. Der Grund wird im Log festgehalten. Der Preis wird in Ihrer Standardwährung berechnet und danach in der Warenkorbwährung des Kunden angezeigt.
Wenn Sie den Versanddienstleister unter Shipping > Carriers bearbeiten, nachdem er Bestellungen hat, speichert PrestaShop ihn als neue Version des Versanddienstleisters. Das Modul folgt der neuen Version automatisch.
Das Modul berechnet nur Tarife. Es erstellt keine iMile-Sendungen, druckt keine AWB-Etiketten, beantragt keine Abholungen, verfolgt keine Pakete, gleicht keine Nachnahmebeträge ab und bietet keine Abholstellen oder Paketboxen an. Nutzen Sie für Sendungen das iMile-Portal.
Lizenzschlüssel
Das Modul arbeitet mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock License — VibeFox iMile ist der erste Block unter Modules > Module Manager > VibeFox iMile > Configure, oberhalb der Einstellungen. Geben Sie den Schlüssel in License key ein und klicken Sie auf Activate. Danach zeigt der Block den Schlüssel maskiert, 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: presta-shipping-imile und der Link Manage licenses and domains in your account, der Ihr vibefox.net-Konto öffnet. Nur Mitarbeiter mit der Berechtigung Configure für das Modul können den Schlüssel ändern. Die Texte des Blocks folgen der Sprache des Back Office (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 Shopadresse geändert hat oder nachdem Sie in Ihrem Konto einen Domainplatz freigegeben haben, klicken Sie auf Check now. Ist der Lizenzserver nicht erreichbar, arbeitet das Modul weiter mit dem zuletzt bekannten Status.
Ein Schlüssel funktioniert auf einer Domain: der Domain des Hauptshops, auch bei einem Multistore-Setup. Wenn Sie den Schlüssel aus dem Shop entfernen, wird der Domainplatz nicht frei. Geben Sie den Platz in Ihrem vibefox.net-Konto frei.
Ohne aktiven Schlüssel wird der iMile-Versanddienstleister Kunden auf der Kasse nicht angezeigt, und es wird keine Rate berechnet. Das PrestaShop-Frontend weiß nicht, dass Sie im Back Office angemeldet sind, daher wird der Versanddienstleister auch für Sie ausgeblendet: Sie können das Modul einrichten, bevor Sie einen Schlüssel kaufen, aber nicht im Bestellvorgang testen. Ein Hinweis erscheint unter Modules > Module Manager auf dem Reiter Alerts. Bestehende Bestellungen sind nicht betroffen.
Läuft eine Lizenz ab, arbeitet das Modul weiter, aber Updates und Support erfordern eine Verlängerung. Der Status wird automatisch erneut geprüft, während Sie im Back Office arbeiten: einmal täglich in den ersten 14 Tagen nach der Eingabe des Schlüssels, danach einmal pro Woche. Ein Cron-Job ist nicht nötig. Das Deinstallieren oder Zurücksetzen des Moduls entfernt immer den Lizenzschlüssel und den Lizenzstatus.
Fehlerbehebung
iMile erscheint nicht auf der Kasse: prüfen Sie, ob die Lizenz aktiv ist und Enable iMile eingeschaltet ist. Prüfen Sie unter Shipping > Carriers, ob der Versanddienstleister die Zone des Landes und die Kundengruppe des Kunden abdeckt, oder aktivieren Sie Ignore shipping zones und prüfen Sie Countries. Kontrollieren Sie die Gewichtsgrenzen und Minimum order amount. Prüfen Sie, ob das Land oder * eine Zeile in der Price table hat oder ob Price for countries not in the table gesetzt ist. Produkte können auf der Produktseite außerdem auf bestimmte Versanddienstleister beschränkt sein.
Der Tabellenpreis wird anstelle der iMile-Schätzung angezeigt: aktivieren Sie das Debug log, laden Sie die Kasse neu und sehen Sie im Feld Log auf der Modulseite nach. Häufige Ursachen: Live estimate ist aus, die Schlüssel fehlen, der Kunde hat noch keine Stadt eingegeben, iMile kennt die Schreibweise der Stadt nicht, Produkte haben kein Gewicht, es gibt keinen Wechselkurs für die Zielwährung oder ein API-Fehler. Prüfen Sie auch die Warnungen über den Einstellungen.
„sign is invalid“ im Log: prüfen Sie den Secret key und versuchen Sie dann Signature = SimpleKey.
Schlüssel werden abgelehnt: prüfen Sie Customer ID, Secret key und Environment. Testschlüssel funktionieren nur mit dem Testserver.
Stadtnamen stimmen nicht überein: Stadtnamen müssen mit der iMile-Städteliste übereinstimmen. Entwickler können sie mit dem Hook actionVfdImileLiveRequest zuordnen, Ländercodes mit dem Hook actionVfdImileLiveCountryCode.
Preise sind in der falschen Währung: die Preistabelle ist in der Standardwährung des Shops. Rechnen Sie einen Tarif in AED, SAR oder MXN um, bevor Sie ihn eintragen. Live-Schätzungen werden mit Exchange rates umgerechnet.
Steuer wird beim Versand doppelt berechnet: wenn Ihre Preise die MwSt. bereits enthalten, setzen Sie Tax auf No tax.
Schätzungen wirken nach einer Änderung veraltet: klicken Sie auf der Modulseite auf Save. Dadurch werden die zwischengespeicherten iMile-Schätzungen gelöscht.
Die Seite meldet, dass der iMile-Versanddienstleister nicht gefunden wurde: der Versanddienstleister wurde unter Shipping > Carriers gelöscht. Setzen Sie das Modul unter Modules > Module Manager zurück, um ihn erneut anzulegen.
Deinstallation
Gehen Sie zu Modules > Module Manager, öffnen Sie das Menü neben VibeFox iMile und wählen Sie Uninstall. Der Lizenzschlüssel und der Lizenzstatus werden immer entfernt.Die zwischengespeicherten Schätzungen und Zugriffstoken werden immer entfernt. Ist Remove data on uninstall aktiv, wird der Versanddienstleister gelöscht (Bestellungen behalten ihren Verlauf), und die Einstellungen und das Log werden entfernt. Ist die Option aus, wird der Versanddienstleister nur deaktiviert und alle Einstellungen bleiben erhalten. Die erneute Installation des Moduls stellt den vorherigen Status des Versanddienstleisters wieder her.
iMile ist eine Marke ihres jeweiligen Inhabers. Dieses Modul steht in keiner Verbindung zu iMile und wird von iMile nicht empfohlen.
