• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2930
  • Last Modified:

Paypal sandbox error and setup

Tried geting help from the PayPal forum but never any answer and no answer in their docs that help so trying to get help here.

We use a custom ColdFusion shopping cart for our ecommerce site. The PayPal form we use works fine for our live, actual payment to PayPal. However, when we add the sandbox part of the URL for testing, we receive the ever present following error message from PayPal: “PayPal cannot process this transaction because of a problem with the seller's website. Please contact the seller directly to resolve this problem.”

I have both the personal and business accounts set up on the developer sites and am using the business account on sandbox form.. That seemed to go okay But that’s as far as I got. Once that was done there was no guide I could find to suggest what to do next. I’ve checked my developer account activity and history and there is none.

I continue to get this error also: “We’re sorry, but something went wrong. Please try again.” It’s at this URL: https://developer.paypal.com/webapps/developer/applications/myapps.

paypal sandbox merchant account error

At the URL above, the forum suggestion stated: “ .. click the link for sandbox accounts on the left” of the Applications Tab. But there is nothing there indicating “sandbox account” on the left side or anywhere.

I’d really like to see an example of a sandbox paypal form where the cost is set to a variable, and in our case we use a cfquery output variable.

I guess I need to “create a preconfigured test seller account.” But where? How? Just a big circle on the PayPal developer site.

I’ve read other examples from others here in their forum but the suggestions don’t always seem to match up with the actual page, perhaps PayPay developer site has changed and the url is obsolete at best.

Obviously, everything else is working so we have the correct setup to charge but something must be wrong with the sandbox account. We have both business and personal accounts set up but the error remains. I’ve spent two hours researching but cannot find a clue to what the problem may be. The massive amount of data on PayPal is no help I’ve yet been able to find.

We’d use the standard Buy Now buttons but they have built in payment amounts. Our payment amounts change dynamically so we need to use a variable in the form of the payment amount so that’s why we decided to use a custom form.

Would like someone to explain what may be the problem on the sandbox setup, or go thrugh the stages what needs to be done once the business and personal accounts are defined, then maybe point me to an example of what the basic html form looks like and the requirements of that form (allowing custom price amounts based on a variable amount) to send to PayPal sandbox.
  • 3
  • 2
  • 2
2 Solutions
Dave BaldwinFixer of ProblemsCommented:
The Paypal developer site changed drastically a few months ago.  And for some reason you have to search for the Express Checkout info.  They seem to be promoting the 'easy' methods which are not suitable for a shopping cart.

Note that the 'sandbox' api url is different than the live url.  I don't know whether you need to set up test buyer and seller accounts anymore.
Andrew AngellCo-Owner / DeveloperCommented:
Go to http://developer.paypal.com and log in using your actual PayPal account credentials.  

Create a sandbox business account to use as your seller account.  You should also go ahead and create at least 1 sandbox personal account (or business) to use as a buyer account.

When you create the new accounts you'll get any emails that would typically go to that user in the Notifications section of the developer site under each account you created.  You may need to use that to verify/confirm the account.  

If you've already done all of that, of course, you can use existing accounts.  You just need to make sure your button code is configured correctly to work with the sandbox.

Here's a quick sample of most of a form filled out dynamically, but it's using PHP.

<form id="ppform" onsubmit="return onSubmit();" action="<?php echo "https://".PAYPAL_SERVER."/cgi-bin/webscr" ?>"  method="post" target="_top">
        <INPUT TYPE="hidden" id = "notify_url" NAME="notify_url" value="<?php echo "http://".PAYPAL_IPN_URL."/notify.php" ?>">
        <input type="hidden" id="custom" name="custom" value=''>
        <input type="hidden" id="cmd" name="cmd"  value="_xclick" />
        <input type="hidden" id="business" name="business" value="<?php echo PAYPAL_BUSINESS_EMAIL  ?>" />
        <input type="hidden" id="item_name" name="item_name"  value="<?php echo PAYPAL_ITEM_NAME  ?>" />
        <input name="lc" type="hidden" id="lc" value="<?php echo PAYPAL_PAGE_LANGUAGE ?>" />
        <input name="currency_code"  id="currency_code" type="hidden" value="<?php echo PAYPAL_CURRENCY ?>" />
        <input name="cpp_header_image" type="hidden" value="https://static.e-junkie.com/sslpic/97713.d1fae4a0ecc4b87635f732f76033b72e.jpg" />
        <input name="amount" id="amount" type="hidden" value="" />
        <input name="bn" type="hidden" value="AngellEYE_PHPClass" />
        <input name="quantity" id="quantity" type="hidden" value="" />
        <input name="return" id="return" type="hidden" value="<?php echo "http://".PAYPAL_REDIRECT_URL_SUCCESS ?>">
        <input name="cancel_return" id="cancel_return" type="hidden" value="<?php echo "http://".PAYPAL_REDIRECT_URL_CANCEL ?>">

Open in new window

To see the actual output you can take a look at this page on my test server.  You'll see the button code output with actual values from the PHP variables, and as long as you're logged in to your developer account when you click the button it'll load in the sandbox correctly.

