Williams was signed from Peterborough United after successfully completing a medical.
He can play at either left back or left midfield and had joined Blues on Monday on loan to enable him to be named in Tuesday's squad for the game at Bradford where he was an unused substitute in the 3-1 victory.
The total package for Williams, including add-ons could reach up to £1 million depending on appearances and his contract is for four and a half years.
With Williams now signed on a permanent deal, Blues boss Steve Bruce can now take a further loan player on if required with Wimbledon's Michael Hughes likely to be that loan signing.