public function createAndSave($mageOrderId)
    {
        $order = $this->orderFactory->create()
            ->setOrderId($mageOrderId)
            ->setStoreId($this->config->getStoreViewId())
            ->setShopgateOrderNumber($this->sgOrder->getOrderNumber())
            ->setIsShippingBlocked($this->sgOrder->getIsShippingBlocked())
            ->setIsPaid($this->sgOrder->getIsPaid())
            ->setIsTest($this->sgOrder->getIsTest())
            ->setIsCustomerInvoiceBlocked($this->sgOrder->getIsCustomerInvoiceBlocked());

        try {
            $order->setReceivedData(\Zend_Json_Encoder::encode($this->sgOrder->toArray()));
        } catch (\InvalidArgumentException $exception) {
            $this->sgLogger->error($exception->getMessage());
        }
        $order->save();
    }