Neither club announced any details of the deal, although Spanish press reports say that Milan will pay 30 million euros ($33.3m, £21.3m) and that Bacca will sign a four-year contract.
Bacca, 28, has spent two seasons at Sevilla since moving to southern Spain from Club Bruges of Belgium.
He has scored 49 goals in 108 games for the Andalusians and has helped them win back-to-back Europa League titles.
Milan have been busy so far this summer, appointing Sinisa Mihajlovic as their new coach after sacking Filippo Inzaghi.
Earlier this week they signed the Italian international midfielder Andrea Bertolacci from Roma for a reported 20 million euros ($22.4m, £14.2m). – Agence France-Presse