Some payment gateway do not allow zero(0) amount transactions as generic. Supposed if the total amount is $0, Free Checkout option will activated to continue the checkout process and if the total amount is more than $0, the regular payment methods will be appear to choose.
But when cart total more then zero eg: in the cart some of them are zero(0) price items and some of them are price valued items, then available Payment methods will appear to continue the checkout.
Thanks for @saifulbd