Hi TheRoundhouse,
Thanks for your interest in EE. I will answer your questions below:
- The site will have freely available content as well as some that is restricted to paying members (3 membership tiers). This membership is charged on an annual / monthly basis.
What you are looking to do with paid memberships can be accomplished using native functionality in EE. The Simple Commerce module can now do that.
http://ellislab.com/expressionengine/user-guide/modules/simple_commerce/sc_recurring_payments.html
You may want to look into Membrr which is an add-on that allows for recurring billing and has additional features for managing paid memberships.
http://devot-ee.com/add-ons/membrr-subscription-billing/
- The membership tiers would be used for most users, but sales via partners or spedial offers may provide hybrids (E.G bronze level access with one feature from silver added).
This gets a bit more complex. Again, look at the Membrr add-on to see how they would handle odd combinations
- Where users do not have access to content, they should be shown an excerpt with a prompt to buy or upgrade their membership.
I can think of a few different ways to handle this. Probably the easiest is creating a custom field for the excerpt that everyone has access to view and then creating another custom field that is locked down so that only the paid member groups can view. A dash of conditional logic that checks to see if the person is not part of the member groups that are paid and you could display a login or buy now button set.
- Buying a membership grants access to a business, not just the single user. A designated “primary” user could then add / remove other members to their business and they would inherit access permission based on the business’ membership level.
Another more complex one. Honestly I don’t know of a single system that would allow this for any CMS or cart. Perhaps check with the folks at Membrr. This may be custom functionality but perhaps they can provide that for you.
- Outside of membership, there will be offline events and webinars that members may book places on. These may be free of charge for top tier members, but require payment for others.
The events could be displayed using their own channel. As for processing or controlling who has access to it you could do that through the use of conditional logic. To see how EE handles conditional logic see:
http://ellislab.com/expressionengine/user-guide/modules/channel/conditional_variables.html
- Forums with sections available to all users and others locked down to paid members only.
Easily done. You can change what member groups have access to what forum sections. http://ellislab.com/expressionengine/user-guide/modules/forum/forum_setup.html
- Members able to update their personal profile, “primary” users can also manage the business details that would be displayed on the site.
Members have access to their profiles just like you have access to change yours here on ExpressionEngine.com. Is that what you are needing? Additional functionality might be gained by using Solspace’s User module. http://www.solspace.com/software/detail/user/
- 2 way integration with a CRM system (account details, membership levels, support requests) as there will be a contact centre supporting the business.
This would be custom integration. But someone with some PHP experience and some knowledge of CodeIgniter could probably handle this.
- Usage tracking, so users can see in a dashboard the use they’ve gotten out of their membership. (E.G. viewed 20 articles, watched 5 videos)
I’m not aware of anything that tracks usage based on a specific member. I know we have the ability to count for a specific entry (http://ellislab.com/expressionengine/user-guide/modules/channel/entry_tracking.html). Perhaps a search on Devot-ee would turn something up. Or more custom development.
I do hope this helps. If you have any additional questions just ask away!