EU states have approved an action plan for Turkey, which it is hoped will ease the flow of migrants to Europe.
Nearly 600,000 migrants have reached the EU by sea so far this year, many of them travelling from Turkey to Greece before seeking to head north.
Turkey made a number of demands in exchange for helping to stem the flow.
In a news conference in Brussels, Donald Tusk, the president of the European Council, said he felt “cautious optimism” over the deal.
Meanwhile a migrant thought to be Afghan was shot dead by a Bulgarian border guard after entering the country from Turkey late on Thursday.
Bulgarian President Boyko Borisov left the Brussels talk on hearing the news.
At the summit, European officials agreed to:
accelerate visa liberalisation for Turks wanting to visit the EU’s borderless Schengen area – if Turkey complies with certain criteria
“re-energised” talks over Turkey joining the EU
Turkey had also asked for €3bn (£2.2bn, $3.4bn) in aid, something German Chancellor Angela Merkel said EU states were considering.
Jean-Claude Juncker, the president of the European Commission, said talks over the aid would continue with Turkish officials over the coming days.
Mrs Merkel will travel to Turkey at the weekend.
“There is still a huge amount to do,” Mrs Merkel said. “But you cannot say that we’ve achieved nothing.”
EU sources had said several countries were cautious about coming to an agreement with Turkey too quickly.
Among them were Greece, Cyprus and France.