From USA, somebody tried to purchase the product from our website but it showing the below error. We're sorry, PayPal doesn't allow residents of United States to ship purchases to India. I created two PayPal Accounts with Countries USA and INDIA and tried making payment with both accounts, but I am not getting this issue from different ways of testing (i.e., Providing Billing and Shipping information INDIA/USA viceversa). Is there anybody get this same issue in drupal commerce. Any ideas please..
The buyer is experiencing this because they are trying to ship to a different address outside their own country.
To override this security feature is to edit the 'addressoveride'
parameter in the SetEC api cal; you'll want to do is drill down in
drupal and set to --> addressoveride=1, as well as in the IPN
listener if applicable. Page 24.
You'll also if you can disabled the paypal address confirmed variable. Page 23
See Doc
As of Now.. this issue is resolved. I am totally Commented Shipping Information in Commerce Paypal Module. i.e., In the file, "commerce_paypal/modules/ec/commerce_paypal_ec.module".
i.e., I commented code from,
if (module_exists('commerce_shipping')) {
// If we have a shipping address, pass it to PayPal ...
... //some default code here...
}
else {
... //some default code here...
}
It may be useful for anybody who have this issue.
Related
I am using payflow pro. When I use currency code 'USD' all payment flow's works fine. But when I change currency code to 'CAD' it will return error with result code 06 which means Invalid or unsupported currency code. How to solve this problem?
This is not problem with your code.
Following https://developer.paypal.com/docs/classic/api/currency_codes/
Payment Receiving Preferences
If you have a PayPal Premier or Business account, configure your Payment
Receiving Preferences to handle payments automatically. You can convert
any payment into your primary currency or block certain types of payments.
You can set the following:
Block or unblock payments from U.S. customers who don’t have a confirmed address.
Block or unblock payments sent to you in a currency you don’t hold.
Block or unblock payments for duplicate invoice IDs.
Block or unblock payments from customers who have non-U.S. PayPal accounts.
Block or unblock payments from Student Account holders.
Log in to your PayPal business account at www.paypal.com. Click the
profile icon (Profile menu) on the top right side of the page. From the
Business Profile menu, select Profile and Settings.
Note: If you do not see the profile icon on the top right, select
Profile which appears in the top menu when the My Account tab is selected.
From the left menu, click My selling tools.
In the Getting paid and managing my risk section, click the Update link
for the Block Payments item.
Update your settings and click Save.
Just happened to hit this problem with Magento 2.3.1, when paying with credit card against PayPal Payflow Pro. Our default currency for the store is "CAD".
The support team is super, after our several failed transactions they managed to figure our the problem, let me share their reply here:
Thanks for reaching out today. Happy to help.
It looks as though this is an issue with the currency code you're passing. Right now it appears you're trying to pass USD in on the $0.00 verification call, but CAD on the actual 2.20 transaction itself. When you verify a card, the transaction you attempt against that verification must use the same currency. Try passing the subsequent transaction with USD, or create the verification in CAD and then run the transaction against it using CAD. See https://developer.paypal.com/docs/classic/payflow/integration-guide/#submitting-account-verifications for more on verifications. That's a great resource for Payflow in general as well.
That should resolve the issue you're seeing, but please let us know if you run into any other issues.
I hope that helps. Let us know if you have any questions.
That says for two API calls from our server (Magento 2.3.1) to PayPal need to specify the same currency code. While our first API call which sending amt=0 field doesn't have separate currency field there, so I guess the default value was assigned which is "USD". While the second API call which sending the real amt number had currency=CAD field, that might confused the API and eventually refused by it.
For Magento 2.3.1 the fix is to add the currency filed for the first API call, which the same idea may apply to other conditions as well.
Here is the Magento fix in case you are interested.
Don't know if anyone else has seen this one, but we've had some orders come through where a customer has their paypal default shipping address set to another country (India for example), and when they try to check out with Paypal Express it will take them to the order review page that lets them choose their shipping address. If they change this to be the UK (where we're based) the order will apparently go through fine, but in Magento it'll store the shipping for the country as being the default country for the Paypal account.
All the other fields seem to update fine, and if the billing address is tied to the shipping address then it seems to work fine too, but it's causing issues with the shipping label generation because it's creating shipping labels which say they're to be an international order. Site's running 1.7.0.2, any help you could give would be really appreciated
I have been playing with the reference transactions facility on paypal and I have run into a bit of an issue.
Everything works fine right up until I try to retrieve the latest billing address from the customers account.
If I don't do this, everything works as it should and payment is taken.
Based on https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECReferenceTxns/ I have made the call to retrieve the billing address but it comes back with all the fields as null. The name is correct but the address is empty.
Any ideas on this. I can't integrate this into our site if I can't retrieve the billing address.
As with most things related to PayPal and their APIs, they simply hadn't bothered to document the fact that you have to liase with them and contact them for various parts of the system to be enabled.
Initially when using reference transactions I tried to setup a "Billing Agreement" and the API response alerted me to the fact that reference transactions needed to be enabled on sandbox and live accounts in order to function and that they had to do this themselves, not the owner of the sandbox / live account.
Brilliant, undocumented issue no1.
Once that was working, I moved onto testing the use of a "Billing Agreement" to take payment and as part of that you make a request to PayPal for the details of the agreement so as to ensure its still active and to get the customers delivery address.
I do that and everything comes back as expected apart from the delivery address...
After much head scratching I contact their technical support who informs me that again, this needs to be enabled on the sandbox / merchant account before it will return the address.
Seriously, I know that PayPals documentation is quite poor but this just takes the biscuit. So if anyone has any issues with reference transactions, just contact them and ask them to enable EVERYTHING related to it and explain what they have done.
I've come here in a bid to try and solve what seems like a blackhole that nobody in paypal can help us with.
We've a business account. Paypal Express (digital goods). Verified, restrictions lifted etc...
We've got paypal express integrated fine as our sole payment method. But there's a problem. ANY paypal account funded by a credit card will just flat out fail and give a 10417 error.
Overview
Customer A has an existing paypal balance of $10
Customer B has an existing paypal balance of $0 but has their account
funded by credit card.
Customer A has no problems on our site with any transaction below $10.
Customer B gets an error upon payment. More specifically, a 10417 error.
Now before anyone says it, we have checked with card issuers etc... so we're 100% sure this is not an error with cards or banks (as the 10417 error tends to suggest). We've literally tested this with a dozen verified / clean paypal accounts in different countries with different card types & different issuing banks. All of them fail and sandbox gives us no clues either...
Can anyone throw us a bone here or think of any possible reason this could be happening? It would be much appreciated...
Update: Resolved: Turns out it was a problem with our account and more specifically our category of industry. It would have helped of course had someone told me that the half a dozen or so times I called over the past week - yesterday on the phone i asked an agent if she was 100% certain this was a problem with a customers card, bank or billing address. I knew it wasn't so i wanted just to see if she'd commit to it. Her response - "yes sir, i'm 100% certain". Sums it all up. Hopefully this will help someone else out there... if you're getting 10417 errors, try changing the business category or subcategory in a bid to stop you going insane...
Ran into the exact same issue, paypal support was not very helpful
Turns out the problem was the business URL was set to http instead of https
Our business website redirects from http -> https, but this redirect seems to cause a problem at checkout for paypal
Once we changed the business url, customers were able to proceed with payments
Solution:
Log in to paypal
Navigate to https://www.paypal.com/businessprofile/settings/info/edit
Edit the business profile and make sure "Business URL" is set to https://
Im integrating an MVC4 website with Paypal and all has gone quite smoothly until now. However, when I click through, the buyer does not get the option to complete the purchase as a guest.
I'm using the Paypal HTML payments standard method and searched around and this page and Paypal itself said to make sure
'Account optional' was off in my profile. I'm in my sandbox profile now, but under 'website payment preferences' there is no such option. I just have:
Auto return for website payments
Payment data transfor
Encrypted website payments
Contact telephone no
Express checkout settings (just for german payment methods!)
Does anyone know where this setting is now?
The person I'm building the site does not want users to have to have a paypal account, so guest checkout functionality is required.
Unfortunately the Paypal website doesn't really help - searches for guest checkout turn up little.
Any help really appreciated.
Thanks
I'm having the same problem, I guess it might be related to your location or your customers location (Outside the US).
I have called PayPal Support and after about an hour of discussion they said something like that.
I hope that this is not the right answer (I hope there is some sort of setting we can do to change that, and we are just missing it).
also check that link it might help:
PayPal Standard not giving option for Check out as Guest
Make sure that the receiving account has verified status (eg, that you've linked it to a bank account).
Only verified accounts are eligible for guest checkout.
Another common pitfall is that you might have made a typo on the email address of the receiver.
Make sure it's the exact same one that's used to log into the PP account (or at least that it's associated, and confirmed to the account)
This topic forum is the best place I've found for a checklist of requirements to receive guest payments on paypal:
https://www.paypal-community.com/t5/How-to-use-PayPal-Archive/buy-now-button-requires-paypal-login-or-account/m-p/15587