[Announcement] Billing Module for your SaaS web application is here: ServiceMerchant

[Announcement] Billing Module for your SaaS web application is here:
ServiceMerchant

== In two sentences

ServiceMerchant is open-source library, developed in Ruby, which takes
care of recurring billings and subscriptions of your SaaS
application.
The library sits on top of well known library ActiveMerchant and
therefore gives you the variety of choice among payment providers.

== In more details

ServiceMerchant consists of number of well-defined reusable
components, and may be used either as entire library or in chunks.

The components include:

  • Wrapper around ActiveMerchant to unify RecurringBillingAPI across
    implementations of various payment providers
  • Tracker (or local storage) of subscriptions which were sent to
    payment provider of choice, with the synchronization of renewals (with
    CSV import for those providers who do not allow API for pulling such
    information)
  • Tariffication component allows you to configure your service plans
    in number of ways, covering most of SaaS application. We also track
    taxes, should you need it.
  • sample UI implementation (webpages) so that user can view his
    billing profile, admin (back-office) pages to get the insight of
    failing and successful subscription statistics.

The library does not store the credit card PANs in local storage
(relying to payment service provider), which simplifies your PCI-
compliance a lot.
At the moment, the wrapper around ActiveMerchant only supports mapping
to Authorize.net and PayPal, but other supported by ActiveMerchant
gateways are mapped in minutes.

== Project status

This is the first public appearance of the library. This is version
0.1 of it. The library is provided as is. Though the unit tests
coverage is quite comprehensive, we advise that you apply your own QA
before going live. We will be happy to receive any issues and include
it into the development roadmap.

Also in roadmap:

  • create the component of real-time consumption information (at the
    moment, the functions allow to check the quality and quantity of
    service the specific user is subscribed to, but no information how
    much was already used and what is remaining)
  • online registration component (for new users and invites under
    corporate accounts)

== Resources

http://servicemerchant.org – project website

http://gothub.com/itteco/service_merchant – source codes on github