Olympiacos, for whom the 23-year-old Copa America star plays, however admitted that the deal has not yet been finalised.
Castillo had been linked with a number of clubs, including City and Juventus, but Shakhtar are reported to have offered 16 million euros and a huge salary for the diminutive Uruguay-raised forward, who scored a wonder goal for Mexico in the 2-0 win over Brazil in the Copa America group stages.
He has been at the Piraeus side since the age of 16, scoring 30 goals in 105 appearances and coming to the fore last season after playing second-fiddle to Rivaldo for several years.
The controversial player was at one point eligible to play for four countries - Mexico, Uruguay, Italy and Greece - and almost joined Manchester United as a teenager only for his work permit to be declined.
The Ukrainian runners-up, who will play in the Champions League pre-qualifiers, did confirm the signing of Brazilian defender Ilsinho from Sao Paolo.
The 21-year-old Brazil right back has signed on a four-year, 10 million euro deal with the option that it could be extended for one more year.
Shakhtar have already picked up Cristiano Lucarelli from Livorno and have even more cash to spend than usual after the sale of Matuzalem to Real Zaragoza.