I'm looking into providing a monthly membership subscription system with online recurring payments. I built one a couple of years back in Drupal 8, using Braintree Cashier and Braintreepayments.com and I'm looking at porting this functionality to Backdropcms.

[I looked at https://forum.backdropcms.org/forum/ecommerce-simple-recurring-membership but that seems to be rather outdated now.]

I'd originally selected Braintree as it was the only way I could successfully authenticate a recurring monthly payment, and the customer insisted that PayPal should be an option. My first attempts were using Commerce and Recurring Payments, but I couldn't get it to work with any of the payment systems I tried (per-transaction fees, like Stripe and PayPal). The customer has a modest income stream and a fixed monthly charge gateway wasn't what they wanted.

I'm wondering if there has been any successful builds of an online membership subscription that I could explore. The system needs to:

  • take an online payment, using either PayPal or card;
  • successful payment changes the user role from 'registered' to 'subscriber';
  • the payment should recur every month thereafter, until the user cancels;
  • on cancellation, the user role changes back to 'registered' and receives an email to say goodbye.

I'm happy using Rules to build the flow, but the payment system must be able to provide notification back to the website when payment is successful, or the user cancels the subscription.

Any suggestions most welcome!

Most helpful answers

It might be overkill for what you are trying to do, but CiviCRM integrates with Backdrop and it has an entire membership system with various bells and whistles. Part of the integration allows you to automatically (e.g. on cron runs or on login) sync contacts that have active memberships with a specific role on the Backdrop side.

I'm also looking for a membership subscription functionality...

Just having a look at the membership entity - https://github.com/backdrop-contrib/membership_entity - I'll be having a play with this over the next few days.

There's also Ubercart Recurring - which hasn't got a full release yet - https://github.com/backdrop-contrib/uc_recurring

Also thought about porting Drupal MoneySuite - https://www.drupal.org/project/moneysuite -  but this looks quite old as well.
 

Comments

I'm also looking for a membership subscription functionality...

Just having a look at the membership entity - https://github.com/backdrop-contrib/membership_entity - I'll be having a play with this over the next few days.

There's also Ubercart Recurring - which hasn't got a full release yet - https://github.com/backdrop-contrib/uc_recurring

Also thought about porting Drupal MoneySuite - https://www.drupal.org/project/moneysuite -  but this looks quite old as well.
 

Thank you @DrAlbany - some good suggestions there and I wasn't aware of these modules. Will investigate further, but I'd be interested in what you learn from membership_entity.

It might be overkill for what you are trying to do, but CiviCRM integrates with Backdrop and it has an entire membership system with various bells and whistles. Part of the integration allows you to automatically (e.g. on cron runs or on login) sync contacts that have active memberships with a specific role on the Backdrop side.

Thanks @laryn - I've looked at CiviCRM many times over recent years but each time conclude that it's too complex for my relatively simple needs. Might take another look though, since integration with Backdrop is good.