Some weeks back we discussed a few innovative ways of using WordPress for small business administration.
A lot of people seemed to dig the idea of running an invoicing platform on their WordPress site, so I thought I would explore this in more detail.
As a freelance writer who has to bill multiple clients on a weekly basis, this is something that I’m personally quite interested in. So I’ve decided to try out a DIY invoicing system on WordPress and see how it works.
For an out-of-the-box billing platform that fits snugly into your existing WordPress site and doesn’t require any coding on your part, it boils down to a choice of three plugins:
There are some other lesser-known plugins out there, but these three are the established big boys of the WordPress invoicing market.
According to the WordPress plugins directory, the current version of Web Invoice is only compatible up to WordPress 3.1.0, and several people have reported that the plugin isn’t working on later versions. So that effectively narrows the choice down to two.
For the purposes of this tutorial I’ve chosen WP-Invoice, developed by the team at Usability Dynamics. It’s the oldest and best-known of the three plugins, gets good reviews most of the time, and at first glance seems to have the richest set of features.
You can check out this video from the plugin authors to get an idea of how it works.
If you’re interested in using the WordPress 3 Invoices plugin instead, have a look at this article on WordPress tools for freelancers.
Installing and Configuring WP-Invoice
I’m running this demo on a clean installation of WordPress 3.2.1 with the Twenty Eleven theme. WP-Invoice should work with any WordPress theme.
First things first. You’ll need to create a new page on your WordPress site where your invoices will be displayed. How you want to do this will depend on the design of your site and what sort of content you publish, but for the sake of simplicity I’ve just added a new blank page on my blog and named it ‘Invoices’.
Now you need to install the plugin. You can use an FTP client if that’s your preferred method, but the easiest option is to simply search for the plugin through your WordPress dashboard.
Once WP-Invoice has installed, click on ‘activate plugin’. You’ll now see your new ‘Invoice’ panel in the left sidebar of the WordPress dashboard.
Before you start creating invoices, you’ll need to go to the ‘settings’ panel and configure your billing system.
There are lots of optional tweaks you can perform here, but at a bare minimum you’ll need to specify the following information:
- Your business name
- Your contact email address
- The currency you are billing in
- Your payment gateway (WP-Invoice supports PayPal and Authorize.net)
- Which page of your WordPress site the invoices will be displayed on
- The tax rate, if you’re charging one
Creating an Invoice
Click on ‘add new’ to create your first invoice. You will be prompted for the email address of your client, which will be used to notify them of your bill. Remember – you use your client’s email address here, not your own.
In the ‘User Information’ panel on the right side of the screen, you can fill in the applicable contact details for your client. This is just for your records though – the only required piece of information for sending an invoice is the email address.
You create an invoice much like you create a new page on your blog. You can add a title, and in the text editor you can leave a personalized message for your client.
Beneath the text editor is the panel where you add an itemized, line-by-line list of the services or products you are billing for.
Below that, the ‘Payment Settings’ panel allows you to choose how you will accept the funds. (You need to have already nominated your PayPal or Authorize.net account in the Global Settings).
You can also give your client the option to choose which payment method they use. Toggling the advanced payment options simply allows you to change the currency of this particular invoice.
Once all the details of your invoice are in order, go to the ‘Publish’ panel in the top right corner of your screen. Here you can nominate a payment due date, give your client the option to make a partial payment, and set up a recurring billing cycle for the invoice. When everything looks good, click ‘Save’.
Sign up for more
Notifying your client
Once you’ve saved your invoice, the ‘Send Notification’ panel will appear above your text editor. You can choose an email template here: the default options are ‘new invoice‘, ‘reminder‘ and ‘send receipt‘. (You can write your own custom email templates in the WP-Invoice settings panel).
If you like, you can edit the default text in the email, or simply click ‘Send Notification’.
When your client receives their notification email, this is what it looks like:
Clicking on the email link will take the client to the Invoices page of your WordPress site, where they will see a basic summary of your bill.
Below the invoice is the payment interface, where the client can fill in their details and pay the bill through the gateway you have specified (PayPal in this case).
Recording payment of invoices
Once the client has paid your invoice, you will be sent a notification email. To record this payment on your WordPress site, go back to the invoice editing page and click ‘Add Payment/Charge‘. Enter the relevant details and then click ‘Process Charge/Payment‘.
Done and dusted. That’s the end of the invoicing process.
Keeping track of who owes what
Sending invoices is easy – keeping tabs on your finances is hard. The WP-Invoice plugin has a ‘Reports’ function, which uses a graphical interface to show what money you have collected and what’s still owing. Once you’ve sent a few invoices it can also give you statistics on your most valuable clients and highest grossing products or services.
The verdict on WP-Invoice
What I would very much like to see included in a future release of WP-Invoice is some sort of expenses tracking functionality, where you can record the money that you’ve spent running your business as well as the income from your clients.
Expenses tracking is a feature of hosted billing platforms like Freshbooks, and it’s an absolute Godsend at tax time.
Apart from that, there’s not much else to complain about with this plugin. If you’re paying a monthly fee to use a third party billing app, now might be a good time to save those pennies and start running your own show.
Have you used WP-Invoice or a similar plugin on your WordPress site? Let us know how it’s worked out for you.
Thanks to Dave Dugdale for the feature photo.