I left my previous company 3 months ago but am still getting paid. It's obviously an error on thier side, as I resigned and worked my notice period as I should have. When they realise that I'm still getting paid, will I have to repay the money since it was clearly thier fault?
You will have to give it back and I think also you may have to tell them. Putting it in a high interest rate account is a good idea but this would prove you knew that it was happening.
Given that you know that it's not your money you must pay it back. It might be the case that if you thought that it was yours and spent it then things may be different.
The onus is on you to give it back to them as they will find it difficult to take it from you without your co-operation.
I don't think you'll find you have to actually tell them but when they discover it (which seems likely as this isn't a one-off) your employer can make you pay it back.
Section 15 of the Employment Rights Act 1996, under the heading �Protection of Wages�, covers your rights not to pay money to your employer. Unfortunately section 16 covers the exceptions, among which is the recovery of overpaid wages and expenses.
http://www.hmso.gov.uk/acts/acts1996/96018--b.htm#15