Germany, where Chancellor Angela Merkel faces domestic pressure to reduce arrivals of migrants and refugees, had reached a similar deal with Spain on August 8.
“We have reached an agreement with Greece… and the conclusion is imminent,” said Interior Ministry spokeswoman Eleonore Petermann on Friday, pointing to a last outstanding exchange of letters.
“We remain in talks with Italy, and these talks have advanced quite a long way,” she added at a Berlin press conference.
“We assume that an agreement will also be reached with Italy.”
She gave no further details about the Athens agreement, but the deal reached with Madrid allows Berlin to send back Spanish-registered migrants within 48 hours of their arrival on German soil.
Merkel has been under pressure to reduce the number of new arrivals after a record influx of more than a million asylum seekers between 2015 and 2016 unsettled Germany.
The issue of tighter border controls sparked a major clash in July between the chancellor and hardline Interior Minister Horst Seehofer which brought their coalition to the brink of collapse.
Germany has since sought a series of bilateral agreements with EU partners, after a broader accord for the bloc proved elusive.
Italy has, however, been reluctant. Its Interior Minister Matteo Salvini of the far-right League party has said Rome first expects to see more action to toughen the EU's external borders, before it will consider striking a deal.
The German political row was triggered when Seehofer, who heads Merkel's more traditional CSU sister party, threatened to turn back migrants at German borders if they had already made asylum requests in other EU countries.
Fearing the domino-effect of borders slamming shut that such unilateral action would unleash, Merkel instead pushed for a wider EU response that would include migrant return deals with the frontline states Greece, Italy and Spain.