We’re sorry. This seller doesn’t accept payments in your currency
Solution 1
So I found a way to solve this problem.
Simply log in to the merchant account probably a sandbox account (Example: someone-facilitator@domain).
Then open settings page by clicking on the gear icon at the top right corner of your dashboard.
Now, From left sidebar click on "Selling Tools" and then on "update button" in front of "Block Payments" under the "Getting paid and managing my risk" Section.
Refer to the image attached.
Now In the "Preferences for receiving payments" Section, choose "Yes, accept ...." for the question "Allow payments sent to me in a currency I do not hold:".
Preferences for receiving payments - Screenshot
That's it.
Solution 2
I had the same problem. There's no need to worry about it. It's working totally fine. I called Paypal Customer support and they explained that for an Indian Paypal seller account to receive the money you need to set currency in USD and then only Non-Indian Accounts can make a purchase through it. If you set the currency as INR then only Indian accounts can make payment to you. You created a different account but still, you created it from India only using login credentials so it's still an Indian account. If you want to test then test from an account of someone who's not from India or not living in India. It will work properly fine.
Cheers!
Solution 3
You can receive payments for India in INR & outside India in USD. Refer to this doc from paypal:
Solution 4
I have also got this types of issue and tried to change all the settings as per suggestions but its not gone. After that I changed website used currency USD to INR then re-tried and now it's working. So I'm thinking that integrated payment currency and receiving account country currency must be same.
Well it's solved for me but logically this restriction is wrong. Please do any thing for this issues Paypal Developer Community.
Solution 5
I also encountered this same issue during my WooCommerce store setup using PayPal payment gateway. I own a Indian PayPal account where I want to receive USD from customers outside India as well as local payments in INR.
1) Full KYC verification with PayPal to be done to enable domestic and international payments. If not done, it is prompted at top of your paypal account when you login.
2) Allow international payments from your merchant paypal profile. a) Login to your PayPal account. b) Go to Settings > Selling Tools > Block Payments by clicking "update" link corresponding to this option. c) Select "Yes" option for "Allow payments sent to me in a currency I don't hold." d) Select "Yes" option for "Block accidental payments". e) Save the settings if not automatically saved.
3) Add the necessary currencies to your PayPal account, it's free :)
The bottomline is when an Indian customer ses the same product one should see in INR to accept payments directly in INR into merchant's PayPal account. But again when a customer make purchase outside India, he or she should see a currency of their country if you set up separately OR in USD as common for all non-Indian customers.
So, in this particular case of WooCommerce you need a switch currency mechanism enabled on your website before sending the request to PayPal. So, I solved this issue after PayPal guidance using a currency switcher plugin on my WooCommerce store.
Many thanks to PayPal merchant support!
![Satys](https://i.stack.imgur.com/U3lnY.jpg?s=256&g=1)
Satys
Updated on June 04, 2022Comments
-
Satys about 2 years
I am trying to integrate paypal, but stuck with this error.
We’re sorry. This seller doesn’t accept payments in your currency. Please return to the seller and choose another way to pay.
The currency I am setting is USD. I have not blocked it and I have added it into my account.
Here is the code, I am using PHP.
$transaction_value = $this->payment_detail['amount']; // $this->response($transaction_value); $apiContext = new \PayPal\Rest\ApiContext(new \PayPal\Auth\OAuthTokenCredential(PAYPAL_CLIENTID,PAYPAL_SECRET)); $payer = new \PayPal\Api\Payer(); $payer->setPaymentMethod('paypal'); $amount = new \PayPal\Api\Amount(); $amount->setTotal($transaction_value); $amount->setCurrency($this->payment_detail['currency']); // $amount->setCurrency('INR'); $transaction = new \PayPal\Api\Transaction(); $transaction->setAmount($amount); $redirectUrls = new \PayPal\Api\RedirectUrls(); $redirectUrls->setReturnUrl(PROTOCOL.base_url().'pay/api/process') ->setCancelUrl(PROTOCOL.base_url().'home'); $payment = new \PayPal\Api\Payment(); $payment->setIntent('sale') ->setPayer($payer) ->setTransactions(array($transaction)) ->setRedirectUrls($redirectUrls); try { $payment->create($apiContext); // $this->response(array("paymentId" => $payment->id)); header('Location: '.$payment->getApprovalLink()); exit(0); // echo $payment; // echo "\n\nRedirect user to approval_url: " . $payment->getApprovalLink() . "\n"; } catch (\PayPal\Exception\PayPalConnectionException $ex) { // This will print the detailed information on the exception. //REALLY HELPFUL FOR DEBUGGING echo $ex->getData(); }
-
K.S over 4 yearsHi,I have switched my setting as you mentioned above to follow but after doing this all stuff error does not go.
-
Jorge Al Najjar almost 4 yearsSame comment as above -switched to 'YES' and still getting the same error , and still waiting because these things sometimes take a while ;)
-
Sumit Shukla over 3 yearsHave you followed paypalobjects.com/devdoc/IntegratingCheckoutInIndia.pdf for integration?
-
Sumit Shukla over 3 yearsHave you followed paypalobjects.com/devdoc/IntegratingCheckoutInIndia.pdf for integration?
-
shaedrich over 3 yearsWhy would a SandBox account solve a problem?
-
Hayatullah Farahi about 3 yearsSandBox account helps solve the issue in development mode only, in production mode, I believe the currency of both accounts should be the same