HMRC PAYE tools data security for small business – how to solve it

If you’re using the HMRC “PAYE Tools” product, you probably haven’t realised that everyone in your company can access staff pay records. At least, we didn’t until this week.

A bit of background. I’ve got a book-keeper who does my accounts, payroll, invoicing and debtor-getting. We both need access to files, but I don’t want my techies looking at our accounts or payroll records (too tempting).

So a great solution is to set up a TrueCrypt “encrypted shared drive” on the network. We have all our finance-related data on that, it gets backed up by our IT administrator, but only I and the book-keeper can see this sensitive data because it is password protected.

Historically, we’ve been using the HMRC CD-Rom to do our payroll, and because we need to both have access, we moved the HMRC program to the network. It ran fine, and all the backups were made to the encrypted drive. Job done.


It turns out the data isn’t stored in a subdirectory of the HMRC folder, but on either C:\Users\[username]\HMRC or C:\Users\Public\HMRC.

So.. we’d encrypted the application but not the data!

So.. anyone can access payroll data.

Bloody hell!

We only realised this when we installed the new payetools application to replace the CD-ROM. Despite installing it on the encrypted drive we couldn’t find the data directory anywhere. We even found a config file on the HMRC directory, but changing this made sod all difference.

After hours of investigation I have found a workaround.

Please note I accept no liability/responsibility for any errors, omissions, etc, this is entirely at your own risk.

How to store your HMRC PAYE data on a shared, encrypted drive using TrueCrypt

I’m assuming you have good computer knowledge, and you’ll have to read up on TrueCrypt etc. from their website. I’m also assuming you have installed and are running the payetools software.

  1. Run the payetools program, and click on the Options spanner, then on the Application Settings tab, and check the ‘Database Location’ is something like C:\Users\Public\HMRC\payetools. If it isn’t, then you will need to reinstall the HMRC payetools in custom setup mode, selecting the ‘Shared Data’ option where prompted.
  2. Back up your HMRC PAYE data somewhere safe (you’ll need this backup in a minute)
  3. Install TrueCrypt on both PCs that you want to access your data
  4. Create a TrueCrypt volume on a network drive (20Mb should be plenty), and mount it as an R: drive one of the PCs (Important note: you can only mount a TrueCrypt drive on ONE PC at a time)
  5. Create a folder on this drive called R:\HMRC, and a subfolder R:\HMRC\payetools
  6. Now, before you run the HMRC payetools program, open a DOS window
  7. Type %public%, and make a note of the file path %public% is set to now (it will probably be C:\Users\Public)
  8. Type setx public R:\
  9. Run the HMRC program – it will create a new database in R:\HMRC\payetools
  10. Check you are using the right data location – click on the Options spanner again, then on the Application Settings tab, and check the ‘Database Location’ is R:\HMRC\payetools
  11. Now restore your backup

You should be good to go now.

When you have finished using payetools, close it, then in DOS, type setx public C:\Users\Public (assuming this was the original path you got when you typed %public%)

Remember to close payetools BEFORE unmounting the TrueCrypt drive.

Remember only one person can access the TrueCrypt drive at a time.


About saasmd

I am the Managing Director of TeamSeer, a London-based holiday planning and absence management software company. I like SaaS, software, business, ideas, and talking to people.
This entry was posted in Uncategorized. Bookmark the permalink.

5 Responses to HMRC PAYE tools data security for small business – how to solve it

  1. Paul C says:

    Thanks for the tip, it’s very helpful. It does seem ironic that HMRC default data location is an open part of the system…
    Just a small correction on syntax – Instructions 8 and 11 need quotes surrounding the path, e.g. setx public “R:\”

    Unfortunately, this fix has not worked for me (yet) because I’ve installed paye tools in my user folder (rather than the public folder). I still need to move it to an encrypted folder because anyone stealing the PC/hard drive would have access otherwise. Next task, to try to use setx to temporarily relocate my user folder…
    Paul C

  2. Paul C says:

    I tried the ‘setx’ procedure, it changed the database location on Paye Tools, but found that the payetools software just reverted to the public user folder after I restored it at the end of the procedure.

    However, I fould that windows folders can be effectively ‘moved’ elsewhere by using the MKLink command. Even better, for people like me who prefer to steer clear of command line applications, there is a neat bit of freeware called Junction Link Magic which allows you to specify where you want to ‘point’ your payetools folder to – i.e. creating a link which effectively moves your folder to a more secure location. You’ll need to create your new HMRC folder for your payetools files where you want it, copy the existing payetools folder to it (and also copy your HMRC\payetools folder to another independent location temporarily in case anything goes wrong). Next, delete the original contents of HMRC folder, i.e. make sure the HMRC folder is empty, before creating the junction link using Junction Link Magic. Lo and behold, your Mother’s brother is called Robert…

    Junction links can be set up on encrypted partitions or folders The usual caveat applies – please read the documentation first, backup everything you’re going to touch and be clear what you’re intending to do before you start.

    Thanks Saasmd for highlighting the problem and starting the ball rolling. Having decided to move the payetools folder, I’ve realised there are files from other software applications that could be moved from my unencrypted system folders to my encrypted partition.

    Paul C

  3. Rob Scott says:

    Having just spent 2 hours to add 3 payroll records on Ubuntu Linux PAYE Tools I can confirm that it is the least intuitive program I have used in a long time. It doesn’t surprise me that they have data security issues like that you suggest – the software barely functions (I have to restart after inputting each payment record. Sometimes it never opens). Good job there’s only 3 employees to pay through this. Still, you shouldn’t have to have an accountant for such a simple task. Paper was probably faster. Even if sent by carrier pidgeon.

  4. saasmd says:

    Just an update for everyone – we eventually gave up trying to use the HMRC PAYE tool and have switched to which is pretty basic but just shows easy things could be if HMRC pulled their finger out. I would recommend it for small companies (we have 8 employees).

  5. Thank you for recommending us and I was very interested to learn about the old problem with HMRC’s Basic Tools.
    Out of curiosity, I contacted the appropriate team within HMRC today and asked them about the security issue in their tools, but they didn’t seem concerned by it. They referred me to the disclaimer on this web page:
    Personally, I think any installed software that stores personal information about employees ought to tell the user/administrator which directory it is writing to, so they can take appropriate measures to keep it secure and backed up. That’s the crux of the problem you encountered – that and the fact you couldn’t easily tell it to use a different directory.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s