In October 2009, Waris signed a four-year contract with Swedish Allsvenskan side BK Häcken for an undisclosed fee. He made his début in March 2010 as a substitute for Dominic Chatto, in a 4–2 home win against Trelleborgs FF. In May 2012, he netted his first hat-trick, scoring five goals, in a 6–0 home win against IFK Norrköping. As a result, he became the first player in Allsvenskan to score five goals in one match in the 21st century. He also became the first Ghanaian to score five goals in single top-flight game in Europe as well as becoming the leading goalscorer in the 2012 Allsvenskan with 12 goals in nine games. In conclusion of the Allsvenskan season, Waris was named the Swedish Premier League's player of the year, which GFA President Kwesi Nyantakyi quoted: "His achievements have brought honour to our country." His performance at Häcken earned him a transfer speculation by being linked with Bundesliga clubs, such as Werder Bremen, Hamburger SV, Saint-Étienne, Catania and Arsenal.
In November 2012, Waris was transferred to Spartak Moscow for an undisclosed fee. He made his RFPL debut on 10 March 2013, coming on as an 82nd-minute substitute in Spartak's 3–1 win over FC Terek Grozny. However, his first team chance at Spartak Moscow was limited, due to the dominance of strikers, such as Emmanuel Emenike, Yura Movsisyan, Artyom Dzyuba and Ariclenes da Silva Ferreira. Waris scored his first PFPL goal on 8 December 2013, in a 1-0 away victory over FC Rostov, and was voted the Russian Premier Leagueplayer of the week. Following the start of the winter break, he stated he wanted to leave the club, citing earning a first team place in the World Cup.
In January 2014, Waris was loaned to Ligue 1 club Valenciennes, until 30 June 2014. He scored on his debut for the club in a 3-2 win over Bastia on 14 January 2014 and was named Goal.com GhanaPlayer of the Week. After scoring two goals in six appearances, he scored twice on 22 February 2014 in a 2–2 draw against Sochaux. He scored five times in four consecutive games. Initially aiming to score eleven goals, Waris went on to score nine goals in his loan spell at Valenciennes. Despite the relegation, he expressed his desire to stay in France by making the move a permanent one. He returned to Spartak Moscow, but said he hoped that the club would bounce back to Ligue 1.
On 1 September 2014, Waris joined Turkish Süper Lig side Trabzonspor on a four-year contract for a transfer fee of €5.5 million. He had previously been linked with a move to Lille, but Spartak Moscow rejected a bid from the club. He made his Trabzonspor debut on 14 September 2014, in a 0-0 draw against Fenerbahçe, where he played 90 minutes and as a left winger in attack. Two months later, on 6 November 2014, he scored his first goal for the club, which came in the Europa League, in a 1-1 draw against Lokeren.
On 6 August 2015, Waris' transfer to French Ligue 1 side Lorient was announced. Media reported the transfer fee as €5 million and the duration of the contract as four years. This move caused controversy as Waris initially travelled to Britanny to sign for Lorient's rivals Rennes but was driven to Lorient upon his arrival.
In January 2018 Waris was loaned to Portuguese Primeira Liga side FC Porto on a six-month loan deal which involves a €6 million option to make the move permanent.
On 16 January 2020, Waris returned to France, signing for Strasbourg on loan until the end of the season with obligation to buy in the summer for £2,000,000.
International career
Waris was called up to the Ghana squad against Chile in February 2012, replacing the both injured André and Jordan Ayew. He came on as a substitute for Richard Mpong as Ghana earned a 1–1 away draw at the PPL Park in Chester, Pennsylvania. He scored the third goal in Ghana's 4–0 in World Cup Qualifying against Sudan on 24 March 2013 at the Baba Yara Stadium in Kumasi. He also scored a goal against Egypt when Ghana defeated Egypt 6–1 in Kumasi in the first leg of the final World Cup qualifier. On 12 May 2014, Waris was named in a provisional 26-man squad in the 2014 FIFA World Cup by Ghana manager James Kwesi Appiah. On 2 June 2014, he made the cut to be included in Ghana's 23-man squad for the 2014 FIFA World Cup.