diff --git a/vendor/magento/module-sales/Model/Order.php b/vendor/magento/module-sales/Model/Order.php
index f272a4638a1..afec030075a 100644
--- a/vendor/magento/module-sales/Model/Order.php
+++ b/vendor/magento/module-sales/Model/Order.php
@@ -5,6 +5,7 @@
  */
 namespace Magento\Sales\Model;

+use Magento\Catalog\Model\Product\Type;
 use Magento\Config\Model\Config\Source\Nooptreq;
 use Magento\Directory\Model\Currency;
 use Magento\Directory\Model\RegionFactory;
@@ -197,7 +198,8 @@ class Order extends AbstractModel implements EntityInterface, OrderInterface

     /**
      * @var \Magento\Catalog\Api\ProductRepositoryInterface
-     * @deprecated 100.1.0 Remove unused dependency.
+     * @deprecated 100.1.0
+     * @see Remove unused dependency
      */
     protected $productRepository;

@@ -831,7 +833,10 @@ class Order extends AbstractModel implements EntityInterface, OrderInterface
         }

         foreach ($this->getAllItems() as $item) {
-            if ($item->getQtyToShip() > 0 && !$item->getIsVirtual() &&
+            $qtyToShip = !$item->getParentItem() || $item->getParentItem()->getProductType() !== Type::TYPE_BUNDLE ?
+                $item->getQtyToShip() : $item->getSimpleQtyToShip();
+
+            if ($qtyToShip > 0 && !$item->getIsVirtual() &&
                 !$item->getLockedDoShip() && !$this->isRefunded($item)) {
                 return true;
             }
