Paypal gateway rejection currency not supported in magento - magento

My base currency is Chinese RMB in admin side. I do not want to change base currency and my display currency is also Chinese RMB. My payment method is PayPal standard. When I order through PayPal in front side following error occurs.
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).
Can anybody tell me how to fix it without changing base currency?

This rejection is coming up from PayPal as it does not accept RMB. You need to change to the currency that accepts by PayPal. Look here for currency accepted by PayPal.

Related

INR not supported in paypal magento

I am developing an online shopping site, which sells products using Indian Rupees (INR). When I link this to PayPal with Indian Rupees as the base currency, it redirects back to the shopping cart without taking me to PayPal.
When I use a currency converter and change the value to USD, it shows the error "PayPal gateway has rejected request. Currency is not supported (#10605: Transaction refused because of an invalid argument. See additional error messages for details)". Can you please help me resolve this issue?
I'm not sure that a payed module is the best answer, but it sure was worth the 29 dollars for me:
http://www.magentocommerce.com/magento-connect/paypal-multi-currency.html
I add INR currency on PayPal supported currency codes And it's working.

Magento Paypal checkout with INR currency

I have try all way from this site but still i'm get "PayPal gateway has rejected request. Currency is not supported (#10605: Transaction refused because of an invalid argument. See additional error messages for details)." when base currency is "Indian Rupee" and checkout with paypal.
Without any extension is it posible ? if yes than plz tell me how ?
For paypal checkout You must set base currency which paypal accept. paypal accept five currencies. you need to set base currency "USD" then try it.

Validation error: PayPal IPN response from a different email address

I've used plugins to set up my ticket sales. I'm testing my site in Sandbox mode and I'm receiving this error after going through the Paypal process (which is showing in sandbox mode):
Validation error: PayPal IPN response from a different email address (sarah-facilitator#XXXXX). Order status changed from processing to on-hold.
Paypal created the facilitator email for me and I'm using those details as well as the supplied sandbox API user/password/sig on my website
As I'm in Australia, I've also set up my site to accept USD.
I'm not sure what's happening that I'd get this error.
the PayPal IPN response usually contains a "receiver=" as well as a "business=" paramter.
Depending on the script you're using, there will be a validation of the receiving e-mail address. If it does not match the one configured in your shopping cart / site, some shopping carts will throw this error message.
You can verify the IPN message text through https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_display-ipns-history (first login to the sandbox account under www.sandbox.paypal.com)and see if the receiving / business e-mail address matches the one configured on your site.
Of course, it'd help to extend the logging of your IPN script to contain some meaningful information (e.g. "Receiver e-mail xxxx does not match configured e-mail xxxxx").
Cheers,
Martin

PayPal rejecting payment request and giving currency error in Magento

I know this is a very generic question but my case is different. Please read it completely.
While configuring PayPal with my Indian currency based Magento Store I am getting below error.
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).
I have tried all solutions available at Magento paypal currency error
Base Currency in my store is - Indian Rupee
I have configured all currencies in app/code/core/Mage/Paypal/Model/Config.php
and rest all settings seems to be setup perfectly. But still I am getting above error.
Please suggest where I am making mistake.
It doesn't look like the Indian Rupee is a currency accepted by Paypal. Consult the currency list to see what you can and can't accept
Paypal doesn't support Indian Currency. So you need to convert your base currency to the accepted Currency of Paypal before proceeding to Checkout for Payment via Paypal.
I have used small trick to rid this error. It is not good solution but sometime it is useful.
Go to app\code\core\Mage\Paypal\Model\Express\Checkout.php. Find the public function start and find below code
$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);
With this trick now you will go to paypal without any error. But you have to convert the price from Base Currency to USD.
Note: This solution is only for Paypal Express Users.
Code Taken From: http://chandreshrana.blogspot.in/2016/06/paypal-gateway-has-rejected-request.html

How do I turn off PayPal IPN in Magento?

