Ajarn Mark Caldwell Blog

Bringing Business Sense to the IT World…

Organizing Your Business - Getting Paid

As we rapidly approach the end of the first month of 2005, let's talk about fixing some of those Top 15 Business Mistakes I listed a while back.  The first two mistakes on our list are 1) Forgetting to bill the client; and 2) Losing track of unpaid invoices.

Forgetting to Bill the Client
Despite the fact that we're in business to make money, it's amazing how easy it is to forget to actually bill the client for the services you provided.  Often it's because consultants are so busy working or trying to get new business that they forget about the current client, or worse yet, one that they have already finished the work for.  If it's not right in front of us and especially if it doesn't sound like a cool project, we can get sidetracked.  We will tell ourselves, “I'll do that later.”  But later never comes.  This is especially hazardous when you are juggling multiple clients with multiple projects all at once.  You need to develop a consistent habit in regards to billing. 

I tend to work on just a couple of projects at once and typically those run over multiple months.  It is critical that you establish up-front, before any work is done, what the billing and payment cycle will be.  Of course you also need to establish your billing rate.  I like to bill on a weekly basis, with payment “due upon receipt of invoice”.  In reality that often means a one to two week delay before I receive my money.  But I am not in the habit of extending credit to my clients.  In many businesses they have credit terms like net30 or others which give the client 30 days to pay, and may have discounts for paying earlier.  But I find that my clients are all comfortable with the “due upon receipt” clause.  Note that it does not mean that I hand deliver the invoice and stand there waiting for them to write the check.  Most businesses are organized such that they pay their bills weekly or semi-monthly and you will get paid in the next cycle.

Because I work predominantly on a Time & Materials basis, I find it easiest (and most accurate) to set aside time on the same day each week to do billing.  I used to do it on Sundays, but now I prefer to do it late Friday afternoon.  This way I can look back at the past week, review my notes I keep throughout the week about how much time was spent where, and create the invoice.  Either way, I have a recurring Task with reminder in Outlook to remind me in case I get busy and forget or in case I'm gone on a long weekend.  If I do a project on a Fixed Bid basis, then I create a separate reminder to create the invoice and schedule it for the estimated day of completion.  For fixed bid projects I like to deliver the invoice along with the final release of code.

Creating the invoice can be done in many different ways.  If you have accounting software like Peachtree or Quickbooks, then your software probably has an option to create an invoice.  Or you can just go to the local office supply store and they probably have generic invoice forms.  My preference is to create a template in Word which I can use over and over.  Mine is pretty simple with my logo in the header, my business address and phone number in the footer, and top-center of the page is the word INVOICE.  Then my invoice is formatted sort of like a letter (with date, client name and address, etc.) which makes it easy for creating envelopes and mailing (although, these days, I often am e-mailing the Word document straight to the client).  I open with some text stating that this is an invoice for work performed, and include the sentence, “Please remit payment upon receipt of this invoice.”  Most of my clients like to see a breakdown of the time I worked, so I have an embedded Excel worksheet in the middle where I log the date, hours, and a description of work done.  Then I wrap it up with a thank you for their business, and a reminder of to whom to make the check payable (my company name, not my personal name).  Nothing fancy, but it gets the job done.

Losing Track of Unpaid Invoices
You would be surprised how often this one happens, too.  I have actually heard people say, as they're shutting down their business, “I don't understand what happened to all the money.”  Now, that may be poor money management once they received it, but it is also poor tracking of which invoices are not paid.  And you better have a system to deal with the situation where your client says they already paid you.  Can you provide a reconciliation to show that they did not?

This one is really easy.  Make a trip to the local office supply store and invest a few dollars into your business by buying:

  • Box of manila (or other colored) file folders
  • Inked rubber stamp that reads “File Copy”
  • Inked rubber stamp that reads “Paid” (preferably with a box or line on which you can write the date).
  • File Cabinet, file box, or something to hold your files

You can probably purchase all of the above for as little as $50.00.  Now, label one folder Unpaid Invoices.  Label another folder Paid Invoices.  And while we're here, you'll probably want at least one folder per client.  Every time that you create an invoice, print an extra copy for yourself and stamp that one with the File Copy stamp.  Put that copy of the invoice into the folder marked Unpaid Invoices which you keep in your file cabinet or file box so you always know where to find it when you need to.  Whenever you receive payment for an invoice, before you deposit that payment into your bank, take the matching invoice out of the Unpaid Invoice folder, and now stamp it with the Paid stamp and write in the current date.  You might also want to write in the company's check number or some other comment about how you were paid.  If the invoice is now paid-in-full, put it into the Paid Invoices folder.  If the company made only a partial payment, put it back into the Unpaid Invoices folder.  In the case of partial payments, I write the amount that was paid next to the date.  This will lead to multiple stamps, once for each payment, until the invoice is paid-in-full.

