diff --git a/vendor/magento/module-catalog-customer-graph-ql/Model/Resolver/PriceTiers.php b/vendor/magento/module-catalog-customer-graph-ql/Model/Resolver/PriceTiers.php
index efba88ff154..3c6cc849081 100644
--- a/vendor/magento/module-catalog-customer-graph-ql/Model/Resolver/PriceTiers.php
+++ b/vendor/magento/module-catalog-customer-graph-ql/Model/Resolver/PriceTiers.php
@@ -19,7 +19,6 @@ use Magento\Framework\GraphQl\Query\Resolver\ValueFactory;
 use Magento\Framework\GraphQl\Query\ResolverInterface;
 use Magento\Framework\GraphQl\Schema\Type\ResolveInfo;
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Store\Api\Data\StoreInterface;

 /**
  * Resolver for price_tiers
@@ -125,6 +124,10 @@ class PriceTiers implements ResolverInterface
             return [];
         }

+        if (!$product->getTierPrices()) {
+            return [];
+        }
+
         $productId = (int)$product->getId();
         $this->tiers->addProductFilter($productId);

@@ -152,7 +155,8 @@ class PriceTiers implements ResolverInterface
         array $tierPrices,
         string $currencyCode
     ): array {
-
+        $this->formatAndFilterTierPrices = [];
+        $this->tierPricesQty = [];
         foreach ($tierPrices as $key => $tierPrice) {
             $tierPrice->setValue($this->priceCurrency->convertAndRound($tierPrice->getValue()));
             $this->formatTierPrices($productPrice, $currencyCode, $tierPrice);
diff --git a/vendor/magento/module-quote/Model/Product/Plugin/UpdateQuote.php b/vendor/magento/module-quote/Model/Product/Plugin/UpdateQuote.php
new file mode 100644
index 00000000000..3d41a5398c8
--- /dev/null
+++ b/vendor/magento/module-quote/Model/Product/Plugin/UpdateQuote.php
@@ -0,0 +1,103 @@
+<?php
+/**
+ * Copyright Â© Magento, Inc. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Product\Plugin;
+
+use Magento\Catalog\Api\Data\TierPriceInterface;
+use Magento\Catalog\Api\TierPriceStorageInterface;
+use Magento\Quote\Model\ResourceModel\Quote;
+use Magento\Catalog\Model\ProductIdLocatorInterface;
+
+/**
+ * UpdateQuote Plugin Class
+ */
+class UpdateQuote
+{
+
+    /**
+     * Quote Resource
+     *
+     * @var Quote
+     */
+    private $resource;
+
+    /**
+     * Product ID locator.
+     *
+     * @var ProductIdLocatorInterface
+     */
+    private $productIdLocator;
+
+    /**
+     * Construct Method for updateQuote Plugin
+     *
+     * @param Quote $resource
+     * @param ProductIdLocatorInterface $productIdLocator
+     */
+    public function __construct(
+        \Magento\Quote\Model\ResourceModel\Quote $resource,
+        \Magento\Catalog\Model\ProductIdLocatorInterface $productIdLocator
+    ) {
+        $this->resource = $resource;
+        $this->productIdLocator = $productIdLocator;
+    }
+
+    /**
+     * Update the quote trigger_recollect column is 1 when product price is changed through API.
+     *
+     * @param TierPriceStorageInterface $subject
+     * @param $result
+     * @param $prices
+     * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
+    public function afterUpdate(
+        TierPriceStorageInterface $subject,
+                                  $result,
+                                  $prices
+    ): array {
+        $this->resource->markQuotesRecollect($this->retrieveAffectedProductIdsForPrices($prices));
+        return $result;
+
+    }
+
+    /**
+     * Retrieve affected product IDs for prices.
+     *
+     * @param TierPriceInterface[] $prices
+     * @return array
+     */
+    private function retrieveAffectedProductIdsForPrices(array $prices): array
+    {
+        $skus = array_unique(
+            array_map(
+                function (TierPriceInterface $price) {
+                    return $price->getSku();
+                },
+                $prices
+            )
+        );
+
+        return $this->retrieveAffectedIds($skus);
+    }
+
+    /**
+     * Retrieve affected product IDs.
+     *
+     * @param array $skus
+     * @return array
+     */
+    private function retrieveAffectedIds(array $skus): array
+    {
+        $affectedIds = [];
+
+        foreach ($this->productIdLocator->retrieveProductIdsBySkus($skus) as $productId) {
+            $affectedIds[] = array_keys($productId);
+        }
+
+        return array_unique(array_merge([], ...$affectedIds));
+    }
+}
\ No newline at end of file
diff --git a/vendor/magento/module-quote/etc/di.xml b/vendor/magento/module-quote/etc/di.xml
index f66001e7789..c71bf64c878 100644
--- a/vendor/magento/module-quote/etc/di.xml
+++ b/vendor/magento/module-quote/etc/di.xml
@@ -98,6 +98,9 @@
         <plugin name="clean_quote_items_after_product_delete" type="Magento\Quote\Model\Product\Plugin\RemoveQuoteItems"/>
         <plugin name="update_quote_items_after_product_save" type="Magento\Quote\Model\Product\Plugin\UpdateQuoteItems"/>
     </type>
+    <type name="Magento\Catalog\Api\TierPriceStorageInterface">
+        <plugin name="update_quote_items_after_tier_prices_update" type="Magento\Quote\Model\Product\Plugin\UpdateQuote"/>
+    </type>
     <type name="Magento\Catalog\Model\Product\Action">
         <plugin name="quoteProductMassChange" type="Magento\Quote\Model\Product\Plugin\MarkQuotesRecollectMassDisabled"/>
     </type>
