buynow works with paypal user but not credit card only - paypal

New to the wonderful world of paypal payments.
I have a simple button which works great on my merchant account when the user is a paypal user. However, when a credit card only payment is submitted, I get:
We're sorry, but we can't send your payment right now
We are not able to process your payment using your PayPal account at this time.
Please return to the merchant's website and try using a different payment method (if available).
I have triple checked that the merchant account has the "Accept non paypal payments" checked. The merchant account was setup about two weeks ago. It is a business account (as opposed to a business pro account). I have checked and rechecked the rest of the options over and over. I use a new chrome incognito window for each test to avoid cookie/session issues.
I have tested using the sandbox. Credit card only works fine.
My button code looks like:
<script
data-tax="0"
data-shipping="0"
data-amount="5.50"
data-quantity="1"
data-name="Team Reg U15 Boys Intergraph"
data-button="buynow"
src="/nafutsal/bundles/ceradteam/js/paypal-button.min.js?merchant=KDTT4D89UN6DN"
></script>
The amount is small for testing but I didn't see an actual min limit anywhere.
Any idea why credit card only payments do not work in production?

Ok. So I had a long conversation with paypal support. The credit card transaction was failing because I was using one computer for both sandbox testing and production testing. Using an incognito browser window was not enough.
I'm sure this is all documented somewhere.

Related

How can I get PayPal sandbox payments accepted automatically?

I integrate PayPal in my Symfony 4 App, but in sandbox payments still need to validated as we see in the picture behind.
How can I get payments accepted automatically ?
and I'm asking also if in Live mode, I'm going to have the same problem because I didn't have a business account to test it.
Is the issue that the payments are "PENDING"? Is the PayPal sandbox email not confirmed?
Log in with Sandbox account at https://www.sandbox.paypal.com/businessprofile/settings/email to check and resend any confirmation email
Then log in with Live developer account at https://www.paypal.com/signin?intent=developer&returnUri=https%3A%2F%2Fdeveloper.paypal.com%2Fdeveloper%2Fnotifications%2F to read the message notifications and confirm the email
One of the reason of that happens when the currency of the payment is not the same with the Paypal JS loaded script in client size.
So What you don't know that in the script loaded, the default Currency is USD, So you have to specify the currency in this script :
<script src="https://www.paypal.com/sdk/js?currency=EUR&client-id={{ data['clientId'] }}">
So in this case if the client pays with EUR, the payment is auto-accepted, else, you have to configure the strategy in Settings when you have two different currencies, So you have to login with your Business Account, then go to the Account Settings > Payment preferences > Block Payments.

Bank wasn't able to verify your VISA while payment

I am new to PayPal integration I am testing the payment process but facing some issue while checking out. I tried all mention cards in PayPal website but didn't work any.
Error Message:
Sorry, your bank wasn't able to verify your VISA x-**** at this time.
Please choose another way to pay.
Go to the PayPal Dashboard from the account from which you created the Sandbox accounts and PayPal app. There in the Mock section in the side navigation go to Credit Card Generator. Here select the country that you have chosen while making the business sandbox account and click Generate CC.
Now copy the details of the card generated. Now go to the site where you have integrated PayPal checkout and while making payment instead of choosing the default card click on add Debit/Credit card and add a card with the details the card that you generated. You'll be redirected to a payment page, fill a random password there and your dummy transaction will be completed if everything else in the code is fine.
You need to go to your paypal developer account and then find the mock menu and then select credit card generator
Generate a credit card based on your county
Now try to add a new card on the Paypal page where you are getting error.
Enter the details of the mock card
Then again try to do that payment.
You may be asked to enter a password. Just click on the new-user/forgot password link.
Everything will work fine
I faced this similar issue while integrating Paypal with my app. What I did found that Paypal integration for sandbox account does have an issue while payment if the currency used, is other than USD.
Yes, other solution may work if you want to generate a fake credit card and add it to the Paypal page.
But if you don't want to add any other credit card to the Paypal account and use it for testing purposes, what you can do is to change the country of both business and personal accounts to USA & currency to USD, also set the app to accept the payment in USD.
It will work fine.

How to test a production Paypal button?

