The Daily Mail reports that the two clubs held talks over the weekend and have agreed a deal.
Birmingham will pay £4million up front for the 27-year-old and the rest will be paid according to performances and international caps.
Foster has struggled in the shadow of Dutch keeper Edwin van der Sar at Old Trafford.