How to invoice as a freelance developer (3 things I’ve learned)
I love my job as a freelance developer but invoicing each month can be time consuming and complicated. Here are some tips I’ve learned along the way.
Consider registering a company
Invoicing as a company instead of an individual gives you a lot of tax advantages. It’s pretty easy to do these days. I became an Estonian e-resident and set up a company there for a few hundred dollars. The process was all electronic and was really simple. Now I can bill as an Estonian company and save on VAT and income tax. I use LeapIn as my online invoice- and accounting firm and Holvi as my digital bank. Each month I create an invoice in LeapIn and send it to my employer. They pay my company and all the taxes are handled by LeapIn.
Charge daily not hourly
If you agree to a daily rate you have a bit more control over the hours you work. You can leave each day at a normal time knowing that this is covered by your contract. It’s easy to work more hours than you’d like to when using an hourly rate. Try a daily rate instead.
Automate your timesheets
By far the most time consuming aspect of invoicing for me has been submitting timesheets. Every employer has different requirements but they usually want to see what you did and when. If you’re a developer just use your git history! Services like commitsheet.com automate this, and let you generate a timesheet each month from your commits saved in git. It’s free too.
(Bonus) Get confirmation!
Once you’ve submitted an invoice it’s really important to get confirmation from your employer’s billing department. More often than not there will be an issue and you’ll need to correct it. The faster you follow these issues up the faster you’ll get paid. And no-one like waiting on a late invoice payment!
Hope it helps!