Bonilla scored his first goal for Alianza against Atlético Marte on 13 August 2011. He scored both goals against Águila on 11 September 2011, the match ended 2–1 to Alianza.[3] He scored the only goal against Juventud Independiente on 2 November 2011. On 27 November 2011 he scored a 54th-minute equaliser against Firpo in a match that ended 1–1.[4] On 22 January, he scored the winning goal against Juventud Independiente in the 60th minute, the match ended 2–1.[5] On 5 February 2012, he scored the first goal in a 3–1 defeat against Águila.[6]
On 31 August 2015, Bonilla signed a two-year contract with Zira FK of the Azerbaijan Premier League.[8] On 23 May 2016, Zira announced that Bonilla had extended his contract with the club for an additional season.[9]
Nacional
On 16 June 2016, it was announced that Bonilla would leave Zira to join Portuguese club Nacional.[10]
Terengganu FC
In August 2024, it was announced the Bonilla had agreed to sign contract with Terengganu FC.[11]
International career
Bonilla made his debut for El Salvador on 23 May 2012 in a 2–2 away draw against New Zealand.[12] Bonilla scored his first goal for El Salvador on 27 May 2012 against Moldova, with his team going on to win 2–0.[13][14][15]