Donald Trump's personal lawyer, Michael Cohen, received a secret payment of at least $400,000 to fix talks between the Ukrainian president and President Trump, according to sources in Kiev close to those involved.
The payment was arranged by intermediaries acting for Ukraine's leader, Petro Poroshenko, the sources said, though Mr Cohen was not registered as a representative of Ukraine as required by US law.
Mr Cohen denies the allegation.
The meeting at the White House was last June. Shortly after the Ukrainian president returned home, his country's anti-corruption agency stopped its investigation into Trump's former campaign manager, Paul Manafort.
A high-ranking Ukrainian intelligence officer in Mr Poroshenko's administration described what happened before the visit to the White House.
Mr Cohen was brought in, he said, because Ukraine's registered lobbyists and embassy in Washington DC could get Mr Poroshenko little more than a brief photo-op with Mr Trump. Mr Poroshenko needed something that could be portrayed as "talks".
This senior official's account is as follows - Mr Poroshenko decided to establish a back channel to Mr Trump. The task was given to a former aide, who asked a loyal Ukrainian MP for help.
He, in turn, used personal contacts in a Jewish charity in New York state, Chabad of Port Washington. This eventually led to Michael Cohen, the president's lawyer and trusted fixer. Mr Cohen was paid $400,000.
There is no suggestion that Mr Trump knew about the payment.
A second source in Kiev gave the same details, except that the total paid to Mr Cohen was $600,000.
There was also support for the account from a lawyer in the US who has uncovered details of Mr Cohen's finances, Michael Avenatti. He represents the porn actress, Stormy Daniels, in legal action against Mr Trump.
Avenatti said that Suspicious Activity Reports filed by Mr Cohen's bank to the US Treasury showed he had received money from "Ukrainian interests".
As well as Mr Cohen, the two Ukrainians said to have opened the backchannel for their president also denied the story.
The senior intelligence official in Kiev said Mr Cohen had been helped by Felix Sater, a convicted former mobster who was once Trump's business partner. Mr Sater's lawyer, too, denied the allegations. The Ukrainian president's office refused to comment.
As was widely reported last June, Mr Poroshenko was still guessing at how much time he would have with Mr Trump even as he flew to Washington.
The White House schedule said only that Mr Poroshenko would "drop in" to the Oval Office while Mr Trump was having staff meetings.
That had been agreed through official channels. Mr Cohen's fee was for getting Mr Poroshenko more than just an embarrassingly brief few minutes of small talk and a handshake, the senior official said. But negotiations continued until the early hours of the day of the visit.
The Ukrainian side were angry, the official went on, because Mr Cohen had taken "hundreds of thousands" of dollars from them for something it seemed he could not deliver.
Right up until the last moment, the Ukrainian leader was uncertain if he would avoid humiliation.
"Poroshenko's inner circle were shocked by how dirty this whole arrangement [with Cohen] was."
Mr Poroshenko was desperate to meet Mr Trump because of what had happened in the US presidential election campaign.
In August 2016, the New York Times published a document that appeared to show Mr Trump's campaign manager, Paul Manafort, getting millions of dollars from pro-Russian interests in Ukraine.
It was a page of the so-called "black ledger" belonging to the Party of the Regions, the pro-Russian party that employed Mr Manafort when he ran a political consultancy in Ukraine.
The page appeared to have come from Ukraine's National Anti Corruption Bureau, which was investigating him. Mr Manafort had to resign.
Several sources in Ukraine said Mr Poroshenko authorised the leak, believing that Hillary Clinton was certain to win the presidency.
If so, this was a disastrous mistake - Ukraine had backed the losing candidate in the US election. Regardless of how the leak came about, it hurt Mr Trump, the eventual winner.
Ukraine was (and remains) at war with Russia and Russian-backed separatists and could not afford to make an enemy of the new US president.
So Mr Poroshenko appeared relieved as he beamed and paid tribute to Mr Trump in the Oval Office.
He boasted that he had seen the new president before Russia's leader, Vladimir Putin. He called it a "substantial visit". He held a triumphant news conference in front of the north portico of the White House.
A week after Mr Poroshenko returned home to Kiev, Ukraine's National Anti Corruption Bureau announced that it was no longer investigating Mr Manafort.
At the time, an official there explained to me that Mr Manafort had not signed the "black ledger" acknowledging receipt of the money. And anyway, he went on, Mr Manafort was American and the law allowed the bureau only to investigate Ukrainians.
Ukraine did not terminate the Manafort inquiry altogether. The file was handed from the Anti Corruption Bureau to the state prosecutor's office. It languished there.
Last week in Kiev, the prosecutor in charge of the case, Serhiy Horbatyuk, told me: "There was never a direct order to stop the Manafort inquiry but from the way our investigation has progressed, it's clear that our superiors are trying to create obstacles."
None of our sources say that Mr Trump used the Oval Office meeting to ask Mr Poroshenko to kill the Manafort investigation. But if there was a back channel, did Michael Cohen use it to tell the Ukrainians what was expected of them?
Perhaps he didn't need to.
One source in Kiev said Mr Poroshenko had given Trump "a gift" - making sure that Ukraine would find no more evidence to give the US inquiry into whether the Trump campaign "colluded" with Russia.
Mr Poroshenko knew that to do otherwise, another source said, "would be like spitting in Trump's face".
A report by a member of a Western country's intelligence community says Mr Poroshenko's team believe they have established a "non-aggression pact" with Mr Trump.
Drawing on "senior, well placed" intelligence sources in Kiev, the report sets out this sequence of events…
As soon as Trump was elected, the report says, Ukraine stopped "proactively" investigating Manafort.
Liaison with the US government was moved away from the National Anti Corruption Bureau to a senior aide in the presidential administration.
The report states that Poroshenko returned from Washington and, in August or September, 2017, decided to completely end cooperation with the US agencies investigating Manafort. He did not give an order to implement this decision until November 2017.
The order became known to the US government after scheduled visits by Poroshenko's senior aide to see Mueller and the CIA director, in November and December, were cancelled.
The report says that an "element of the understanding" between Poroshenko and Trump was that Ukraine agreed to import US coal and signed a $1bn contract for American-made diesel trains.
These deals can only be understood as Poroshenko buying American support, the reports say.
In March, the Trump administration announced the symbolically important sale of 210 Javelin anti-tank missiles to Ukraine.
Even under President Obama, the US did not sell arms to Ukraine. A well known figure in Kiev, now retired from his old job in government, told me he didn't like what had happened with the Manafort inquiry; however, Ukraine was fighting for its survival.
"I want the rule of law," he said, "but I am a patriot."
He said he had kept in touch with his former subordinates and had heard many of the details about a "Cohen backchannel".
He said that if Ukrainians came to believe that a corrupt deal had been done over Mr Manafort: "This thing might destroy support for America."
Ukraine's domestic intelligence service, the SBU, did their own - secret - report on Mr Manafort.
It found that there was not one "black ledger" but three and that Mr Manafort had been paid millions of dollars more from Ukraine than had been made public. (Mr Manafort has denied any wrongdoing.)
This information was given to me by a very senior police officer who saw the report. He said it had not been passed to the Americans.