Bayern have already paid out an €8.5m loan fee and agreed to take on the 27-year-old’s full salary.
Barca had been eager to put such a deal in place as they press ahead with efforts to bring Neymar back to Camp Nou .
Coutinho has now headed out of Catalunya and is looking forward to making a fresh start in Germany.
He told Bayern’s official website : “For me, this move means a new challenge in a new country with one of the best clubs in Europe. I'm very much looking forward to that.
“Like FC Bayern, I have big ambitions and I'm convinced that I can achieve them together with my new team-mates.”
Bayern’s CEO, Karl-Heinz Rummenigge, said: “We've been working on bringing in Philippe Coutinho for quite some time and we're very happy that we’ve been able to complete this transfer.
“Our thanks go to FC Barcelona for agreeing to the transfer. With his creativity and outstanding skills, Philippe is a player who will immediately strengthen our attack.”
Sporting director Hasan Salihamidzic added: “Philippe made it very clear to us during the negotiations in Barcelona that he absolutely wanted to move to FC Bayern.
“He’s a world-class player with great ability, who we can deploy in a number of positions in our forward line, so the FC Bayern squad has gained even more quality.
“Philippe Coutinho will help us achieve the ambitious targets we’ve set for this season.”
Coutinho joined Barca from Liverpool in the winter transfer window of 2018.
He openly admitted to having fulfilled a childhood dream by securing a switch to the Liga giants, but his spell at Camp Nou has not played out as planned, though, amid struggles for consistency.
Coutinho has recorded 21 goals and 11 assists across 75 games, while savouring league title and Copa del Rey glory, but was unable to make the impact expected of him.
The South American will be hoping to rediscover his spark at the Allianz Arena , with Bayern having been in the market for more creativity after seeing Franck Ribery and Arjen Robben leave at the end of their respective contracts and James Rodriguez return to Real Madrid after completing a two-year loan.