An injury to captain Faf du Plessis took some of the gloss off a comprehensive South African win in the third and final one-day international against Bangladesh at Buffalo Park on Sunday.
Du Plessis retired hurt on 91 and had to be helped off the field with an acute lower back strain and took no further part in the match as South Africa completed a series clean sweep, winning by 200 runs.
He was withdrawn from the two-match Twenty20 series that will complete what has been a dismal tour by Bangladesh.
Du Plessis was the top scorer in South Africa's 6-369, their highest one-day total against Bangladesh and the highest total at the ground. Bangladesh were bowled out for 169.
The South Africa skipper later tweeted that he would be spending the night in hospital and was "in a bit of pain" but remaining optimistic.
Hospital bed it is for me tonight ☹️ .thanx everyone for the messages.im in a bit of pain but hopefully not to serious.🙏— Faf Du Plessis (@faf1307) October 22, 2017
After the two-match T20 series, the Proteas next fixture is not until Boxing Day when they will play a four-day Test against Zimbabwe at Port Elizabeth.
It was another humiliating defeat for Bangladesh, who suffered defeats by ten wickets and 104 runs in the first two matches after similarly lop-sided losses in two Test matches.
Bangladesh were hit by injuries, notably to leading bowler Mustafizur Rahman, who missed all three matches, and opening batsman Tamim Iqbal, who only played in one game.
"It was a big blow but we can't make any excuses," said captain Mashrafe Mortaza. "The rest of the guys have been playing brilliantly in the last three or four years."
Mortaza said the failure of his bowlers to take wickets in South African conditions had been a major problem, while the batsmen had also failed, particularly on Sunday. "It was a brilliant wicket for batting," he said.
Du Plessis was named player of the match but could not collect his award. AB de Villiers, who took over the captaincy, said: "We have had a really good series. Today was probably our best performance because this wicket probably suited them (Bangladesh) the most."
Du Plessis looked set for a ninth ODI century before he pulled up as he turned for a second run. He had to be helped off the field. He hit ten fours and a six and only faced 67 balls.
Temba Bavuma, one of three changes in South Africa's top seven in the batting order, made 48 and helped Quinton de Kock (73) put on 119 for the first wicket, while new cap Aiden Markram hit 66 as he and du Plessis added 151 off 116 balls for the third wicket before du Plessis retired hurt.
As in his Test debut, when he made 97 against the same opponents last month, Markram's innings was ended by a run-out. Markram hit four fours and two sixes in an impressive 60-ball innings.
The match was soon over as a contest as Bangladesh lost their first five wickets for 61. There was a brief fightback as Shakib Al Hasan (63) and Sabbir Rahman (39) put on 67 for the sixth wicket before both fell to part-time off-spinner Markram. Fast bowler Dane Paterson took 3-44.
De Kock was named player of the series. He scored 287 runs and was only dismissed twice.
Cricket South Africa announced that JP Duminy will take over as captain for the T20 series, to be played in Bloemfontein on Thursday and Potchefstroom next Sunday.
South Africa: Faf du Plessis (capt), Temba Bavuma, Quinton de Kock, Aiden Markram, AB de Villiers, Farhaan Behardien, Wiaan Mulder, Andile Phehlukwayo, Kagiso Rabada, Dane Paterson, Imran Tahir.
Bangladesh: Mashrafe Mortaza (capt), Imrul Kayes, Liton Das, Mushfiqur Rahim, Shakib Al Hasan, Mahmudullah, Sabbir Rahman, Soumya Sarkar, Mehedi Hasan, Taskin Ahmed, Rubel Hossain.