Just make sure everything you're doing matches what I've outlined here and you should be good to go.
QsorbAuthor Commented:
As I said, I'm using ColdFsuion, not PHP.

I found the main problem with the PayPal sandbox developer pages is being able to select the correct options to get everything to work. For me, it is far too complicated to go into here. Wish it was not.

I was finally able to get PayPal advanced tech support to walk me through it. The real problem is lack of decent PayPal help structure and guides so one does not get lost without creating an error. It's a mess. There are so many possible options on each page, it would have been just luck if I had figured it out myself. I hate it when someone finds the answer to a question here but does not publish. I would if it would make sense. It does not.

PayPal does not seem to  care, unless you repeatedly insist and can get through the first line of tech support that has no idea what they are doing.

Another one of the problems is that when creating a button, I missed the option to remove the encryption which allows anyone to simply display the button without being encrypted. Encrypting the info on the button is the default. The option to not use encryption is so easy to miss. Removing it allows me to add the ColdFusion cost variable I wanted and that  fixed the problem.

I'm going to give you the points, not because this solved the problem but because you both tried.
Introducing Cloud Class® training courses

Tech changes fast. You can learn faster. That’s why we’re bringing professional training courses to Experts Exchange. With a subscription, you can access all the Cloud Class® courses to expand your education, prep for certifications, and get top-notch instructions.

Andrew AngellCo-Owner / DeveloperCommented:
The PHP sample I provided was exactly what you would use with CodeFusion except you'd simply change the syntax for CF instead of PHP.  It's very simple echoing of variables and easily converted to whatever you're using.  I thought you'd appreciate that sample.  I could have replaced the PHP echo's with "place your CF output here" but I figured this would get the same point across.  

As for the rest, the steps I outlined are exactly what you need to do in order to make it all very simple.  I don't know it was so difficult for you..??  I've been working with PayPal's sandbox for years and I've never had any issue creating new test accounts or testing on their sandbox.

As for some of your other complaints, I think you'd actually get along a lot better with Express Checkout than with Payments Standard, which is what you're using when you create basic buttons from the PayPal account.  Express Checkout is the actual API based integration and is much more flexible.  You can use NVP strings or XML/SOAP and do all sorts of things on the PayPal platform from Express Checkout to Payments Pro, Adaptive Payments, Refunds, Transaction Search, etc.  

Anyway, thanks for the points, although I really thought you'd get more out of that than you seem to have.
QsorbAuthor Commented:
I wasn't trying to pick at you, honest. From my novice experience, I could only assume that if the form example contained PHP, there were potential problems so I did not want to waste time experimenting, especially since it was already solved.

Your Form example in PHP was only part of the question I asked, the part where I asked for an example. There was no useful help in navigating the mess in PayPal Sandbox but can hardly blame you there. Still a mess. But for course for real programmers like you, it must be easy. Hard to believe with that mess.  

I would agree to sharing the points equally if a moderator would listen and do it.

Dave BaldwinFixer of ProblemsCommented:
@Qsorb, my experience with Paypal in the last year has been very similar to yours.  @angelleye knows more about Paypal than you and I will ever know.  But that does not address their documentation problems which they acknowledged about 6 months ago to me.  

I suspect that because they deal with their own product everyday and are very familiar with it, they don't see what it looks like to those of us who are just starting out with it.  I say that because at times, on the things that I am very familiar with, I just don't understand how it can not be obvious to others.  But it's not if it is very complicated.  People have trouble seeing how the pieces fit together until they have done it themselves.

And I don't care how the points are shared.  I don't need them.
Andrew AngellCo-Owner / DeveloperCommented:
No worries on the points.  Not a big deal.

Just for the record, I don't work for PayPal.  I'm a 3rd party developer.  That said, I have been working with their stuff for years so I am indeed very familiar with it.  

For future reference, the best resource for documentation on all of their "classic" products is right here:  https://developer.paypal.com/webapps/developer/docs/classic/products/

That includes Payments Standard, which is what you're using with basic buttons.  The documentation for that directly is:  https://developer.paypal.com/webapps/developer/docs/classic/products/#wps

There are lots of different features available with Payments Standard, though, so that link has more sub-links, but the primary one would be:  https://developer.paypal.com/webapps/developer/docs/classic/paypal-payments-standard/integration-guide/wp_standard_overview/

Within that you would find the cart upload command method which is what I would recommend for you if you're going to stick with Payments Standard over Express Checkout.

As for Sandbox documentation, that would be here:  https://developer.paypal.com/webapps/developer/docs/classic/lifecycle/ug_sandbox/

That should cover everything you need to know about testing in the sandbox.

So yeah, they've got lots of documentation, but that's just because they have lots of products and features to offer developers integrating payments into their apps.  That's one of the things I love about PayPal...they're so much more than a typical credit card merchant account.

Anyway, I know you said your problem was solved, but you also mentioned you weren't sure what resources to supply here for others that find this thread.  Hopefully those links will help.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

  • 3
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now