I am new to PayPal.I have published a hosted checkout page in PayPal Payflow link using Paypal manager.I tried to do a test transaction.I did't setup anything as required.I have given a test credit card no(collected from Paypal PayFlow link user guide) and exp date correctly. But I received a following error.
Error: Information entered incorrect. Try again.
I tried to find the solution.But,couldn't.
Please help me to get the solution.
Thanks in advance
The first issue I see with your checkout page, is that you have your Payflow account set up to require address and CSC, but you only have your account set up to allow the CSC field to be editiable. You would need to log into your Payflow Manager, and Service Settings > Set Up and under the Billing Information set it to allow the billing address section to be editiable. This is probably causing your issue. If you still get the error after making the change, I will test it again. I was not able to get pass the checkout due to not being able to edit the billing address.
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.
I'm trying to create a billing agreement in my sandbox environment but got this cryptic error:
At this time, we are unable to process your request. Please return to [my] Test Store and try another option.
How would I debug this?
My code so far includes:
Create an API token
Creating a billing plan
Activate the billing plan
Create the billing agreement
Everything works until step 4.
I'm using the code from the REST PHP SDK samples.
This problem was solved here by clearing the cache. I've tried that as well as another newly installed browser, but the problem remains.
Tips?
Edit: Billing agreements are enabled in the app as stated here. It might be specific to Germany, as I am in Germany too.
unfortunately it is specific to Germany:
"Recurring payments cannot be created for buyers in Germany or China. In this case, you can use reference transactions as an alternate solution."
https://developer.paypal.com/webapps/developer/docs/classic/express-checkout/integration-guide/ECRecurringPayments/#limitations
Here is my suggestion:
Login to PayPal. https://www.paypal.com/signin
Go to the Sandbox Test Accounts
https://developer.paypal.com/developer/accounts
Create a new
personal sandbox test account (email address, password, country,
verified, etc). If you see no create button, then you will have to
clone one by clicking on the icon at the right the table row. Just
make sure you are cloning one of type PERSONAL.
Clear the PayPal cookies using your browser settings. (This will log you out of PayPal)
Now, you can run your script and when you are redirected to PayPal for
payment approval you will have to type the credentials of the newly
created personal test account.
In short, what I suggest you do is creating a new personal sandbox test account and clearing your browser cookies.
Good luck
Paypal says, use CCREJECT-REFUSED for address1 in credit card detail. https://developer.paypal.com/webapps/developer/docs/classic/express-checkout/ht_ec_fundingfailure10486/
I tried creating new test user (CC credential was automatically created). Login into sandbox and add CC detail I got from first step. I change address line to CCREJECT-REFUSED. Save it. And then tested it, checking out via sandbox. Error 10486 was not triggered.
Any hint?
Mistake I made was to edit the SHIPPING address instead of the BILLING address.
Your best bet is to log directly into https://www.sandbox.paypal.com and hit the 'Profile' tab and try to add or edit a card there.
Watch out for the following :
Make sure you put exactly CCREJECT-REFUSED for BILLING address Line 1 with no spaces and TWO C at the beginning
They seem to be incompetent to keep the site running smoothly at all times so just try again
later if you get Service Temporarily Unavailable.
Make sure if you're adding a new card (you can use your own real card number) that you aren't getting a message telling you This card number is already assigned to another PayPal account. For security reasons, each card may only be assigned to one PayPal account because then you'll not be adding anything
Make sure payment method is actually set to credit card before you hit Submit for the order.
It does actually work though (as of today)
Okay, I was wrong to assume that the error can be triggered using direct CC payment.
As the document suggest:
You need to create a test user account
Login into sandbox using fore-mentioned account.
Change address part of test user CC to: CCREJECT-REFUSED
Then, in order to test it, run your express checkout flow as usual. But on the last part, do not use direct CC input. Instead, choose the other option -- login into your test user paypal account.
You will then received this kind of response:
TIMESTAMP=2013%2d08%2d19T06%3a50%3a45Z&CORRELATIONID=6761aff7944b&ACK=Failure&VERSION=104&BUILD=7319395&L_ERRORCODE0=10486&L_SHORTMESSAGE0=This%20transaction%20couldn%27t%20be%20completed%2e&L_LONGMESSAGE0=This%20transaction%20couldn%27t%20be%20completed%2e%20Please%20redirect%20your%20customer%20to%20PayPal%2e&L_SEVERITYCODE0=Error
All of these answers are now out of date. It's impossible to add a card with CCREJECT-REFUSED as the address and, if you could, it wouldn't do anything. You should follow the instructions at: https://developer.paypal.com/docs/classic/lifecycle/sb_error-conditions/
For the majority of APIs exposed by PayPal, this usually involves setting the order amount to the desired error code after enabling negative testing mode for your sandbox business account.
For example, triggering a 10486 via the Express Checkout NVP API would involve setting the AMT to $104.86.
As taking directly from their tutorial: (see step 2)
Login to https://www.sandbox.paypal.com using your buyer's test PayPal account.
Replace the contents of the street address Line-1 of the buyer's test credit card, with CCREJECT-REFUSED.
Execute a typical Express Checkout payment flow against the Sandbox test environment using the same buyer account and with the same credit card that you just modified.
When you execute DoExpressCheckoutPayment, error code 10486 will be returned. Your code should redirect the buyer back to PayPal using the same redirect URL used to start the checkout flow and the same Express Checkout token.
I have a website that I'm trying to hook paypal up to with a php script. php builds the query string and then submits to https://www.paypal.com/cgi-bin/webscr with the query string attached. I can verify that this works fine. I haven't processed a payment but it directs to PayPal with the correct quantities and prices, etc.
However when I change to https://www.sandbox.paypal.com/cgi-bin/webscr I get an error when I try to process that says there was a problem with the merchants PayPal account.
I have created several test accounts on PayPal sandbox but from what I can tell looking around it seems I need another merchant account in the sandbox? If so, I don't see how to do this. I'm guessing I need to change the "?business=mycode" portion of the query string but I don't know how to figure out what to change it to...
Anyway I looked around a while and can't find the answer, can anyone help or direct me to another post that answers this (I looked but couldn't find it, or at least didn't understand it if I did)?
When changing back from live to sandbox, all you should need to change if using a non hosted button is the URL to reflect the environment that you are trying to test with and the value of the business variable. This can be set to either your email address of the actual test or live seller account or the merchant id. If you have not already created an account for testing. You can do so by going to PayPal's Developer Site, and creating a developer account. Then once you have done this, you can log into the developer account and go to the Applications tab. Once on this page, click the link for sandbox accounts on the left, and create a preconfigured test seller account. This will generate an email address linked to a test account. This will be the email address that you will need to use. If this doesn't work, can you provide the string that you are submitting over to PayPal or the button code that you are using and I will take a look at it.
There is error in API key for sandbox testing in Paypal... It is due to corrupt key generation which is not properly decoded on sandbox server when you send a purchase request.
I tried using following sandbox public credentials and it works fine for me
username: sdk-three_api1.sdk.com
password: QFZCWN5HZM8VBG7Q
key: A-IzJhZZjhg29XQ2qnhapuwxIDzyAZQ92FRP5dqBzVesOkzbdUONzmOU
however I tried several times using the sandbox merchant account that i have created myself.... but was unable to ACK success.
To begin: I am trying to setup Zencart with Paypal. I have followed all of Paypal and Zencart's instructions:
Putting in Paypal's API username, password and signature code into Zencart's Payment Module section. Checked the "live" environment.
I then tried buying a product on the website and got the following error message:
Zen Cart message: We are sorry for the inconvenience. The PayPal account
authentication settings are not yet set up, or the API security information
is incorrect.
10002
Security error
Security header is not valid
I have tried looking up the answer but everything I see says to make sure the environment is not in sandbox and that everything is typed in correctly. I have tripled checked and the API is typed in correctly and it is set to live.... what else can I do?
Moving on, I have tried to setup the sandbox but am unfamiliar with how to use Paypal's sandbox. So I reconfigured Zencart to "sandbox mode" with the appropriate sandbox API and I set up box a sandbox account for a merchant and private buyer but I don't know how to use them. Should I go back to the Zencart store and register with my new "Paypal sandbox private buyer email"? And will checking out using this email they gave me work as just a test... I don't want to go through with the checkout if I'm going to get billed...
Thank you for any help:)
The best place to get support on Zen Cart issues is directly on the Zen Cart support forum at http://www.zen-cart.com/forum.php
Further, an existing article already explains the basics of the problem you describe: http://www.zen-cart.com/content.php?277-the-paypal-account-in-this-store-is-presently-misconfigured-to-use-mixed-sandbox-and-live-settings-we-are-unable-to-complete-your-transaction-please-notify-the-store-owner-so-they-can-correct-this-problem-10002
It is absolutely critical that the THREE parts of your API settings (username, password, signature) be copied EXACTLY from PayPal's site into your store's admin settings screen.
There's no need to use sandbox unless you're a programmer writing new features for payment processing. So be sure to check the "Live" radio-button. (I realize you already mentioned that. Just adding this for clarity.)
You can also get more details on exactly what is coming back from PayPal by turning on debug logging in the module's settings.
PayPal tech support is available at www.paypal.com/mts - they can look at your actual transmissions and at your account, and sort out a problem if there's something wrong with the API signature details.