The accident occurred just before midnight Monday on a winding road in Pagaralam.
The bus, which was headed for the provincial capital of Palembang from neighboring Bengkulu province, fell into a 80-meter (262-foot) -deep ravine and crashed into a fast-flowing river after the driver lost control of the vehicle in an area with a number of sharp declines.
The head of Palembang's Search and Rescue agency, Berty Kowaas, said the decision to call off the three-day search was made after all people reported missing were accounted for.
He said all 35 bodies of victims, including eight children, the driver and two crew members, have been handed over to families for burial. Eight of the 13 injured passengers are still hospitalized, many with broken bones.
Achmad Wildan, an investigator at the National Transportation Safety Committee, said a preliminary report shows that the bus was traveling downhill at high speed, causing the brake pads to overheat and not work properly. No skid marks were found on the road, indicating there was no braking force, he said.
Road accidents are common in Indonesia because of poor safety standards and infrastructure.
Early last year, 27 people were killed when a packed tourist bus plunged from a hill in West Java province. In September last year, 21 were killed when another tourist bus plunged into a ravine in Bogor, another hilly area in West Java.