While refugees from Syria and other war zones would continue to be granted safe haven, those deemed economic migrants, mostly from “safe origin” Balkans countries, would be sent back within three weeks, said Merkel.
Laying to rest weeks of coalition infighting, Merkel and the two other party chiefs also agreed on a new streamlined ID system and a central database for asylum-seekers.
“We took a good and important step forward,” said Merkel, flanked by Vice Chancellor Sigmar Gabriel of the centre-left Social Democrats and Horst Seehofer of the CSU, the Bavarian sister party of Merkel's CDU.
The ruling trio agreed to set up three to five new “reception centres” nationwide for asylum-seekers who are deemed on arrival to have little chance of being allowed to stay.
Newcomers sent there would be obliged to register to become eligible for state benefits during their stay, and they would be barred from leaving the administrative district where the facility is based.
Tough line on Balkans
Berlin has already taken a firmer line against asylum-seekers from nations not at war, leading to a sharp drop in October of arrivals from Balkans states.
Germany has also begun looking at limiting arrivals from Afghanistan, where the German army has been part of NATO efforts to stabilise the country.
The coalition partners however rejected a conservative proposal for closed “transit zones” to be set up along the Austrian border, which the Social Democrats had likened to “internment camps”.
Merkel, facing an increasing backlash over her welcoming stance to refugees, hammered out the compromise with her partners as new data signalled Germany is on course to receive one million asylum-seekers this year.
Europe's top economy registered more than 758,000 asylum seekers from January to October, the interior ministry said, with Syrians making up one third, and many others coming from war-torn Iraq and Afghanistan.
In October alone, 181,000 migrants arrived, surpassing the previous record of around 163,000 in September.
Interior Minister Thomas de Maiziere declined to update the official full-year forecast of 800,000, saying human traffickers could deliberately misinterpret a higher number as “an invitation to come to Germany”.
The surge has left local authorities across Germany scrambling to find shelter for the newcomers, who have been housed in hostels, mobile homes, army barracks, sports halls and even heated tents.
The head of the UN refugee agency, Antonio Guterres, on Tuesday praised Berlin's welcoming stance and said “it is absolutely essential that all members of the European Union follow the example of Germany”.
But the influx has also provoked a backlash.
Xenophobic attacks against refugee homes have surged and Merkel's long-stellar support ratings have dropped amid concern about how Germany can cope.