From 4f551a5e701862783a864d98a0d3f2b646304fba Mon Sep 17 00:00:00 2001 From: Faizan Shaikh Date: Thu, 16 Jun 2022 20:47:18 +0530 Subject: [PATCH] AC-3590::2.4.5 - Graphql does not return braintree payment method when Shipping method is set as Free --- .../Model/Resolver/AvailablePaymentMethods.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/code/Magento/QuoteGraphQl/Model/Resolver/AvailablePaymentMethods.php b/app/code/Magento/QuoteGraphQl/Model/Resolver/AvailablePaymentMethods.php index ff1228b4a2ff9..0db0d6fcacf86 100644 --- a/app/code/Magento/QuoteGraphQl/Model/Resolver/AvailablePaymentMethods.php +++ b/app/code/Magento/QuoteGraphQl/Model/Resolver/AvailablePaymentMethods.php @@ -81,12 +81,13 @@ private function getPaymentMethodsData(CartInterface $cart): array */ if ((int)$grandTotal === 0 && $carrierCode === self::FREE_SHIPPING_METHOD && $paymentMethod->getCode() === self::FREE_PAYMENT_METHOD_CODE) { - $paymentMethodsData[] = [ - 'title' => $paymentMethod->getTitle(), - 'code' => $paymentMethod->getCode(), + return [ + [ + 'title' => $paymentMethod->getTitle(), + 'code' => $paymentMethod->getCode(), + ] ]; - } elseif ((int)$grandTotal >= 0 - && $carrierCode !== self::FREE_SHIPPING_METHOD) { + } elseif ((int)$grandTotal >= 0) { $paymentMethodsData[] = [ 'title' => $paymentMethod->getTitle(), 'code' => $paymentMethod->getCode(),