How do I test Paypal subscription buttons with sandbox?

stdclass picture stdclass · Dec 30, 2011 · Viewed 24k times · Source

after 5 hours of research and reading outdated paypal documentation I finally give up!

I need to test a simple paypal subscription button with the paypal sandbox.

Button Code:

<form action="https://www.sandbox.paypal.com/us/cgi-bin/webscr" method="post">
     <input type="hidden" name="cmd" value="_s-xclick">
     <input type="hidden" name="hosted_button_id" value="34CXHXVU2J8BY">
     <input type="image" 
            src="https://www.paypalobjects.com/en_US/GB/i/btn/btn_subscribeCC_LG.gif" 
            border="0" name="submit" 
            alt="PayPal — The safer, easier way to pay online." 
            style="border:none;padding:0;height:auto;width:auto">
     <img alt="" border="0" 
          src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" 
          width="1" height="1">
</form>

But when I try to send the form, I get this error on the paypal website:

http://i.stack.imgur.com/AVuTz.png

Thanks in Advance, Phillip

Answer

Robert picture Robert · Dec 31, 2011

The problem is that you've generated a 'hosted' PayPal button in the live PayPal website, but you're sending this data to the Sandbox.
Since the hosted_button_id isn't recognized in the Sandbox, it returns an error.

You'd need to either:

  • Create a non-hosted button, and change the 'action' and 'business' parameters to match Sandbox details
  • Create a new 'hosted' button in Sandbox via www.sandbox.paypal.com > Profile > PayPal Buttons.

TL;DR: Sandbox is 100% separated from the Live PayPal website. A hosted button generated in Live, doesn't work in Sandbox.