Я использую Magento CE 1.9.1.0
У меня есть один веб-сайт Magento и базовая валюта INR.
И у меня есть 2 магазина, в которых самый первый магазин для внутренних клиентов (клиенты из Индии), второй магазин для международных клиентов (все кузнецы, кроме индийских клиентов). Это переключение магазина, я делаю это в index.php на основе страны-клиента (получение страны-клиента по IP-адресу клиента).
Я только что настроил PayPal Payment Gateway в моем магазине Magento.
Прежде чем перейти к моему вопросу, я хочу поделиться несколькими вещами о Paypal PG, этот платежный шлюз предназначен только для международных клиентов, а PayPal не будет работать для валюты INR.
Если я изменю свою базовую валюту в долларах США или за исключением INR, метод оплаты PayPal будет показан внутри моих Способов оплаты, если базовая валюта INR, метод оплаты PayPal не отображается на странице проверки.
Пожалуйста, проверьте эти изображения
Я хочу иметь базовую валюту как INR, потому что все мои продукты загружаются с INR и из моего ERP, я не могу это изменить.
Но я хочу, чтобы этот способ оплаты PayPal был одним из моих вариантов оплаты в моем магазине для международных клиентов.
Все еще ищут решения...
Есть идеи?
Извините ребята,
редактирование основных файлов - плохая практика, но для меня эти изменения меня заставляют.
Здесь я нашел решение,
Go to app/code/core/Mage/Paypal/Model/Config.php
Измените этот массив
protected $_supportedCurrencyCodes = array('AUD', 'CAD', 'CZK', 'DKK', 'EUR', 'HKD', 'HUF', 'ILS', 'JPY', 'MXN','NOK', 'NZD', 'PLN', 'GBP', 'SGD', 'SEK', 'CHF', 'USD', 'TWD', 'THB');
к
protected $_supportedCurrencyCodes = array('AUD', 'CAD', 'CZK', 'DKK', 'EUR', 'HKD', 'HUF', 'ILS', 'JPY', 'MXN','NOK', 'NZD', 'PLN', 'GBP', 'SGD', 'SEK', 'CHF', 'USD', 'TWD', 'THB','INR');
Другой трюк:
Go to app/code/core/Mage/Paypal/Model/Standard.php
Затем измените эту функцию
public function canUseForCurrency($currencyCode)
{
return $this->getConfig()->isCurrencyCodeSupported($currencyCode);
}
к
public function canUseForCurrency($currencyCode)
{
if($currencyCode == 'INR')
{
$currencyCode = 'USD';
}
return $this->getConfig()->isCurrencyCodeSupported($currencyCode);
}
Если вы хотите, вы можете переопределить это.
вы можете установить базовую валюту под кодом, указанным в вашем индексном файле, и ваша валюта магазина будет изменена.
Mage::app()->getStore()->setCurrentCurrencyCode(‘USD);