Is there a function to get all available payment methods in magento ? YES
app/code/core/Mage/Payment/Model/Config.php
public function getActiveMethods($store=null) { $methods = array(); $config = Mage::getStoreConfig('payment', $store); foreach ($config as $code => $methodConfig) { if (Mage::getStoreConfigFlag('payment/'.$code.'/active', $store)) { if (array_key_exists('model', $methodConfig)) { $methodModel = Mage::getModel($methodConfig['model']); if ($methodModel && $methodModel->getConfigData('active', $store)) { $methods[$code] = $this->_getMethod($code, $methodConfig); } } } } return $methods; }