magento: получить список всех доступных способов оплаты

Как я могу получить список способов оплаты с подробной информацией, такой как код, название, метод и? Возможно ли получить доступный способ оплаты в магазине с API? Мне нужен список всех доступных способов оплаты в магазине magento.

3 ответа

Здесь Вы можете получить все доступные способы оплаты в Magento.

Если по какой-либо причине вам необходимо получить список всех способов оплаты в Magento, вы можете легко это сделать с помощью класса конфигурации оплаты (app/code/core/Mage/Payment/Model/Config.php).

Чтобы получить список всех платежей, активных и неактивных:

  • $allAvailablePaymentMethods = Mage::getModel('payment/config')->getAllMethods();

Чтобы получить список всех активных способов оплаты:

  • $allActivePaymentMethods = Mage::getModel('payment/config')->getActiveMethods();

Чтобы получить список со всеми кредитными картами, которые поддерживает Magento:

  • $allCcTypes = Mage::getModel('payment/config')->getCcTypes();

Получить активные способы оплаты

$payments = Mage::getSingleton('payment/config')->getActiveMethods();
$methods = array(array('value'=>'','label'=>Mage::helper('adminhtml')->__('–Please Select–')));

foreach ($payments as $paymentCode=>$paymentModel) {
    $paymentTitle = Mage::getStoreConfig('payment/'.$paymentCode.'/title');
    $methods[$paymentCode] = array(
        'label'   => $paymentTitle,
        'value' => $paymentCode,
    );
}
return $methods;

Да, вы можете получить способ оплаты с помощью API. вот ваше решение

$client = new SoapClient('http://magentohost/api/soap/?wsdl');

// If somestuff requires api authentification,
// then get a session token
$session = $client->login('apiUser', 'apiKey');

$result = $client->call($session, 'cart_payment.list', 'quoteId');
var_dump($result);

Вы можете использовать также этот помощник:

$methods = Mage::helper('payment)->getStoreMethods($store = null, $quote = null)

Таким образом, вы можете проверить для одного магазина и для цитаты, если вам нужно.

Другие вопросы по тегам