views:

64

answers:

3

Hi

I am investigating potential Rails plugins or Gems to help develop a SAAS type app. Specifically I am looking for help in two areas:

  1. Restricting access to certain areas of the app based on the account's plan. For example, a bronze account allows access to some functionality, upgrading to silver unlocks access to new features and functionality. Basically, just controlling what accounts have access to what controllers.

  2. Managing subscriptions, invoicing and taking payments. This app will be charging on an annual or quarterly basis, there's a 30 day free trial with no payment details needed up front, and I think the intention is to use PayPal Website Payments Pro (although that is not set in stone).

Given the above, can anyone recommend any Gems or plugins? I have had a look at the SAAS Railskit and I am not opposed to spending a bit of money. However, I'd certainly want to hear good things from people who have used it first, and also how easy it is to pick appart the Railskit and apply it to my own application (as I am not starting from scratch here - needs to integrate with Authlogic too).

Thanks in advance for your help.

A: 
Josh
Thanks for your answer. I'm aware of active merchant, but to be honest I was looking for something a little more - something that can handle not just payment processing, but also billing, free trials and that kind of thing.As for authorisation, do you know if either declarative_authorization or CanCan allows you to authorise on two different models at once? (ie, authorize the Account AND also authorise the User - an account has many users and each user has different privileges)
aaronrussell
A: 

You would also need subdomain routes, for restricting your user into its own subdomain.

jpartogi
A: 

My SaaS Rails Kit does integrate well with pre-existing apps... many of my customers do that. And the testimonials at the site are real. :) Plus there are many other similar testimonials that I haven't published -- a lot of good things have been said about it. :)

Benjamin Curtis