Bitte beachte, dass sich diese Dokumentation auf die neuste Version dieser Erweiterung bezieht. Wenn eine ältere Version eingesetzt wird, kann diese abweichen. Die jeweils passende Dokumentation befindet sich im Dokumentation-Verzeichnis der Erweiterung.
Versandkosten
Mit Hilfe der Versandkosten-Datensätze bist Du in der Lage, Versandkosten gestaffelt nach Gewicht und nach Lieferland abweichend zu definieren.

Die Logik hierbei ist wie folgt:
- Jedes Produkt hat ein Feld in dem sein Gewicht angegeben werden kann und eine Checkbox mit der angegeben werden kann, ob ein Produkt sperrig ist (d.h. eventuell zusätzliche Kosten bei der Lieferung anfallen).
- Im Warenkorb werden nun die Gewichte aller enthaltenen Produkte summiert - dies ist das Gesamt-Gewicht.
- Wenn mindestens ein Produkt im Warenkorb als sperrig markiert ist, wird die sperrig-Pauschale zu den Versandkosten addiert.
- Nun können mehrere Versandkosten-Datensätze erstellt werden, bspw. bis 2 kg -> 2 €, bis 10 Kg -> 10 €, etc.
- Im Checkout wird nun der Versandkosten-Datensatz ermittelt, welcher dem Gewicht des Warenkorb am nächsten kommt (nächst höher!).

- Wenn Du in einem speziellen Lieferland abweichende Versandkosten benötigst, erstellst Du einfach ein Overlay mit der Länderkennung. Die Werte in deinem Haupt-Datensatz werden nur verwendet, wenn das Lieferland noch nicht feststeht. Bspw. im Warenkorb, bevor der Besucher seine Adressdaten eingegeben hat.
- Wenn im Checkout ein Lieferland angegeben wird, zu dem es kein Overlay gibt, ist eine Bestellung nicht möglich und es wird eine entsprechende Meldung angezeigt.
- Wenn Du die Auswahl der verfügbaren Länder eingrenzen möchtest, kannst Du die Einstellung
themes.configuration.extension.modules.country.limitToIsoCodes = de,at,nl,ch,frverwenden, welche mit der EXT:modules bereitgestellt wird.

Bedingungen für Versandkosten
Ab Version 5.15.0 kannst Du Bedingungen für Versandkosten festlegen. Hierfür benötigst Du das Add-on EXT:shop_shipping.

Das bedeutet, dass Du für jeden Versandkostendatensatz mehrere Bedingungen definieren können, wie zum Beispiel:
| Feld | Operator | Beschreibung |
|---|---|---|
| basket.price | ><>=<= |
Der Warenkorb hat einen Gesamtpreis von |
| frontendUser.hasGroup | Der angemeldete Benutzer ist einer Benutzergruppe zugeordnet | |
| basketOrder.vatId | Die Bestellung hat eine Umsatzsteuer-Identifikationsnummer | |
| basket.quantity | ><>=<= |
Der Warenkorb enthält insgesamt Produkte* |
| basket.bukly | truefalse |
Der Warenkorb enthält ein sperriges Produkt* |
| frontendUser.isLoggedIn | truefalse |
Der angemeldete Benutzer ist einer Benutzergruppe zugeordnet* |
Dies ist noch nicht implementiert – frage es gerne an!
Die Bedingungen können mit einem AND verknüpft werden. Dies bedeutet, dass alle Bedingungen erfüllt sein müssen, damit der Versandkostendatensatz angewendet wird. Alternativ können sie mit einem OR verknüpft werden. Dies bedeutet, dass mindestens eine Bedingung erfüllt sein muss, damit der Versandkostendatensatz angewendet wird.
Die Logik bei bedingten Versandkosten ist, dass diese zuerst verarbeitet werden. Wenn die Bedingungen für einen Versandkosten-Datensatz erfüllt sind, wird dieser angewendet. Andernfalls gelten die regulären Versandkosten.
Um Deine Konfiguration zu testen, kannst Du unser Testing-Tool im Backend verwenden.

Wenn Du einen Überblick über die Versandkosten benötigst, um zu prüfen, ob Du jedes erforderliche Land abdeckst, kannst Du unsere Versandkostenmatrix im Backend verwenden.

