In our last newsletter I mentioned that I was working on a new add on product for mojoPortal named Site Membership Pro.
I've received quite a few emails expressing interest in this product and I'm happy to report that the first release is ready to ship and will be available soon in the mojoPortal store.
However, Site Membership Pro depends on a few small changes I've recently implemented in the core of mojoPortal, so I'll have to wait until after the next release of mojoPortal before I can make it available. My plan is to make a new release of mojoPortal soon, I'm going through our project tracker looking for small things I can complete to round out a new release to make it worthwhile upgrade.
In the mean time, I've created a demo site to show the public facing side of the feature at smpdemo.mojoportal.com. You can also try out the back end administration of the feature on our main demo site where you can login as the administrator, but you'll need to add it to a page manually and then you will see the "Settings" and "Manage" links.
What Is Site Membership Pro?
Site Membership Pro provides additional functionality on top of mojoPortal to make it easy to monetize access to your premium site content.
mojoPortal already provides role based security so that you can use roles to protect your premium content. For example you could create a role named "Members Only" and you could set that role as the only allowed View Role on pages in your site that contain premium content. However, managing the roles assigned to a user is a manual process in mojoPortal that can be done by Administrators, Role Adminsitrators or Roles That Can Manage Users. So one would have to go to each user who should be given access to premium content and add the user to the "Members Only" role.
Site Membership Pro provides the missing pieces to make it easy to sell membership subscriptions and automatically grant the user the role or roles that provide access to the premium content on your site when they complete a subscription purchase.
You define Membsership Levels which have a name and one or more roles that are provided with this level of membership. You could keep it simple and just have one level for "Members Only", or you could have multiple tiers of access like Gold, Silver and Bronze each providing different roles that protect sections of your site content.
Then you define Membership Product(s) which grant the user one of the Membership Levels (and the associated roles) for a specified number of days for a specified price. Products can be enabled or disabled and they can have begin and end dates that determine when they are on sale. A grace period can also be specified on the product such that users are not removed from the granted role(s) until after a certain number days after the actual expiration date.
When a user pruchases a membership product they are immediately granted the roles provided by the membership level when the payment has cleared. The begin and end dates of the membership are set at the time of purchase and a background task handles removing roles from the user when the membership expires or the grace period is over (if the user has not renewed).
You can also configure notifications on the products so that users can recieve reminders when their membership is coming up for renewal. Reminders can be configured as a specific number of days before or after either the end date of a membership or the end of the grace period. You can create multiple reminders per product so that you have a series of them to encourage renewal.
You can also define reminder templates for plain text email messages. Templates support some token replacement and you must assign a template to a reminder in order to save it. So the reminder will send a plain text email replacing the tokens from the template at the scheduled time if the user has not renewed.
The same background task that manages removing users from roles if their membership expires also handles sending the reminder messages.
Note that the reminders are intended to provide a link back to your site so the user can renew his membership before it expires. To renew, users have to go through the checkout process. Site Membership Pro does not retain any credit card information and does not automatically charge cards to renew subscriptions. Possibly in the future we will look into available APIs from PayPal and others for recurring payments but we have no plans to retain credit card information in the future. The risks and liability potential involved with retaining credit card information without proper infrastructure and staff to secure the data far outweigh the fact that it would be nice to be able to do that.
Since users probably don't want to go through the checkout process every month it is recommended to structure your membership products with fairly long durations like 6 months or one year as opposed to a month at a time. Free products are also supported so you could have one product that provides a free trial of Premium Access for a limited number of days and a One Year Subscription for $120 for example. You can also mark a product as available only for new members, so that existing members can't get the free trial offer.
Supports Authorize.NET, PlugNPay, PayPal, Google Checkout - ie the same payment systems supported in all mojoPortal ecommerce products (WebStore, Event Calendar Pro, Web Invoice Pro). I'm also investigating adding support for WorldPay for all our ecommerce products in the near future.
The initial release will support MS SQL and MySql, other database platforms may be supported later depending ion demand.
What Site Membership Pro Does Not Do
Site Membership Pro is NOT a replacement for the site registration system. User's must register or sign in to purchase premium membership, so they need to go through the normal registration process first to get a free account, then once they complete the membership purchase they are immediately granted the roles provided by the membership.
Site Membership Pro is not involved in protecting your premiumm content, that is done by configuring roles that can view pages in your site and is built in functionality of mojoPortal.
Site Membership Pro does not retain any credit card information and cannot automatically charge cards when membership renewal is due.
Site Membership Pro does not prevent an Administrator, Role Administrator or Roles That Can Manage Users from adding or removing users from roles.
Follow us on twitter or become a fan on Facebook