# Versandkostenberechnung je Artikel + Aufschlag

**URL:** <https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549>\
**Category:** Allgemein\
**Created:** [5. März 2018 um 12:48 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549 "2018-03-05T12:48:31Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![PeterBlaumeier](https://avatars.discourse-cdn.com/v4/letter/p/0ea827/32.png) [@PeterBlaumeier](https://forum.shopware.com/u/PeterBlaumeier)\
**Post date:** [5. März 2018 um 12:48 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/1 "2018-03-05T12:48:31Z")

</div>

Hallo,

ich komme leider nicht weiter, vielleicht habt mir mir eine Lösung.

Ich möchte je Artikel Versandkosten hinterlegen, gelöst über ein Freitextfeld&nbsp;attr10 und&nbsp;**_SUM(at.attr10\*b.quantity)_**. Klappt, auch wenn ein Artikel im Warenkorb ist, der bei attr10 „0 Euro“ hinterlegt hat.

Jetzt sollen aber die Versandkosten nicht immer erneut voll berechnet werden, sondern nur um Betrag x erhört werden, je mehr Artikel im Warenkorb liegen.

Z.B.

Artikel 1 mit 10 Euro Versandkosten, je Artikel mehr, Erhöhung um 2 Euro mehr und nur für den Artikel.

-\> 5 x den selben&nbsp;Artikel im Warenkorb: 1x 10 Euro + 4x 2 Euro, also 18 Euro Versand.

**_SUM(at.attr10+(b.quantity\*2))_**&nbsp;…so würde das klappen, jedoch will ich Artikel ausschließen, die bei attr10 „0 Euro“ drin haben. So wird für jeden Artikel 2 Euro addiert.

---

<div class="post-metadata">

**Author:** ![enerSpace](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/enerspace/32/13552_2.png) [@enerSpace](https://forum.shopware.com/u/enerSpace)\
**Post date:** [5. März 2018 um 14:47 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/2 "2018-03-05T14:47:35Z")

</div>

Hallo @PeterBlaumeier‍,

ich kann dir nicht genau sagen, ob das so möglich ist. Aber ich denke das es möglich ist. Schau dir doch dazu einfach mal die folgende Seite von Shopware an:&nbsp;[https://community.shopware.com/\_detail\_1933.html](https://community.shopware.com/_detail_1933.html)&nbsp;mit der Anleitung kannst du komplexe Versandbedingungen umsetzen.

Aus deinem Beispiel geht leider nicht hervor, was passiert, wenn du unterschiedliche Artikel im Warenkorb hast, wo gleiche&nbsp;Versandbedingungen zutreffen? Ich denke, dass ihr ganz genau planen müsst, was in welcher Kombination möglich sind und wie die Versandbedingungen dann zutreffen müssen.

VG

![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/bb8958d17f9f7c07e111287f43ec676d699d0799.png)  
enerSpace Webhosting  
Tel.: +49 511 - 219 568 76 | Web:&nbsp;[https://www.enerspace.de](https://www.enerspace.de/)

---

<div class="post-metadata">

**Author:** ![PeterBlaumeier](https://avatars.discourse-cdn.com/v4/letter/p/0ea827/32.png) [@PeterBlaumeier](https://forum.shopware.com/u/PeterBlaumeier)\
**Post date:** [5. März 2018 um 20:07 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/3 "2018-03-05T20:07:16Z")

</div>

Wenn ich unterschiedliche Artikel drin habe wird für jeden Artikel 2 Euro addiert bzw. wenn andere Artikel ohne attr10 drin sind, greift **_b.quantity\*2_**.  
Die Seite kenne ich, da hab ich schon ein paar Sachen raus gezogen, aber die ultimative Lösung habe ich dafür nicht gefunden.

Nochmal zusammengefasst:

Grundsätzlich hat alles 0 Euro.

Bei manchen Artikeln soll 10 Euro Versandkosten berechnet werden und hier soll zusätzlich je Artikel mehr, bei dem 10 Euro Versand fällig wird, nur 2 Euro addiert werden.

&nbsp;

---

<div class="post-metadata">

**Author:** ![enerSpace](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/enerspace/32/13552_2.png) [@enerSpace](https://forum.shopware.com/u/enerSpace)\
**Post date:** [6. März 2018 um 11:24 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/4 "2018-03-06T11:24:00Z")

</div>

Hallo @[PeterBlaumeier](https://forum.shopware.com/profile/25077/PeterBlaumeier),

dafür werden zwei Versandregeln benötigt. Ich werde im laufe des Tages was zusammenbauen und das Resultat hier veröffentlichen.

VG

![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/bb8958d17f9f7c07e111287f43ec676d699d0799.png)  
enerSpace Webhosting  
Tel.: +49 511 - 219 568 76 | Web:&nbsp;[https://www.enerspace.de](https://www.enerspace.de/)

---

<div class="post-metadata">

**Author:** ![enerSpace](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/enerspace/32/13552_2.png) [@enerSpace](https://forum.shopware.com/u/enerSpace)\
**Post date:** [6. März 2018 um 19:46 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/5 "2018-03-06T19:46:58Z")

</div>

Hallo @PeterBlaumeier‍,

ich hatte dir ja versprochen, dass ich mich heute nochmal dazu melde. Meine Variante lässt sich garantiert noch verfeinern, aber Sie funktioniert!

Folgende Konfigurationen musst du vornehmen:

**1. Einstellungen-\>Grundeinstellungen-\>Storefront-\>Versandkostenmodul**

Hier erweiterst du die alte Zeile:

```
MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd

```

In:

```
MAX(a.topseller) as has_topseller, MAX(at.attr3) as has_comment, MAX(b.esdarticle) as has_esd, MAX(at.attr4="1") AS shipping_surcharge

```

**2. Einstellungen-\>Freitextfeld-Verwaltung**

Hier fügst du z.B. wie unter 1. angegeben, das Feld attr4 hinzu. In etwa so wie hier:

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/c/c67072110ee4fb7ce240a9b84169d4baa8c2b5c2.png)

Jetzt haben wir die Änderungen durchgeführt, bei denen hinterher die Versandart je attr4 = 1 ausgewählt wird.

_Info: attr4 kann natürlich auch bei dir anders heißen oder auch anders angelegt sein._

**3. Einstellungen-\>Versand Kosten**

Hier gehst du erst einmal in deine kostenlose Standard-Versandart rein. Hier klickst du auf&nbsp;den tab: „Erweiterte Einstellungen“ und gibst bei der Bedingung folgendes ein:

```
!shipping_surcharge

```

Damit geben wir an, dass diese Versandart nur dann ausgewählt wird, wenn kein Artikel im Warenkorb ist, der Versandgebühren hat oder auch attr4 = 1.

**4.&nbsp;Einstellungen-\>Versand Kosten**

Als nächstes legen wir eine Ausweichversandart an, die immer dann zutrifft, falls die Standardversandart nicht ausgewählt werden kann. Wichtig ist hierbei, dass unter: „Versandkosten-Berechnung nach:“ -\> „Eigene Berechnung“ ausgewählt und der Faktor auf 100% gestellt wurde:

 ![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/d/de6b0a7d1cecccb1cc7abafab8d6878d66a96119.png)

Als nächstes wechseln wir wieder in den Tab „Erweiterte Einstellungen“ und fügen die folgenden Regeln hinzu:

Eigene Bedingung:

```
shipping_surcharge

```

Eigene Berechnung:

```
8+(SUM(IF(at.attr4="1",((b.quantity)*2),0)))

```

Nun sind wir soweit durch. Jetzt kannst du in jedem Artikel bei dem du Versandkosten berechnen möchtest einfach das Häkchen stzen:

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/4/4593b90943d04341b55f6c7688711c91a624467b.png)

Falls du weitere Unterstützung benötigst, sag mir einfach bescheid.

VG

![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/bb8958d17f9f7c07e111287f43ec676d699d0799.png)  
enerSpace Webhosting  
Tel.: +49 511 - 219 568 76 | Web:&nbsp;[https://www.enerspace.de](https://www.enerspace.de/)

---

<div class="post-metadata">

**Author:** ![Rea](https://avatars.discourse-cdn.com/v4/letter/r/edb3f5/32.png) [@Rea](https://forum.shopware.com/u/Rea)\
**Post date:** [3. September 2018 um 21:21 UTC](https://forum.shopware.com/t/versandkostenberechnung-je-artikel-aufschlag/51549/6 "2018-09-03T21:21:12Z")

</div>

Hallo

Danke für die obige Variante! Sie funktioniert, jedoch würde ich es gerne erweitern jedoch schaffe ich es nicht den richtige Eigene Berechnung zu schreiben.

- Berücksichtigung Gewicht: Berechnung des Aufschlags pro Paket bis 30kg (ab 31 bis 60 ist der Aufschlag verdoppelt usw)
- Drei weitere Attribute/Freitextfelder sollten auch noch berücksichtig werden.
- 2 weitere Aufschläge (14.- / 30.- / 50.-)

Aktuell:  
14+(SUM(IF(at.attr6=“1”,((b.quantity)\*0),0)))

Jedes Attribut ist ein Transporteur (DPD attr6, Post attr7, Post Abend attr10, Post Samstag attr11)

&nbsp;

Wie kann ich das lösen?

Bin dankbar für jede Hilfe

Viele Grüsse

Andrea
