Tell me more ×
Answers OnStartups is a question and answer site for entrepreneurs looking to start or run a new business. It's 100% free, no registration required.

I have just started a small software startup and one of my current headaches is the management of licenses that we sell / lease...

I am looking for a system that can manage the billing and contact details for each license -

i.e. what version of a product a customer is on, how we bill them when their software maintenance contract expires,

Can anyone recommend a product that can assist in managing this?

share|improve this question

2 Answers

There are a few ways you can do this. I'll talk about 2.

Method 1: Buy a professional license management product

I'm the founder of the company that makes LimeLM, which can be best described as hassle-free licensing & online activation. You can associate customer data directly with the licenses. For instance, for a particular product key you can add the customer's email, contact info, and when the license is no longer valid (or when they need to renew). Use the LimeLM web API to generate the product key (adding the data), get when a license expires, and update the data when they renew their license (or however you're selling licenses).

That is, you can automate the entire purchase process. Of course you can still manage things manually, but my guess is you're trying to make the licensing, renewal, and purchasing all automated.

This is a solution for people just starting out or looking for a better licensing system. However, from the tone of your post it sounds like you've got a licensing system already. This brings me to the second option:

Method 2: Create a simple database table

This method assumes you have some programming skill and perhaps even a touch of database experience. It's easy enough to pick up -- Google can fill you in on what's not immediately obvious.

The first step is to create a table that will store your product keys. Below I have a simple example table that will keep track of 5 main things:

  1. The product key (pkey)
  2. When the product key was created (ts_created)
  3. The email of the user (email)
  4. The full name of the customer (name)
  5. And when the product key expires (ts_pkey_expires)

Obviously you can expand the table to keep track of more info. But this is a good template to start from:

create table pkeys (
    pkey_id          serial         not null,
    pkey             char(34)       not null,
    ts_created       datetime       not null,
    email            varchar(320),
    name             text,
    ts_pkey_expires  datetime,

    primary key (pkey_id)
) type = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;

After you've got the database table up and running you can write a few SQL queries to insert, search, and update the fields in the table.

Which method to choose?

It's a tradeoff. I personally recommend you go with a professional licensing solution, because it's far easier. But if you're anxious to start learning SQL then I'd recommend you try method 2.

I can only speak for my company's product, but using LimeLM to automate this whole process is truly simple. We have full integration examples both on the client side (C, C#, VB.NET, Delphi, Java, etc.) and the server side (ASP.NET, PHP, etc.). Plus we genuinely care about simplifying our customers lives -- if you need any help getting the integration up and running we will help you out.

We have a free plan if you want to kick the tires and see if LimeLM lives up to my hype.

Tell me if this helps.

share|improve this answer
3  
+1 for including an alternative approach and not just a pitch. thanks. – jimg Jan 11 '11 at 5:24

Have a look at thinkvitamin.com 's Business Category. In particular Recurring Billing for Web Apps lists several Billing Systems and Payment Gateways, with pros and cons.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.