Born in Santiago, Reyes began his youth career at amateur side Atlético Valdés, later moving on to Huachipato's youth setup at the age of 16.[1] He made his debut on 1 March 2009, coming on as a late substitute in a 2–0 home win over Universidad Católica.[2] His first goal came on 17 April 2009, in a 3–1 home win over Iquique.[3] It would be his only goal for the club.
Reyes was named captain of Huachipato in 2012, succeeding Cristián Muñoz. He retained his place at the centre of midfield for the following seasons, being named in the best XI of the Chilean league championship in 2012, after winning the first title of his career at the 2012 Clausura with Huachipato.[4] Reyes would remain with Huachipato for the first half of the 2013 season, playing 4 matches in the 2013 Copa Libertadores, in an eventual group stage exit, and a 15th place finish in the 2013 Apertura, playing his last match for Huachipato in a 0-2 home defeat to Palestino.[5] Reyes would once again be selected for the league's best XI for the 2013 season, named as one of the best midfielders in the league.[6]
Betis
On 13 June 2013, Reyes signed a four-year deal with La Liga side Real Betis.[7] He made his debut for the Verdiblancos on 15 September, as a second-half substitute in a 3–1 home win over Valencia.[8]
On 31 August 2015, Reyes was loaned to Almería in Segunda División, in a season-long deal.[9] After his loan expired, he was deemed surplus to requirements by his parent club[10] and rescinded his contract on 5 July 2016.[11]
Universidad de Chile
Shortly after rescinding with Betis, Reyes returned to his home country and signed for Universidad de Chile.[12] He immediately became a starter for the side, winning the 2016 Torneo Clausura with the club.
After being called up sparingly by manager Jorge Sampaoli in 2012 and 2013, Reyes only appeared again for the national side on 31 May 2018, in a 2–3 loss against Romania at the Sportzentrum Graz-Weinzödl in Graz, Austria.[18]