2013-11-10 2 views
3

Я знаю, что это очень общий вопрос, но мой случай отличается. Пожалуйста, прочитайте его полностью.PayPal отклоняет запрос платежа и дает ошибку валюты в Magento

При настройке PayPal с моим магазином Magento в индийской валюте я становлюсь ниже ошибки.

PayPal gateway has rejected request. Currency is not supported (#10605: Transaction refused because of an invalid argument. See additional error messages for details). Internal Error (#10001: Transaction failed due to internal error). 

Я пытался все решения, доступные в Magento paypal currency error

Базовой валюты в моем магазине - Индийская рупия

Я настроил все валюты в приложения/код/​​ядро ​​/ Mage/Paypal/модель /Config.php и все остальные настройки, похоже, настроены отлично. Но все же я становлюсь выше ошибки.

Пожалуйста, сообщите, где я делаю ошибку.

+1

Решена ли ваша проблема? – Rathinam

ответ

2

Это не похоже, что индийская рупия - это валюта, принятая Paypal. Проконсультируйтесь с currency list, чтобы узнать, что вы можете и не можете принять.

+0

Не могли бы вы объяснить кратко? – Rathinam

+0

Я не уверен, что есть что объяснить. PayPal не принимает индийскую рупию – Machavity

0

Paypal не поддерживает индийскую валюту. Поэтому вам необходимо конвертировать базовую валюту в принятую валюту Paypal, прежде чем переходить к оплате через Paypal.

+2

Можете ли вы указать, какой файл я должен изменить, чтобы он принял индийскую валюту –

+0

@ManojChaurasia: вы нашли какое-либо решение? – Rathinam

0

Я использовал небольшой трюк, чтобы избавиться от этой ошибки. Это нехорошее решение, но когда-нибудь это полезно.

Перейти к приложению \ code \ core \ Mage \ Paypal \ Model \ Express \ Checkout.php. Найти начало общественной функции и найти ниже код

$this->_api->setAmount($this->_quote->getBaseGrandTotal()) 
      ->setCurrencyCode($this->_quote->getBaseCurrencyCode()) 
      ->setInvNum($this->_quote->getReservedOrderId()) 
      ->setReturnUrl($returnUrl) 
      ->setCancelUrl($cancelUrl) 
      ->setSolutionType($solutionType) 
      ->setPaymentAction($this->_config->paymentAction); 

Just replace the below code 

$this->_api->setAmount($this->_quote->getBaseGrandTotal()) 
      ->setCurrencyCode('USD') 
      ->setInvNum($this->_quote->getReservedOrderId()) 
      ->setReturnUrl($returnUrl) 
      ->setCancelUrl($cancelUrl) 
      ->setSolutionType($solutionType) 
      ->setPaymentAction($this->_config->paymentAction); 

С этим трюком вы сейчас пойдете на PayPal без ошибок. Но вам нужно конвертировать цену из базовой валюты в доллары США.

Примечание: Это решение предназначено только для пользователей Paypal Express.

Код взято с: http://chandreshrana.blogspot.in/2016/06/paypal-gateway-has-rejected-request.html

+1

этот работает, но дисплей цены, например, если мой продукт Price Rs.70 означает, он отображается как $ 70 на моей платежной странице PayPal. как решить эту проблему? – Rathinam

Смежные вопросы