Ousmane Dembele and Luis Suarez scored first-half goals and Andre Gomes added another after the interval to help the Spanish champion coast past its South African counterpart.
Though Messi, Gerrard Pique and Philippe Coutinho all started from the bench, an otherwise strong Barca XI encountered few hiccups, aside from a Sibusiso Vilakazi consolation strike in the 76th minute.
Ernesto Valverde had been criticised for resting players from the thrilling 5-4 defeat to Levante that saw Barca's unbeaten LaLiga season come undone in the penultimate match of the season.
But there was to be no repeat of that result at the FNB Stadium, where the lively Dembele punished a poor defensive pass to open the scoring in the third minute, before Luis Suarez tucked home a second from inside the box 16 minutes later.
Valverde made a host of the changes at half-time and eventually saw his side take a three-goal lead through Andre Gomes in the 67th minute, the midfielder making the most of a mix-up at the back.
The advantage was reduced moments after Messi's introduction, but the Blaugrana will simply be happy to switch attention to Sunday's season-ending visit from Real Sociedad to Camp Nou without any injury concerns from their single-match trip to South Africa.