Some people like to put their invoices into the client folders.  That's okay for the paid ones, although I prefer to keep my client folders for things like project notes or copies of correspondence.  But if you separate your unpaid invoices into the different client folders then you have to go back through all the client folders to find out which invoices have not been paid yet.  If you have a client who is really dragging their heels, you could be 8 clients and 17 projects later and easily forget that you never got paid.  Ouch!  Keep the unpaid invoices all together in the Unpaid Invoices folder so you can easily and quicly see what invoices are outstanding.

The system here is really simple and inexpensive.  If you have a fancier system, maybe with software, aging of invoices, alerts, etc., etc. that's great, as long as you consistently use it.  Otherwise, set all the bells and whistles aside and use this simple system to make sure you stay in business.  It has worked just fine for me for 12 years now, and I still have the original File Copy and Paid stamps.  I guess I got my money's worth out of them, don't you think?

Legacy Comments

Invoice vs Work Performed
Let me aks this...Do you provide a breif description of the services provided for that invoice period?

Does hourly vs. Flat fee make a difference to you

And would you ever make a flat fee arrangement?

And how do you manage many clients at once? Remotely? On site? If it's on site, what's the furthest you would travel?

And if it's remote (your place) what type of infrastructure do you maintain at home?

re: Organizing Your Business - Getting Paid
Brett, good questions. I'll see if I can answer each one here.

Yes, when I do a date and hours listing invoice, each line item contains a description of work performed. If I'm working on multiple projects for a client, then it might just be the name of which project I worked on. Usually I also include a brief description such as "Analysis & Design", "Documenting Specifications", "Unit and Integration Testing" or things like that. I try to list things in terms that will be most meaningful to the client.

If I'm billing a flat-fee or fixed-bid, then I skip the day by day breakdown and instead my invoice is a simple letter recapping the work done and the amount that we agreed to. I really like to send this along with the final code drop so that the letter is more of a project wrap-up with reminder to pay instead of just a one sentence "Please pay me now" letter. Either way, though, I keep a copy of this in my Unpaid Invoices folder until I receive payment.

I have done flat fee agreements in the past and am open to them in the future. However, they take more planning and communication so that you don't find yourself caught in the project that just won't die and you're losing money radically. I know some people who do a flat-fee with maximum hours arrangement for maintenance contracts. Basically the agreement is you pay me X amount of dollars every month and I'll do up to Y number of hours of work for you. Any hours beyond that are at my normal hourly billing rate.

When I'm working with multiple clients, it is typically from home with occasional on-site meetings. I have done multiple clients that wanted me to work only on-site, and then I have to setup a particular work schedule such as Monday & Tuesday for client 1, Wednesday & Thursday for Client 2. Or Client 1 from 8:00 AM to Noon. Client 2 in the afternoons. That can be tiring with the travel and paradigm shifting you have to do, but hey, whatever it takes.

For on-site work, it depends on the rate and length of project. Because I have other business obligations, I am reluctant to travel out of town for more than a few days, so we have to be talking about some serious money to entice me. I once did a month-long project in San Francisco (I'm based in the Seattle area) and it went well, but I was really glad to get back to my normal surroundings. Living out of a suitcase is not glamorous. The last couple of years I have worked with a client in San Francisco where I flew down a few times per year for 3-4 day visits, but otherwise worked from my home office.

My infrastructure is not fancy. 95% of what I need is on one Dell laptop computer including SQL Server Developer and VS.NET. I have a second machine that acts as a server with another SQL Server on it, plus my source code repository. But I keep local copies of any current projects. I'm thinking about getting a newer, faster server machine, but haven't spent the money yet. Its dominant function is as a print and file server. I have a dock for the laptop that plugs into a KVM switch so I use the same keyboard, monitor and mouse for both computers. I have DSL service here, plus I have Wi-Fi service through T-Mobile which let's me jump online in just about any Starbucks in the country. I use WebHost4Life to host my public web sites (except this blog which is a part of the SQLTeam Weblogs that Bill Graziano manages). I've thought about getting all kinds of additional servers, TabletPCs, and other gizmos but money and space constraints have hindered my shopping spree. Of course I also have my Palm Tungsten C which I keep synced with Outlook and two 2.4 Ghz cordless phones so I can pace while on long conference calls. Oh, and let's not forget a fridge full of XS Energy Drinks to keep me going.

re: Organizing Your Business - Getting Paid
If you used Peachtree or Quickbooks or Quicken Home and Business your invoices would be tracked etc and it would be easier to tell who paid and who didn't. Just a suggestion.

re: Organizing Your Business - Getting Paid
Ryan, I agree, that's another good way to go. There are many different systems one could use. This is just my experience. Years ago I used Peachtree for a while, then went away from it as I realized I didn't need all the features it offered. I have been using older versions of Quicken Deluxe, and just last week I ordered the upgrade to Quicken Home & Business to check it out. But for those who are starting like I did 12 years ago on a shoestring budget, this simple paper method will at least get them started. And even when I used Peachtree in the past, I still printed a copy of the invoice and put it in the folder at the same time I mailed the original to the client. It was a check-and-balance for me to verify that I did actually issue the invoice to the client and had a copy of the original in case the client ever disputed it.