diff --git a/locale.xml b/locale.xml
index 9e2fc83ba356dbf33fecfcc41a7150df0f3ecbf8..12b2fb5f1dcb2e64405dbdf86a5d8e1931b15605 100644
--- a/locale.xml
+++ b/locale.xml
@@ -571,6 +571,11 @@
             <de><![CDATA[Versendet]]></de>
             <en><![CDATA[Sent]]></en>
         </locale>
+
+        <locale name="shipping.plus">
+            <de><![CDATA[zzgl.]]></de>
+            <en><![CDATA[plus]]></en>
+        </locale>
     </groups>
 
 
diff --git a/src/QUI/ERP/Shipping/Types/ShippingEntry.php b/src/QUI/ERP/Shipping/Types/ShippingEntry.php
index cbd7e8aeed53a1b9885d05c9a32ddbf9c8a927cc..614b8f239bacc9d30c5e485bee57bc4cebfa014a 100644
--- a/src/QUI/ERP/Shipping/Types/ShippingEntry.php
+++ b/src/QUI/ERP/Shipping/Types/ShippingEntry.php
@@ -224,7 +224,32 @@ public function getPriceDisplay(): string
             $Price = new QUI\ERP\Money\Price($price, $DefaultCurrency);
         }
 
-        return '+' . $Price->getDisplayPrice();
+        if (!$price) {
+            return '';
+        }
+
+        $numberAsString = strval($price);
+        $exploded = explode('.', $numberAsString);
+        $numberOfDecimalPlaces = isset($exploded[1]) ? strlen($exploded[1]) : 0;
+
+        $priceStringTitle = '';
+        $priceStringTitle .= QUI::getLocale()->get('quiqqer/shipping', 'shipping.plus');
+        $priceStringTitle .= ' ';
+        $priceStringTitle .= $Price->getDisplayPrice();
+
+        $priceString = $priceStringTitle;
+
+        if ($numberOfDecimalPlaces > 4) {
+            $priceRounded = round($price, 4);
+            $PriceDisplay = new QUI\ERP\Money\Price($priceRounded, $Price->getCurrency());
+
+            $priceString = '';
+            $priceString .= QUI::getLocale()->get('quiqqer/shipping', 'shipping.plus');
+            $priceString .= ' ~';
+            $priceString .= $PriceDisplay->getDisplayPrice();
+        }
+
+        return '<span title="' . $priceStringTitle . '">' . $priceString . '</span>';
     }
 
     /**