Demchyshyn said some procedures remained before a formal signing could take place, but that one should occur shortly.
He added that the deal assured Ukraine would receive Russian gas through next March.
Russia agreed to lower the price it charged Ukraine to the same "competitive level" granted to neighboring countries, from $251 per 1,000 cubic meters to $227.4 through a cut in export duties.
For its part, Ukraine agreed to inject 2 billion cubic meters of Russian gas into underground storage sites on its territory to help stockpile supplies for EU countries.
Novak, the Russian energy minister, said the agreement should ensure that millions of people in Ukraine and the EU "securely [are able to] survive the winter."
Gas disputes between Russia and Ukraine have led to cut-offs of supply in the past, and one standoff in 2009 caused serious disruptions in shipments of Russian gas to EU countries.
Last winter, Russia and Ukraine struck an emergency deal on gas prices, but that agreement subsequently expired.
EU-brokered talks seeking a similar agreement on gas for the coming winter began in March.