I have a simple Paypal payment button:
on production of my e-commerce website. It works. Many customers have already bought items with it.
But now I'd like to see exactly the payment workflow from a buyer's point of view, from the start, until payment successful + IPN mail + auto-redirect to payment-success page, etc.
Paypal sandboxing seems incredibly complex, one has to create a Developer account, then 2 sandbox accounts, a facilitator (?), a buyer one, etc.
It also seems that Paypal duplicates the real content, into a virtual sandbox button, etc. This is really complex.
All I want is to try my already-working production PayPal-button with a single sandbox buyer account. How to do that?
Is there a way to test a production Paypal button with a sandbox account (with, say, 10000€), and to proceed to the payment like would do a real customer?
... instead of having to create 3 accounts (Developer + Buyer SandBox account + Seller SandBox account)
PS: I've read many docs about sandboxing in Paypal docs, but they have very old docs (deprecated), some old docs, some new docs, some very new docs, + some of them in French with different content to English version, etc. I'm totally lost!
Actually you can test payment buttons I'm testing one of those right now.
At first it seems more complex that it needs to be, but all you need to know is that the sandbox system is a different enviroment, so the only way to test a sandbox payment button is a sanbox account.
Go to your developer dashboard, create 2 accounts, 1 for the seller (pick merchant account when creating this one), 1 for the buyer.
Log in to sandbox.paypal.com with the seller, create the button as you already did, set the ipn and all you need. Place the button in your site, now test your new button and when paying log in with the buyer (sandbox account) you previously created.
There's no way to test environment for paypal buttons. I sent a few messages to them asking the same thing. The only way to test that is get int touch with them through your account and tell your test user, then they won't charge you.
Here's a translation I received a few weeks ago:
In this case, the Sandbox environment does not allow payment on PayPal
buttons because there is no sandbox system for buttons, only for email
integration or PayPal account API.
In this case we recommend that we send a URL of the buttons or even
your site already with the buttons registered.
That way any analyst can do the actual payment test for you.
Our test balance is only R $ 50,00 reais, so the buttons can not
exceed this value with product price and freight.

PayPal sandbox which credit card to use?

I am using the sandbox url for accepting test payment through paypal.
When a user clicks a button he is redirected to paypal sandbox site. On the paypal sandbox site the user is presented with an option to pay using credit card. However when I try test credit card 4111-1111-1111-1111 it gives me the following error "The card you entered cannot be used for this payment. Please enter a different debit or credit card number."
I am not sure what am I missing?
The numbers provided in the documentation are used so much that the sandbox servers just don't accept them anymore. They really need to update the docs.
I would recommend generating fresh credit card numbers to use. I always use this site for that. The numbers it generates will work fine in the sandbox.

Paypal where to set accept digital goods payment in sandbox

I've been trying this for few days. I've created some seller accounts, one of them I created early this year and it was working fine. Then when I return for this project this March, Paypal changed the API from x.com to developer.paypal.com. The old seller accounts were still working fine and can still accept the digital goods payments from the payer accounts that I created recently, however the new seller accounts, with BUSINESS type, suppose to be able to pay and accept payments got some issues. These newly created seller accounts receive the following warning:
You are not signed up to accept payment for digitally delivered goods.
Doing some research with google, I released I have to set the paypal business account for digital goods. But I can't find where to set it from the new paypal developer control panel. Even when I tried to log in to the sandbox version of paypal.com, using the seller accounts I created in the sandbox, I still can't find where I can set it. In my business setup, there are only two options for me, one is Paypal payments pro and other other is "Virtual Terminal". Any idea? Please help....
I've found the way to add express checkout for digital goods in sandbox, but I think Paypal should pay attention to this because the way I used was very clumsy.
First sign in to sandbox and choose a business account to log in to the sandbox by using the url provided in the Application/Sanbox Accounts. Then use the account that you want to set to accept digital goods checkout to log into the sandbox url, it should be www.sandbox.paypal.com/us/home
After logged in, go to my business setup and pay attention to the setup my payment solution. Click the view all products and you will be redirected to a new page. Please note the url now, the "sandbox" is missing. Now click on the express checkout button, or whatever you want to add to the payment solution, you will be redirected again. Now pay attention to the url, insert "sandbox" to the url, e.g www.paypal.com you have to replace it with www.sandbox.paypal.com, the rest of the url remain the same. Then press enter you will be redirected back to the business setup page. Now you can see your payment solution has become express checkout. It is stupid and I hope paypal can let us choose this directly from the control panel in the near future.
An alternative hides in Profile > My selling tools > API access > Update > At the bottom - Enable Express Checkout.
When I later go to My Account > My Business Setup I see: "Your payment solution: PayPal Digital Goods (Express Checkout)"