Solution 1 :

If you want to specify that a payment should be recurring, then the checkbox on your site that makes the donation recurring will need to convert the button into a completely different type– a “Subscriptions” button. That is the only way for you to specify that something is recurring before the buyer reaches PayPal.

The other way of starting with a Donate transaction and having it become recurring, only works for:

  • transactions of type Donate (not Buy Now)
  • when the amount is NOT pre-specified before redirecting them
  • when the user selects this recurring checkbox at PayPal

All three conditions are necessary and required for this type of recurring donation to be possible.

Problem :

I have a requirement to capture some info about a donation before the user is redirected to the payPal page, and to pass some of that info through to the page. The three main things is the amount, currency, and whether or not it should be a reoccurring payment. We want to have the user specify that detail before clicking “Donate”, and then have that info sent through to PayPal to repopulate the page.

I have managed to achieve some of this by using the “Buy now” button, instead of the “Donate” button, and just displaying the Donate image. With that I can pass through the amount and currency, but can’t set reoccurring payment it seems. At least, I don’t know what the form input should be called for that option to take effect on the PayPal side. In order to do this, I had to set a couple of options when creating the “Buy now” button. I think the one was to not keep inventory or something like that, and on the page where I can copy the HTML I had to effectively unlock it. But there are no such options on the Donate button creation flow. So when I try to pass amount or currency through to the Donate page, it doesn’t do anything.

I tried removing the button_id hidden input, but that just breaks the whole thing.

Is there any way for me to capture those three pieces of information – amount, currency, and whether or not it should be a reoccurring payment – on my site and pass it through to the PayPal screen upon redirect?