Subscription Services

Permalink
c5 has all I need except a subscription add-on. Joomla and Drupal have very buggy versions, not reliable enough to take live IMHO.

The process always breaks down when a new member signs up. Either the new member has to wait for Admin to mark them "approved" (even after paying) or the payment process itself leaves much to be desired.

The thing is, when you deal with other people's money everything needs to operate perfectly. In the ballpark is unacceptable.

I'll post some notes on features later . . .

Hondo69
View Replies:
Hondo69 replied on at Permalink Reply
Hondo69
The member sign-up must be fluid and fast regardless of the type of subscription being sold. Members will (1) click on "sign-up" (2)taken to payment page (3) complete payment (4) allowed immediate access.

This obviously requires integration with PayPal or other processors.

Different users of this add-on will want to offer different subscription types: monthly, yearly, life, etc.

The add-on will need to keep up with subscriptions by monitoring those that have expired, about to expire, etc. so they may be auto-notified as needed via email.

Cancellation of a subscription can be tricky business. A member who signed up for a year may want to cancel after a month. Each site owner will need to determine their own cancellation policy and have a mechanism to deal with that policy.
ScottC replied on at Permalink Reply
ScottC
send me a message about this, I have to write one anyways, but i am looking forward to feedback and feature-sets one would need.
PhilYoung replied on at Permalink Reply
PhilYoung
Hi Scott, Have you done any more work on a subscription package? Seems like I could use ecommerce but a dedicated package may work better. Best Phil
PhilYoung replied on at Permalink Reply
PhilYoung
oops
Hondo69 replied on at Permalink Reply
Hondo69
There are many subscription types:

One site might sell photos and allow everyone to view the photos, but allow only paid members to download them. This is tricky because you need to eliminate someone from doing a copy/paste with the photos.

Another site might have a members only area where access is restricted according to type of member. A cheapie subscription allows access to some pages, a better subscription to even more, and a jumbo subscription allows access to all pages.

A project I've shelved for over a year requires yet another type of membership control. It allows paid members to download many file types: images, Excel, Word, PDF, etc. The tick is I want all site users to see the files, but only allow members to download them. This allows the non-paying site users to see a snapshot of what they are missing.

In short, a subscription add-on must be very flexible.
Mnkras replied on at Permalink Reply
Mnkras
The eCommerce addon can add them to a group one they purchase a subscription, and then C5 can auto remove them from the group after a certain time
alanski replied on at Permalink Reply
alanski
This sounds great.
But the remove from group option is a blanket removal on a specific date is it not?

How can this be set to 12 months/365 days date of purchase?
alanski replied on at Permalink Reply
alanski
Just thinking about this som emore - I dont even have A C5 site by the way but am exploring heavily.

Can a hidden user attribute for individual users (ie members) be updated from a successful purchase of a subscription/membership?

In Joomla we might do this with a system event plugin that captures some post data and then updates the user record once a sucessful purchase has been made. How would this work in C5?
Mnkras replied on at Permalink Reply
Mnkras
yes, you can make a date user attribute, then make a cron job that removes them from a group if the current date is past [purchasedate]+[timeingroup]=[timeof expire]

[timeofexpire]<[currentdate] remove em
andrew replied on at Permalink Reply 1 Attachment
andrew
No, the timed group options will fit this. You can setup the group to have group expiration once a certain amount of time has passed. Check the attachment.
alanski replied on at Permalink Reply
alanski
Thanks Andrew.
Silly confusion misreading of interface by myself.

Are you saying that setting 365 days in the screenshot you show will expire an individual from that group from the date that individual signed up?

I read it as the group expires en masse 365 days later....

Great if its an individual 365 days from the date they joined.
andrew replied on at Permalink Reply
andrew
It is the individual. Any user added to that group will be removed from the group after 365 days from the date they were added . Additionally you can Also set it up so that those users expiring are deactivated
jgaris replied on at Permalink Reply
I am trying to do this right now, but am running into a roadblock. I created a group that removes the user after 7 days. I created a product that adds the user to this group when they purchase.

The problem is that no user account is created when they checkout, so they never get added to the group.

Am I missing a step? How do I require login or registration before checking out?
ideasponge replied on at Permalink Reply
ideasponge
The biggest trick with this is handling the recurring billing. c5 does not store payment information so this needs integration with some payment service that does. PayPal has a subscription service but right now c5 does not have a Website Payments Pro module for PayPal, which I believe is required to pass subscription info to PayPal.

The way I envisioned it would also require a new page for Subscriptions within the eCommerce package for c5. This would allow c5 to keep track of the subscription ID's within your PayPal account, and allow you to perform necessary administration to them as needed.

I attempted to have one created near the end of last year but the developer flaked out on me after taking $900 of my cash :(
frz replied on at Permalink Reply
frz
the recurring billing part of this problem is no joke and i highly doubt any solution can be built that wont require some human to fix weird edge cases as you go.


if you store credit cards locally, you're making a huge mistake and you have to also pass PCI testing which can be quite expensive.

if you dont, some merchant providers let you rerun transactions by ID, so hypothetically you could do the recurring from concrete5 and then know what to do if it fails...

OR you might find that a merchant provider has a gateway that can do a call back to somewhere when a transaction fails...

any way you slice this problem its going to take a few weeks of careful head scratching to get it right and it will give you a solution that works but needs constant attention.
chrisjterrell replied on at Permalink Reply
chrisjterrell
Did this every get anywhere I know it has been almost a year. I would be very interested in a product that did this through Auth.net or Paypal.
jeckerman replied on at Permalink Reply
jeckerman
Not saying it's impossible, but after just glossing over the PayPal Recurring Payments API, rules, and limitations based on such and such criteria. It's a lot of head scratching...

I like Google Checkout's implementation of recurring payments, but it's in beta...

- Josh
webaanleg replied on at Permalink Reply
webaanleg
I built this simple add-on which has been approved recently:

https://www.concrete5.org/marketplace/addons/paypal-membership-subsc...

It uses Paypal Subscription services, adds user to a group when payment is received (mostly instantly) and is very user friendly.

It just might suit your needs...