Due to extreme lack of time my blog is going to be quite boring for the foreseeable future. With what little time I have I'll try and keep people up-to-date with how things are going on the sales process rennovation front...
Because Adaptavist has been growing so quickly, our sales team have been literally swamped in sales enquiries. We're roughly doubling our sales turnover each month - something that we didn't expect until the end of 2007 - and as a result our sales process has crumbled under the strain.
To solve this we realised that we needed to radically alter the sales process, incorporate more automation and give more control to our clients over their invoices, etc.
So, not being afraid to take on insanely complex projects, we decided to turn Confluence in to a full e-commerce system with a bunch of new plugins.
Product Catalogue
This module is pretty much complete, although it'll need some polish before it goes live.
At it's most simple level, the catalogue contains a list of products. Each product defines the usual information such as currency, unit price, product code, description, etc.
As with any product catalogue, products can be arranged in to categories. Categories can be nested and products can appear in multiple categories.
Products can also be nested to create bundles such as Confluence + Builder + Hosting. This proved a little tricky at first - we had to deal with the fact that different items in a product were in different currencies. So, if you buy Confluence + Builder those items are in USD and GBP respectively, but the resulting bundle had to be in a single currency and have a single price.
In addition, we also nedeed to deal with various types of discounts and mark-ups. For example, resellers will get discounted prices when they purchase from us. When we sell products from other companies, such as Confluence from Atlassian, we get a discount from them and have to mark the price back up by 10% or 20% to make the sale profitable.
Anyway, to cut a long story short, we've developed a sweet product catalogue that can deal with everything we've thrown at it.
Shopping Cart
There's no point in having a load of products defined if we can't display them and allow people to buy them. That's where the cart comes in - it has macros for displaying products, categories, etc., and a nice shopping cart in to which you can place them.
One of the big time consumers we had was giving quotes in the buyers' currency - the shopping cart provdides a macro that lets you choose what currency you want and updates all prices throughout the site to that currency.
The shopping cart still needs some polishing before it goes live, but it's pretty much done.
One unusual feature of the shopping cart is that it can submit your basket to the payments module (see later) as either an quote, pro-forma invoice or invoice...
Payments Module
Invoices are passed in to the payments module from the shopping cart and, at a later date, a invoice creation module (eg. for bespoke work) and our hosting system (eg. when your current hosting schedule needs renewal).
Well, we say invoices, but that's not exactly true. They can be flagged as a quote, pro-forma or invoice so now clients wanting any of those items can get them immediately from our website without needing to wait for us to produce them. This automates another major time consuming task as clients can now go through the entire quote -> pro-forma -> order -> invoice process, for example, without needing to wait for our sales team.
Internally we refer to these documents as "invoices" regardless of their current state. You'll see the same reference numbers used on a quote, pro-forma or invoice making it easy to keep track of a document through its lifecycle.
The system has been made flexible enough to handle every single type of request we've had since our company was formed so that regardless of your purchasing process our payments module will fit your needs.
The payments module reviews data passed in and asks for any missing information - for example, if you've not got a user account here on adaptavist.com it'll create one and ask you for billing and delivery details, etc. It also allows you to specify your own references such as a purchase order number, etc.
The module also allows you to review your quotes, pro-formas and invoices online as you'd expect. We've taken this a few stages further because it also allows you to see progress on them - down to item level! You can see each payment made against an invoice (eg. for split invoices where part is paid in advance, part on completion, etc) and for each item you can see if it's waiting for payment, in progress (eg. license keys being sent) or completed.
The payments module is still under development (probably a few weeks more work required on it) but it's already shaping up nicely.
Deliverables Module(s)
This is an internal module that helps us keep track of deliverables. When items on your invoice need to be actioned - eg. if we need to deliver a license key or start work on a bespoke plugin - one or more "deliverables" are generated. These deliverables are essentially a breakdown of all the tasks / products / services required to complete the delivery of an item on your invoice.
This bit of the system was only started today so again it'll be a few weeks before it's ready for use. We realised that there's no point in having a well-oiled sales process if we fall down when it comes to delivering. There have been times in the past where, for one reason or another, we've received payment and had delays in delivering things due to things getting overlooked - the deliverables system will prevent that from happening again.
The deliverables are split in to categories which allow certain tasks to be automated. For example, we're going to wire hosting deliverables directly in to our hosting management systems wherever possible so if you add more RAM, it gets added automatically.
Hosting Control Panel
Not specifically related to our sales process, but worth a mention. We've been working on a new control panel for clients using our shared hosting services that will allow you to list your hosted applications, view log files, restart them, etc.
At some stage we expect that this will get more interlinked with the sales system so you'll be able to quickly upgrade RAM, etc., on your hosted applications directly from within the control panel.