Reunification bill paves the way for a new migrant plan this summer.
The German lower house of parliament has extended a ban limiting migrants from bringing close relatives into the country for another six months.
The extension comes after new rules on family reunions were agreed. They will come into affect in August and allow up to 1000 migrants to enter Germany every month.
The deal between the CDU and SPD has raised hopes Chancellor Angela Merkel will finally be able to forge a coalition government following months of political limbo.
Admitting the bill was a compromise, Interior Minister Thomas de Maiziere said its approval stood for "humanity and accountability and integration and limitations".
The new law passed by 376 votes to 248.
In March 2016, Germany imposed a two-year suspension on family reunifications for migrants with so-called "subsidiary status" after nearly 900,000 asylum seekers arrived in the country the year before.