PayPal在Magento中拒绝付款请求并给出货币错误

时间:2013-11-10 21:33:59

标签: magento paypal payment-gateway

我知道这是一个非常通用的问题,但我的情况有所不同。请完整阅读。

使用我的印度货币Magento Store配置PayPal时,我的误差低于此值。

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

提供的所有解决方案

我商店的基础货币是 - 印度卢比

我已经在 app / code / core / Mage / Paypal / Model / Config.php 中配置了所有货币 和休息所有设置似乎完美设置。但我仍然犯了错误。

请建议我犯错的地方。

3 个答案:

答案 0 :(得分:2)

看起来印度卢比不是Paypal接受的货币。请咨询currency list,了解您可以接受和不接受的内容

答案 1 :(得分:0)

Paypal不支持印度货币。因此,您需要将基础货币转换为可接受的Paypal货币,然后才能通过Paypal进行结帐付款。

答案 2 :(得分:0)

我用小技巧来摆脱这个错误。这不是一个好的解决方案,但有时它很有用。

转到app \ code \ core \ Mage \ Paypal \ Model \ Express \ Checkout.php。找到公共函数start并找到下面的代码

$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