diff --git a/src/QUI/ERP/Order/Basket/Basket.php b/src/QUI/ERP/Order/Basket/Basket.php
index 8a50fad7f73d455dd44951813e70f83912edc342..cf1adc3f7b2578788665b32438f9eaefd6d0b9fc 100644
--- a/src/QUI/ERP/Order/Basket/Basket.php
+++ b/src/QUI/ERP/Order/Basket/Basket.php
@@ -78,6 +78,14 @@ public function __construct(bool|int $basketId, QUI\Interfaces\Users\User $User
         $this->List->setUser($User);
         $this->FrontendMessages = new QUI\ERP\Comments();
 
+        if (is_bool($basketId)) {
+            try {
+                $Basket = Handler::getInstance()->getBasketFromUser(QUI::getUserBySession());
+                $basketId = $Basket->getId();
+            } catch (QUI\Exception) {
+            }
+        }
+
         try {
             $data = Handler::getInstance()->getBasketData($basketId, $User);
         } catch (QUI\Exception $Exception) {
@@ -220,6 +228,10 @@ public function save(): void
             return;
         }
 
+        if (!$this->User) {
+            return;
+        }
+
         // save only product ids with custom fields, we need not more
         $result = [];
         $products = $this->List->getProducts();