James did not feature for Everton under new manager Rafael Benitez this season after joining the side for a nominal fee a year ago.
The Colombian midfielder missed several games because of coronavirus-related issue, playing his last game for the club in a 1-0 defeat by Sheffield United on 16 May.
Everton would now be free from financial constraints after offloading James Rodriguez whose wages is reported to be £200,000 a week to another club.
Rodriguez, a former player for Real Madrid has also featured for Porto, Monaco and a loan spells with German Bundesliga giants Bayern Munich.
James in search for a new club when efforts to join former side Porto and Turkish team Basaksehir stalled has now secured a move to Al Rayyan after Rafael Benitez informed him that he wouldn't have game time at Goodison Park this season.
The left-footed midfielder landed in the Middle East on Monday to undergo his medical and agree the final details of his contract.
James was an instrumental assest for Everton under Carlo Ancelotti last season as he registered twenty-three Premier League appearances with 6 goals and four assists, helping the Toffees to a 6th position in the league log.
Al Rayyan have played just two games this season in the Qatar Stars League, drawing both.
However, the arrival of James will see French tactician Laurent Blanc having a superstar in his squad to call upon.