diff --git a/vendor/magento/module-checkout/view/frontend/web/js/model/payment-service.js b/vendor/magento/module-checkout/view/frontend/web/js/model/payment-service.js index 36d1d649ecbf6..a0a5cf7e92eee 100644 --- a/vendor/magento/module-checkout/view/frontend/web/js/model/payment-service.js +++ b/vendor/magento/module-checkout/view/frontend/web/js/model/payment-service.js @@ -50,13 +50,18 @@ define([ } filteredMethods = _.without(methods, freeMethod); - if (filteredMethods.length === 1) { selectPaymentMethod(filteredMethods[0]); } else if (quote.paymentMethod()) { methodIsAvailable = methods.some(function (item) { return item.method === quote.paymentMethod().method; }); + + if (!methodIsAvailable && !_.isEmpty(window.checkoutConfig.vault)) { + methodIsAvailable = Object.keys(window.checkoutConfig.payment.vault) + .findIndex((vaultPayment) => vaultPayment === quote.paymentMethod().method) !== -1; + } + //Unset selected payment method if not available if (!methodIsAvailable) { selectPaymentMethod(null);