In Civi 4.6.12 I am testing recurring PayPal Pro payments for a membership.

A simple recurring contribution works OK once CRM-16698 in place.

However when testing with a new membership, no option for auto-renew appears. CRM-17197 fixed a similar issue when a price-set is used. Any suggestions for fixing this without a price-set?

Thanks, Chris

  • I've found that enabling Pay Later on the contribution page is what is stopping the "Please renew my membership automatically" checkbox to appear. Does that sounds right? With an optional auto-renew, I'd simply expect opting for pay later to disable this checkbox. In 4.6.14 this is around line 927 in CRM/Member/BAO/Membership.php With Pay Later disabled, the checkbox is readonly (even though Auto-renew is optional for the membership) - not tracked down why this is yet.
    – chriscant
    Commented Mar 24, 2016 at 15:18

1 Answer 1



I just tested this on my site, and you're right.

If you have the "Pay Later" option selected, the auto-renewal checkbox does not appear.

The checkbox should always appear, and then when the page goes through verification if 'Pay Later' is selected, and the 'auto-renew' box is selected, that should throw an error to the user.

I've created an issue report on this:


  • Thanks. There's also the problem of the checkbox being readonly and checked when auto-renew is optional which I'm seeing on 4.6.14, which also needs sorting. I haven't had a chance to look at this any more yet.
    – chriscant
    Commented Mar 26, 2016 at 14:59
  • Sorry, ignore my last comment: I must have accidentally chosen Required at some point in my testing.
    – chriscant
    Commented Mar 29, 2016 at 8:58
  • In JavaScript I can untick and hide the auto-renew box (and show it again). However I don't know where the verification happens server side. Here's an addition toggleConfirmButton() in crm/contribute/form/contribution/Main.tpl ie before the line if (flag === true) { if( processorTypeId==0){ cj("#auto_renew").prop('checked', false ); cj("#allow_auto_renew").hide(); } else { cj("#allow_auto_renew").show(); }
    – chriscant
    Commented Mar 29, 2016 at 14:50
  • I added the patches as shown in issues.civicrm.org/jira/browse/CRM-18299 and the auto-renew option now displays properly. The system will throw an error if auto-renew and pay later are both selected by the user.
    – Neil Z
    Commented Apr 1, 2016 at 13:27
  • Just a note that this behavior has always existed: See issues.civicrm.org/jira/browse/CRM-14924. Commented Apr 1, 2016 at 14:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.