The search and rescue agency said in a statement on Thursday that the driver of the bus lost control shortly before the crash in an area near the city of Sumedang, in West Java province.
The ministry said the bus was carrying junior high school students and some parents. There were 39 survivors.
Photographs from the scene showed the bus had ended up on its side with rescue workers searching for more victims.
Supriono, a local search and rescue agency official, said later that evacuation efforts had been completed and survivors had been taken to a nearby hospital.
The exact cause of the crash was not immediately clear, though the ministry said there were initial indications that the vehicle’s road worthiness tests were not up to date.