Search code examples
ruby-on-rails-3subscriptionrecurring-billing

How do I handle recurring/subscription billing in a Rails App?


I can't use Chargify, Recurly, Spreedly or any of those apps because I am not based in the US. I am in Jamaica, actually...so many of these companies don't support Jamaica.

But I am trying to roll a custom subscription management solution - but given that this is my first web app - I think it might be too big a task for me to take on.

Are there any gems that can handle this? These are the requirements:

  • All users registered automatically get on a free plan for X days
  • Towards the end of X days, they should be prompted to upgrade
  • If they don't upgrade, at the end of X days their account gets locked/disabled
  • If their account is disabled, they can upgrade and be taken to a checkout page (powered by 2checkout, because that is who I have to use for now).
  • Then once they upgrade, and have selected a plan, the system should automatically increase their allocations (# of clients, # of projects, storage space, etc.)

So I don't need the system to actually handle the processing of the credit cards, etc. It's more the logic of the subscription, restrictions on the models, upgrading and downgrading that I need.

The perfect solution would be a well supported Rails gem that I can include in my Gemfile.

If you don't have that, just send any/all possible solutions and I can take it from there.

Thanks.


Solution

  • You can look into Saasy. It's a stand alone Rails app (not a plugin) that you host on a subdomain and communicate with it using SSO/REST protocols. Probably won't fit your need as it is, but you may be able to extend it or get a general idea of how it works.