The 29-year-old former Derby County trainee was part of the Bradford side beaten in the League One play-off final by the Lions at Wembley on 20 May.
Meredith made 220 appearances in five seasons with the Bantams after arriving from York City in June 2012.
The twice-capped Australia international also previously played for Chesterfield and Shrewsbury Town.
The deal, Millwall's first signing since returning to the Championship, is subject to Meredith completing a medical when he returns from holiday next week.
Meredith, who had been offered a new contract by Bradford boss Stuart McCall, scored four times in his five seasons at Valley Parade, the last of which was against Millwall in a 1-1 draw in January.
Find all the latest football transfers on our dedicated page.
Promoted Millwall have signed Bradford City left-back James Meredith on a two-year contract, to start on 1 July.