When people make a successful payment with PAyPal in my Magento webshop it automatically creates an invoice with unique invoice number. For bookkeeping reasons, I have to disable it.
I've been searching for a few weeks now but I still haven't found the solution for this problem. What I know so far is that this is caused by IPN. The problem is I don't know how to turn this off without damaging my shop or paypal payments.
Some more specs:
- Version: Magento 1.6.2.0
- Standard paypal
Files containing IPN:
www/app/code/core/Mage/Paypal/controllers
"Turning it Off" is sort of vague, but there's no configuration setting on the Magento side that will allow you to accept PayPal standard payments using the IPN system but not create invoices. You're looking at writing custom code to do this. Here are some starting points.
PayPal IPN works with a callback URL. That is, once PayPal has processed a payment, it fetches a specific URL from Magento with a specific set of data in the post field. Then, based on this information, appropriate action is taken (an invoice is created, a credit is issued, etc.). So the quickest way to achieve your goal would be to change the IPN URL in your PayPal configuration. This means PayPal is still notifying a URL, but not the Magento URL, and an invoice never gets created.
If that doesn't work or has unacceptable side effects, here's the code points you're interested in. Assuming you're using a standard Magento PayPal setup with an IPN URL configured at
http://yourstore.example.com/paypal/ipn/
Magento will handles this request with the indexAction method in
#File: app/code/core/Mage/Paypal/controllers/IpnController.php
public function indexAction()
{
if (!$this->getRequest()->isPost()) {
return;
}
try {
$data = $this->getRequest()->getPost();
Mage::getModel('paypal/ipn')->processIpnRequest($data, new Varien_Http_Adapter_Curl());
} catch (Exception $e) {
Mage::logException($e);
}
}
The business logic for this method (including your invoice creation) starts in the paypal/ipn model. In a standard system this resolves to the class at
#File: app/code/core/Mage/Paypal/Model/Ipn.php
class Mage_Paypal_Model_Ipn
{
....
}
Trace the code from here to find the method you'll want to rewrite and implement your desired functionality changes (not creating an invoice). Your best bet will be setting up a PayPal developer sandbox account so you can repeatedly hit the URL until you've traced your code to the right spot.
Good luck!
instead of hacking your core Magento files, just turn off IPN within PayPal.
By default, there are three states for PayPal IPN:
On
Off
Disabled
The first option will let you specify an IPN URL within your PayPal Profile, and you'll have access to 'IPN History' under the 'History' tab. All IPN data for your account will be sent to the URL you specified, unless you override it with notify_url / NOTFIFYURL on a per-transaction basis.
The second option will turn IPN off on your account, but you can still use it by setting notify_url / NOTIFYURL on a per-transaction basis. This is what Magento uses.
The third option will stop generating IPN messages for your account, even if your shopping cart (Magento, in this case) specifically asks for IPN messages by sending notify_url / NOTIFYURL. No IPN messages will be delivered whatsoever.
To set IPN to 'Disabled', first set it to 'On' in your PayPal account and provde a URL to an IPN address (though this can be any address, just enter http://www.google.com/ for example).
Once enabled, look for the option stating 'Stop receiving IPN messages (Disable)'. Use this to disable IPN altogether.
Source:-https://lastdropofink.co.uk/tools/magento/magento-paypal-ipn/
If I got you right, you should change Payment Action to Authorization for your paypal payment method. See more info there:
http://www.magentocommerce.com/knowledge-base/entry/setting-up-paypal-for-your-magento-store#1.1
Or, instead of hacking your core Magento files, just turn off IPN within PayPal.
By default, there are three states for PayPal IPN:
On
Off
Disabled
The first option will let you specify an IPN URL within your PayPal Profile, and you'll have access to 'IPN History' under the 'History' tab. All IPN data for your account will be sent to the URL you specified, unless you override it with notify_url / NOTFIFYURL on a per-transaction basis.
The second option will turn IPN off on your account, but you can still use it by setting notify_url / NOTIFYURL on a per-transaction basis. This is what Magento uses.
The third option will stop generating IPN messages for your account, even if your shopping cart (Magento, in this case) specifically asks for IPN messages by sending notify_url / NOTIFYURL. No IPN messages will be delivered whatsoever.
To set IPN to 'Disabled', first set it to 'On' in your PayPal account and provde a URL to an IPN address (though this can be any address, just enter http://www.google.com/ for example).
Once enabled, look for the option stating 'Stop receiving IPN messages (Disable)'. Use this to disable IPN altogether.
What I’ve been really surprised by over the past few weeks is the number of sites that don’t actually have this turned on and it’s just not limited to self-builds even the really expensive Magento builds are missing this out this as a step.
Turning on the PayPal Instant Payment Notification (IPN for short) is an excellent idea as means that when a customer pays for an item using PayPal then the payment information will be updated on the Magento order details in the administration panel.
It only takes a few moments to enable and I’ll show you how to enable IPN for your Magento site below. This will mean that when you receive an order via PayPal Express for example, you can actually see the transaction details in Magento and if you’re using eSellerPro and have the eSellerPro Connector enabled for sales order processing, your order & payment details will match up automatically.
Setting this up won’t take more than a few moments and here are 6 simple steps to do this:
1 Login to PayPal
2 Hover on “Profile” and select “My Selling Preferences”
3 Halfway down the page, click on “Update” next to “Instant payment notifications”
Now enter the following details:
Notification URL – This is simply http://your-magento-store.com/paypal/ipn/ replacing “your-magento-store.com” with your website address. <= This is the part that normally trips everyone up as they’re not sure what to enter here.
IPN messages – Set this to “Receive IPN messages (Enabled)”
Press Save
That’s it job done.
To test whether IPN is working or not is dead simple, just make a test transaction through your website (you will need a secondary PayPal account for this) and a few minutes later, check on the order in your Magento admin panel has been updated with the PayPal transaction details.
To help you, I have put to images below, the image on the left has no IPN details, the image on the right does.

Resources