Following a meeting of ambassadors, European Council president Donald Tusk said the EU27 would accept the UK's request for a Brexit "flextension" until January 31.
The Prime Minister has said in a visit to Wakefield in September that he would prefer to be "dead in a ditch" than miss the October 31 deadline.
Mr Tusk tweeted: "The EU27 has agreed that it will accept the UK's request for a #Brexit flextension until 31 January 2020.
"The decision is expected to be formalised through a written procedure."
An EU source said under the draft European Council decision, the extension would last "only as long as necessary to allow for the ratification of the withdrawal agreement and, in any event, no longer than January 31 2020".
The source added: "If the withdrawal agreement is ratified by both parties before this date, the withdrawal will take place on the first day of the month following the ratification.
"The United Kingdom will remain a member state until the new withdrawal date, with full rights and obligations, including the obligation to suggest a candidate for appointment as a member of the Commission.
"This extension excludes any re-opening of the Withdrawal Agreement."
The text will be submitted to the UK for agreement, before a written procedure is launched to adopt the decision - with the process likely to be concluded on Tuesday or Wednesday," the source added.
The announcement will pile pressure on opposition parties to decide whether to back a pre-Christmas general election, with MPs voting later today on a Government bid to hold a poll on December 12.
Labour has said it will only back the move if Mr Johnson makes "absolutely clear" that no-deal is off the table and a January extension is granted.
But the Liberal Democrats and SNP have put forward a tightly-drafted Bill that would grant an election on December 9 - three days earlier than the PM's suggested polling date - as long as the European Union grants an extension until January 31.
The Prime Minister's election bid, to be made under the Fixed-Term Parliaments Act (FTPA), would require a two-thirds Commons majority - 434 MPs - to agree to an election on December 12.
Lib Dem leader Jo Swinson said her proposal ties Mr Johnson's hands over the election date and does not give him the "wriggle room" that his own plan would have.
"And because people can't trust what this man says, I think setting that date in law is a very good idea," she told Today.
She said there are various reasons why December 9 makes more sense than December 12 for an election.
"Clearly, it's three further days away from Christmas and I understand that the public appetite for an election around Christmas is not necessarily high so I think, from the point of view of the economy and retailers, keeping it as far away as possible is helpful.
"What waiting would do is risk no-deal, because if we waste this extension and we end up in January with that 31st of January deadline looming, assuming it is granted today, and we haven't done anything with this time, then there's no guarantee the EU will extend again and then no-deal is back on the table."
Education Secretary Gavin Williamson said there would be an election before Christmas.
He told Sky News: "I would hope it is going to be the 12th (of December).
"The quickest and easiest and simplest way of delivering that general election is through the Fixed-Term Parliaments Act."
The draft SNP-Lib Dem law, currently scheduled for tomorrow's sitting, would require a simple majority of 320 MPs to support it in order to dissolve Parliament - 114 fewer than under the FTPA "super majority" rules.
With the SNP and Lib Dems supporting the initiative, the Bill is likely to pass even without Labour backing.
Downing Street indicated it could be willing to support the pro-Remain parties' proposals in a possible compromise offer.
A Number 10 source said if the Government's request for an election was lost, "we will look at all options to get Brexit done including ideas similar to that proposed by other opposition parties".