Panyaza Lesufi, the official responsible for education in Gauteng province, said it was a "dark day".
The collision occurred near the town of Wolvenkop on the R25 road connecting Johannesburg with Groblersdal, News24 reported.
The cause of the crash is not yet known.More news: Man Utd into Europa Cup semi-finals
Russel Meiring, a spokesman for paramedic company ER24, said several children survived after being pulled from the wreckage near Bronkhorstspruit, east of the capital Pretoria.
Pictures from the scene showed the bus turned upside down on the side of the road and with smoke rising from it.
He added: "Paramedics arrived on the scene to find the fire services already in attendance".More news: Aaron Hernandez found dead in prison with Bible verse written across forehead
ER24 said responders found about 13 children trapped inside the vehicle after its flames were put out.
Another seven children were found around the minibus, but they were declared dead by the medical team. However, the education department later clarified two of the dead were adults.
A department of education spokesman Steve Mabona said some of the bodies of the children were charred beyond recognition.More news: White House pushes uncertain bid to revive health care bill
It was announced on Friday that road deaths over the long Easter weekend had jumped 50% compared to past year.
- I don't feel extra joy at beating Chelsea - Mourinho
- Paris Police Officer Killed In Suspected Terrorist Attack
- Anaheim Ducks douse Calgary Flames 3-1 to complete playoff series sweep
- Fabio Borini and Wahbi Khazri ruin David Moyes' skepticism
- No wildcard for Sharapova: Radwanska
- Macquarie Reiterates "Outperform" Rating for Wpp Plc (WPP)
- 2nd gas attack launched on Iraq troops in Mosul
- Iraq officials: 26 hostages, including Qatari royals, freed
- Birmingham hire Harry Redknapp as crisis-ridden club look to beat the drop
- Sale's 13 Ks, Betts' 2B In 10th Lead Red Sox Over Jays