The 34-year-old man was arrested last week in the capital Jakarta after a complaint was filed by the parents of one of the alleged victims, said investigator Reynold Hutagalung.
The teenage boy said he was abducted by the salesman and held for 45 days, during which time he was repeatedly raped and forced to perform sexual acts on other men.
The toy salesman admitted to raping at least 96 boys between the ages of 13 and 17 over the last two years, many of them street children picked up at train stations, Hutagalung said.
"He kept a list and details about each of his victims," he said, "including the names of 16 of them."
Hutagalung says the accused, a father of four, said he was himself abused as a child.
He could face 15 years behind bars if found guilty.