diff --git a/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php b/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php
index 4a928c26a26631c10021587756478b93ad13da00..7c96473f82d7cc4441f6a7b95a5d5973acd68746 100644
--- a/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php
+++ b/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php
@@ -7,6 +7,7 @@
 namespace QUI\ERP\Order\Controls;
 
 use QUI;
+use QUI\ERP\Order\AbstractOrder;
 use QUI\Locale;
 use ReflectionClass;
 
@@ -48,11 +49,15 @@ public function getIcon(): string
     /**
      * Return the current order
      *
-     * @return QUI\ERP\Order\AbstractOrder
+     * @return AbstractOrder|null
      */
-    public function getOrder(): QUI\ERP\Order\AbstractOrder
+    public function getOrder(): ?QUI\ERP\Order\AbstractOrder
     {
-        return $this->getAttribute('Order');
+        if ($this->getAttribute('Order') instanceof QUI\ERP\Order\AbstractOrder) {
+            return $this->getAttribute('Order');
+        }
+
+        return null;
     }
 
     /**
diff --git a/src/QUI/ERP/Order/Controls/Order/Order.php b/src/QUI/ERP/Order/Controls/Order/Order.php
index 512d35544c9d7a16fd4abe6233b9b8deab7048b2..8a4a47179a7edf9cdbacc9921a82464d6e8f79c8 100644
--- a/src/QUI/ERP/Order/Controls/Order/Order.php
+++ b/src/QUI/ERP/Order/Controls/Order/Order.php
@@ -21,7 +21,7 @@ class Order extends QUI\Control
     /**
      * @var null|QUI\ERP\Order\AbstractOrder
      */
-    protected QUI\ERP\Order\AbstractOrder|null $Order = null;
+    protected QUI\ERP\Order\AbstractOrder | null $Order = null;
 
     /**
      * Order constructor.
@@ -83,16 +83,12 @@ public function getBody(): string
             if ($Order->hasInvoice()) {
                 $Invoice = $Order->getInvoice();
             }
-
-            if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) {
-                $View->setAttribute('downloadLink', false);
-            }
         } catch (QUI\Exception $Exception) {
             QUI\System\Log::writeDebugException($Exception);
+        }
 
-            if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) {
-                $View->setAttribute('downloadLink', false);
-            }
+        if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) {
+            $View->setAttribute('downloadLink', false);
         }
 
         switch ($this->getAttribute('template')) {
diff --git a/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php b/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php
index 52f058fd13d6d3fe4a63f62630ddbe5ce97e5411..0a269e9ef17f211ca91cf00b687b3664a8b9c777 100644
--- a/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php
+++ b/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php
@@ -254,7 +254,9 @@ public function forceSave(): void
         $Order->setData('orderedWithCosts', 1);
         $Order->setData('orderedWithCostsPayment', $Payment->getId());
 
-        $Order->save();
+        if (method_exists($Order, 'save')) {
+            $Order->save();
+        }
     }
 
     /**
diff --git a/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php b/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php
index e62706a8d089396163ca83963226de4cafa9cf8d..7b4c1713195d6278a5d200628d379c5593fee550 100644
--- a/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php
+++ b/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php
@@ -64,14 +64,7 @@ public function getBody(): string
         }
 
         if (!$Address) {
-            try {
-                /* @var $User User */
-                $Address = $User->getStandardAddress();
-            } catch (QUI\Exception) {
-                // user has no address
-                // create a new standard address
-                $Address = $User->addAddress();
-            }
+            $Address = $User->getStandardAddress();
         }
 
         try {
@@ -83,10 +76,6 @@ public function getBody(): string
 
 
         $isUserB2B = function () use ($User) {
-            if (!$User) {
-                return '';
-            }
-
             if ($User->getAttribute('quiqqer.erp.isNettoUser') === QUI\ERP\Utils\User::IS_NETTO_USER) {
                 return ' selected="selected"';
             }