Shakes Mashaba’s men put Dipitse under pressure early in the match as they stormed forward in the third minute to give striker Judas Moseamedi a chance at goal, but had his goal was judged to be offside.
Botswana took the lead in the 16th minute when Dipitse forward Okgabetse Makgantai’s attempt at goal from 25 yards out caught Bafana Bafana goalkeeper Reyaad Pieterse off his line to make it 1-0 to Botswana.
However, Bafana Bafana drew level in the 32nd minute as midfielder Gift Moyupa put away his penalty after Moseamedi was fouled in the penalty area by Botswana captain Boiyumelo Mafoko.
Moments before the equaliser Aubrey Modiba was fortunate to only receive a yellow card when he brought down Makgantai during a challenge. Makgantai made the most of the challenge but whether or not the South African midfielder remained unclear.
Mashaba’s charges had a great opportunity to take the lead shortly after the half-time interval when Moseamedi was put through on goal, but ultimately losing control of the ball and letting the chance slip away.
Dipitse soon after had a chance of their own as Lesego Galenamotlhale cannoned his effort against the woodwork, rattling the bar with his half-volley strike from range.
Bafana Bafana winger Menzi Masuku should’ve given his side the lead in the 60th minute, but a lack of concentration sent his close-range effort well wide of the bar.
South Africa took the lead for the first time, a quickly taken free kick found, who drew the Botswana goalkeeper before setting substitute Thabiso Kutumela for a easy tap-in.
However, Pieterse a costly mistake between goal, allowing Botswana midfielder Kabelo Seakanyeng’s free kick into the box slip through his fingers on the goal-line as Botswana made it 2-2.
The match looked set to head into extra-time, but an 88th minute penalty from Motupa provided his side with the decisive goal, following a handball in the box.
Bafana Bafana held on to secure a 3-2 victory over Botswana to win their fourth Cosafa Cup title