I have enabled Bank Transfer payment method on backend by still is not shown on checkout. I flushed the cache and I made sure that the payment method is enabled for the shop. This happened after upgrade to 2.2.6
DISCLAIMER: I don't recommend this as a fix so please DO NOT do this on a PRODUCTION magento website.
I had the same problem on Magento Community v2.2.7 and found that my active payment methods were all being filtered by a method: private function filterList(array $list)
in file vendor/magento/module-vault/Model/PaymentMethodList.php
.
Unfortunately I can't tell you how to fix it "properly", but I was able to hack this file to get them to show up for my POC by changing line 73 in the above file from:
return $methodInstance instanceof VaultPaymentInterface;
TO:
return !($methodInstance instanceof VaultPaymentInterface);
I'm fairly new to Magento and don't understand Vault payments fully in terms of Magento specifics, but to my mind the "Bank Transfer" payment method should not be seen as a vault payment method. Based on the docblock above the method: "Filter vault methods from payments", I believe this is a bug and the condition used in the filtering should be inverted by the Magento dev team.