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.
Related
I'm trying to create Sandbox accounts and many times it says there are issue creating my account, other times it creates but it is unverified... (both cloning the 2 pre-created accounts or creating brand new ones).
Am I doing anything wrong? I need them verified to avoid limits and stuff... and obviously, I won't go through a verification process for a test account.
Any help?
You answered your own question.
You need a paypal account, with your real paypal account you log into the developers sandbox. There you can create test apps and users
It's not your fault, I also noticed the sandbox environment / developer dashboard / account creation process are full of errors.
Some hints:
Don't create test account using the developer dashboard, create directly from www.sandbox.paypal.com and add it to dashboard by clicking the link in "Want to link existing Sandbox Account with your developer account? Click Here and provide credentials of your sandbox account"
As it's a sandbox account, it won't send email to your real email address, instead, after you did Step 1, you can click on the sandbox test account list in developer dashboard, and access the "notifications". Which list the "emails" paypal sent. Be warned most of the emails are garbage as they are based64 encoded HTML, decoding them shows incomplete HTML code. You may try to setup your paypal account so that notification are sent in plain text, not HTML. You will need these email to get your account verified.
Even if your account has no money, try to send some and it should automatically create some for you.
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
I have a simple issue here. I have a code thats calling an API to check if a given Paypal email is valid. The api is PayPal's AdapativeAccounts/GetVerifiedStatus, url: https://svcs.sandbox.paypal.com/AdaptiveAccounts/GetVerifiedStatus
If I give it a real paypal email to the sandbox url, it says unregistered. But if I move it to production and use the api's prod url, it works! So, whats the issue here? Should I grab a fake email from PP somewhere and use these data to test the api? That would make sense as Paypal might want to protect somehow the accounts from malicious sandbox users..
anyone knows?
The Sandbox isn't linked to the live site. Each site is completely isolated from the other. Just because an account exists on the live site, it doesn't mean that it exists on the Sandbox (or vice versa).
If you're going to check that an account exists on the Sandbox, you need to create it on the Sandbox first (unless you're trying to check that the account doesn't exist -- in which case, don't create the account). The easiest way is to use the PayPal Developer Portal -- https://developer.paypal.com. Log in with the email address and password for your live PayPal account, then go to Applications->Sandbox accounts->Create Account.
When I check out the products I wish to purchase from my store it directs me to Paypal's page and I need to log in to my paypal account in order to purchase the items. However, every time I try logging in it says "Please check your email address and password and try again" which is very concerning since it works when I log in through Paypal's website. I'm so confused and started searching for answers online and I found out I might have to use IPN or API.. all those stuff and I have no clue what is going on... please help!
Sounds like maybe you've got WooCommerce set to run in test mode but you're using your live PayPal account credentials to try logging in. That won't work.
If you are indeed set to test mode you need to create test accounts to play with at http://developer.paypal.com.
Alternatively, just set WooCommerce to run in live mode and then your live PayPal account credentials would work, although, you'll need to a live PayPal account separate from your seller account because you can't pay yourself.
i'm having troubles trying to get IPN work inside my sandbox.
I have a developer paypal account and i imported 2 sandbox account. Now i suppose to have 2 ways to test IPN:
IPN Simulator
Setting my IPN address in sandbox options
but i have problems in both of them.
If try to use the IPN simulator everytime i try to send an IPN page starts loading for some minutes and then Chrome gives me a "empty page response" response. After some googling it appers IPN simulator have some problem with non standard ports but my page can run only on port 12000. My page is reachable, i checked from inside and outside my network, it works for all except the ipn simulator.
I have no more luck trying to set IPN address on sandbox, simply because i have no settings at all to access. I logged to sandbox and got a page where i'm supposed to login with my sandbox account, but i get a different login from mine on the upper right corner of the page (thats the original sandbox account, now that sandbox and main account are merged all this mess happen) and when i try to login with sandbox account i get a generic
This sandbox mail is not available. Try another mail address
If i try to create a new sandbox account i always get this error:
We're sorry but something went wrong.Please delete this account and
try again.
So.. i'm basically stuck. What i can do to test my ipn now?
edit for be more clear:
i used to have a sandbox and a main paypal account, now they are merged
i login to both sandbox and developer section with my main account now
even if logging in sandbox with my main account i get logged as my old sandbox account
after this first sandbox login if i try to log my sandbox account (listed in developer.paypal.com) i get that "Sandbox mail not available" error
in developer.paypal.com i can't create any new sandbox account, getting error everytime. I found that you got that error if password is not 8-20 chars long and now i'm using a correct lenght password but i'm still getting that error
edit2: i successfully created a new sandbox account!
to get that i had to:
use an US account (i was using italian)
use password with: uppercase, lowercase, special characters, numbers
initial balance import < 1000 usd
but i still can't login this account inside the sandbox, always same error. I'm hating this.
Non-standard ports really are not supported at this time, so you'll run into a myriad of different issues over time. The initial IPN delivery may work, but the re-sending of a single message may not, etcetera.
Can you use something like http://progrium.com/localtunnel/ perhaps?
With regards to the account creation:
For discussion's sake, let's stick to the right terminology; you use a developer account to log into https://developer.paypal.com/, and a Sandbox account to log into https://www.sandbox.paypal.com/
Is the account you're trying to log into via www.sandbox.paypal.com a Sandbox account listed under Applications > Sandbox accounts?