I think that legally you probably have to give them chance to put right the issues before you can with hold the money and / or pay another company.
This is also part of the REAL code, so you're supposed to only go to them after you've failed to get satisfaction from the companies complaints process.
I'd write a clear list of issues that you want addressed before payment can be made, then email it to the company and ask that this be dealt with as a complaint under their official complaints process, and advise that you will be withholding payment until this is rectified. I do think you're probably on dodgy ground withholding the entire amount though, as they have delivered the bulk of the contract - it's fairly standard practice in these situations to pay most of it and with hold eg 10% or maybe the equivalent of what it'd be likely to cost to get someone else to rectify the problems, so I'd think £1000 max.
WIth holding it all could well cause cash flow issues for the company which could make things more difficult for them with other jobs etc that then might actually delay them being able to get your system sorted, as well as wasting your and their time with lots of arguments over the rights and wrongs of the situation.
This is also part of the REAL code, so you're supposed to only go to them after you've failed to get satisfaction from the companies complaints process.
I'd write a clear list of issues that you want addressed before payment can be made, then email it to the company and ask that this be dealt with as a complaint under their official complaints process, and advise that you will be withholding payment until this is rectified. I do think you're probably on dodgy ground withholding the entire amount though, as they have delivered the bulk of the contract - it's fairly standard practice in these situations to pay most of it and with hold eg 10% or maybe the equivalent of what it'd be likely to cost to get someone else to rectify the problems, so I'd think £1000 max.
WIth holding it all could well cause cash flow issues for the company which could make things more difficult for them with other jobs etc that then might actually delay them being able to get your system sorted, as well as wasting your and their time with lots of arguments over the rights and wrongs of the situation.