The Inside Story of a Small Software Acquisition (Part 2 of 3)

When we left Part 1, I had emailed the developer of an invoicing software package, asking if he would be interested in selling the rights to his product.

Negotiations
The developer and I began an email exchange that lasted nearly a month. I received screen shots of the revenue for previous months. I reviewed code samples and data models. I played with their online demo, inquired about their customer base, how many copies they had sold, and how much time they spent supporting the product. I put it all together and, using what I know about small software product valuations, made them an offer.

After some negotiating we arrived at a final price. I received the signed contract, sent the funds via PayPal and within a few hours the code base, sales website, and domain names that make up DotNetInvoice (then at version 2.0) were mine.

I don’t think I can properly convey the excitement I felt opening the source code for the first time; the joy of a successful acquisition. If you’ve ever gone through a month-long process of investigating and negotiating a purchase you know how exhausting it is. The hours spent combing through documents and code, negotiating a price, and drawing up and signing document are all spent knowing that there is a high likelihood that the deal will fall through.

I basked in happiness for the entire evening. I called a few friends, began scribbling down ideas for new features, and gazed at the marketing website for hours. The next morning I emailed a few existing customers to inform them of the ownership change and ask for their opinion on a future direction for the product.

That’s the Sound of All Hell Breaking Loose
Within 24 hours I had over 30 replies in my inbox, all of them filled with angry comments about the lack of support and the number of bugs in the software. There were issues with the recurring invoicing, unencrypted storage of data, buggy searches, and on and on.

It felt like someone had dropped a ton of wet cement on my chest…had I just spent thousands of dollars on a complete piece of crap?

Had I completely dropped the ball during due diligence?

After a few hours of panic I arrived at a game plan: email everyone, put together a complete list of bugs, and fix them.

All of them.

Every last one.

There was no doubt that this is where I had to begin to salvage the reputation of the product. At the same time I was preparing to break the news to my wife that I would be sleeping on the couch for the next 10 years until I recouped my investment.

Moving Forward
Within two weeks I had found and fixed 23 major bugs. One of the key issues was with the recurring invoicing piece. The scheduling mechanism is cleverly written to take advantage of the caching functionality of ASP.NET so that it doesn’t require a separate scheduling installation. But it didn’t work.

There were a few logic errors that meant the schedules were all over the place. The bugs were hard to find and took several hours to pinpoint, but the fixes were minimal, often changing a < to a <=.

I also added detailed installation instructions (with the generous help of Joseph Voldeck from www.MadGig.com), since the existing instructions were geared towards experienced .NET developers. The product now includes a PDF with screen shots that walk you through the set up step by step.

With these improvements I released the next version, DotNetInvoice 2.1, as a free upgrade for all customers, even though no one had purchased support.

WHAT?!…No one purchased support?!

The previous owners offered a cheaper purchase option that didn’t include support. The problem is, with or without support, when a product doesn’t work you expect someone to help you. So although everyone had purchased the “un-supported” version, they (rightfully) expected someone to reply to their emails when the product had bugs.

Needless to say, within weeks of taking ownership I removed the un-supported version from the purchase options.

In addition to the weeks of development, I spent untold hours emailing customers asking them for feature requests, offering free support, and trying to regain some confidence in the product. After releasing version 2.1 I finally felt like the product was my own.

I couldn’t have been happier. The new release fixed every known issue, the existing customers felt supported, and a few new sales had rolled in. Things were looking up.

Until the end of the first month rolled around.

(To be continued…)

[tags]startup, software startup, asp.net, dotnetinvoice[/tags]

Start Small, Get Big
Growth Secrets for Self-Funded Startups. It'll Change Your Life.
What you get for signing up:
  • A 170-page ebook collecting my best startup articles from the past 5 years
  • Previously unpublished startup-related screencasts
  • Exclusive revenue-growing techniques I don't publish on this blog
"The ideas and information Rob provides should be required reading for anyone that wants to create a successful business on the web." ~ Jeff Lewis
Startups for the Rest of Us...
If you're trying to grow your startup you've come to the right place. I'm a serial web entrepreneur here to share what I've learned in my 11 years as a self-funded startup founder. Luckily several thousand people have decided to stick around and join the conversation.

For more on why you should read this blog, go here.

7 comments ↓

#1 GadgetGadget.info - Gadgets on the web » The Inside Story of a Small Software Acquisition (Part 2 of 3) on 10.10.07 at 4:07 pm

[…] Eric Buscemi wrote an interesting post today!.Here’s a quick excerptWhen we left Part 1, I had emailed the developer of an invoicing software package, asking if he would be interested in selling the rights to his product. Negotiations The developer and I began an email exchange that lasted … […]

#2 The Inside Story of a Small Software Acquisition (Part 1 of 3) | Software by Rob on 10.10.07 at 7:10 pm

[…] (To be continued…) […]

#3 13 Links Today (2007-10-11) on 10.11.07 at 10:22 am

[…] The Inside Story of a Small Software Acquisition (Part 2 of 3) | Software by Rob […]

#4 reader on 10.12.07 at 2:32 am

is there something wrong with your rss feed? my rss reader has been repeating your articles 10x in the past few days. hopefully it’s not on my end 🙂

#5 The Inside Story of a Small Software Acquisition (Part 3 of 3) | Software by Rob on 10.23.07 at 11:01 am

[…] we left Part 2 I had fixed 23 bugs and released the next version, DotNetInvoice 2.1, to the existing customers. […]

#6 Roy on 11.18.08 at 1:36 pm

Rob,

Great posts about software business acquisition!
Probably the only one on the whole blogosphere.

I have shortlisted a couple of companies that are being ran by programmers. They did a good job with the software but really lacking in marketing which I think I kinda have a knack of.

The question is, do you know of any unobtrusive and subtle way of asking them if they would consider selling the company? I mean if I were to just shoot them an email saying “Hey guys, I wanna buy your company. Let me know how much. Hit me back” I doubt that I will get a reply.

#7 Josh Straub on 06.15.09 at 1:31 pm

Damn, you’re a great writer. Reading this is like reading a suspense novel or something (not that I’ve ever read one).

I really liked the bit about “I released the next version, DotNetInvoice 2.1, as a free upgrade for all customers, even though no one had purchased support.

WHAT?!…No one purchased support?!”

….. as well as the clincher: “Things were looking up…
Until the end of the first month rolled around.”