diff --git a/vendor/magento/module-quote-graph-ql/Model/Resolver/MergeCarts.php b/vendor/magento/module-quote-graph-ql/Model/Resolver/MergeCarts.php
index d77d19d..8f4b1be 100644
--- a/vendor/magento/module-quote-graph-ql/Model/Resolver/MergeCarts.php
+++ b/vendor/magento/module-quote-graph-ql/Model/Resolver/MergeCarts.php
@@ -60,21 +60,25 @@ class MergeCarts implements ResolverInterface
         if (false === $context->getExtensionAttributes()->getIsCustomer()) {
             throw new GraphQlAuthorizationException(__('The current customer isn\'t authorized.'));
         }
 
         $guestMaskedCartId = $args['source_cart_id'];
         $customerMaskedCartId = $args['destination_cart_id'];
 
         $currentUserId = $context->getUserId();
         $storeId = (int)$context->getExtensionAttributes()->getStore()->getId();
         // passing customerId as null enforces source cart should always be a guestcart
-        $guestCart = $this->getCartForUser->execute($guestMaskedCartId, null, $storeId);
-        $customerCart = $this->getCartForUser->execute($customerMaskedCartId, $currentUserId, $storeId);
-        $customerCart->merge($guestCart);
-        $guestCart->setIsActive(false);
+        try {
+            $guestCart = $this->getCartForUser->execute($guestMaskedCartId, null, $storeId);
+            $customerCart = $this->getCartForUser->execute($customerMaskedCartId, $currentUserId, $storeId);
+            $customerCart->merge($guestCart);
+            $guestCart->setIsActive(false);
+            $this->cartRepository->save($guestCart);
+        } catch (\Exception $exception) {
+            $customerCart = $this->getCartForUser->execute($customerMaskedCartId, $currentUserId, $storeId);
+        }
         $this->cartRepository->save($customerCart);
-        $this->cartRepository->save($guestCart);
         return [
             'model' => $customerCart,
         ];
     }
 }
