A quick and physically powerful defender, known for his hard marking of opponents and strength in the air, he usually plays as a centre back.
[2] Zapata began his career in Colombia with Deportivo Cali in 2004, moving to Serie A club Udinese the following year.
In his first season, Zapata played a total of 25 games with Los Azucareros while also consolidating himself as a key component of the team's defensive end.
[4] In October 2007, Zapata along with Andrea Dossena, Roman Eremenko and Simone Pepe was awarded new contracts until June 2012.
Subsequently, he missed a total of six games including two UEFA Champions League group stage matches against Manchester City and Bayern Munich.
On the last match-day of the season, Zapata played the entire match against Atlético Madrid as Villarreal were relegated with fellow countryman Radamel Falcao scoring the only goal of the game for Atletico.
In August 2012, Villarreal announced that Zapata had left the club to join AC Milan on a season-long loan.
Zapata made headline news in the Champions league against Spanish giants Barcelona: Milan's opening goal in a 2–0 victory of the first leg involved the ball being deflected on to his hand and landing in front of Kevin-Prince Boateng who scored seconds later.
The referee did not judge it an attempted touch of the ball but allowed Boateng's goal to be counted, while Zapata was credited with an assist.
[12] It was also the first Milan game under the ownership of Rossoneri Sport Investment, headed by Li Yonghong, with Zapata giving away his jersey as a gift to the Chinese entrepreneur soon after the final whistle.
Napoli, where captain Leonardo Bonucci was unavailable and Giacomo Bonaventura was playing, he celebrated this news with an outstanding performance with his former Villarreal CF teammate Mateo Musacchio.
Milan entered the match three points ahead of Olympiacos, seeking to qualify for the knockout stage alongside Real Betis.
[15] He would not be named to a match-day squad for two months, and by the time he returned, Musacchio had cemented his place in the back line alongside Romagnoli.
Zapata would get two more starts the rest of the campaign, finishing the season with 20 appearances in all competitions as his contract with the club expired.
[17] On 29 July 2021, Zapata joined Argentine side San Lorenzo,[18] signing a contract until the end of the 2022 season.
In the 2014 FIFA World Cup qualification match, Zapata finally got his first spot chance since under new coach Jose Pekerman against South American leaders Argentina.
In the 26th minute, while defending the ball inside Colombia's box from Gonzalo Higuaín, Higuain fell to the side while losing balance and kicked the thigh of Zapata in anger.