Dear Srishti,
The only time a company can refuse is mainly due to the following reasons:
1) Fake documents
2) Being medically unfit
3) Any other valid reasons like injunction issued by court or ban by the government.
Now, for the safeguard of the candidate. As I have already mentioned, an individual is weak and faces many difficulties while fighting a large organization. This is a fault of our Indian system, and we have to accept it as long as we are in India. He or she can approach the court for a remedy, claiming damages and compensation. Another action to take is to publish an ad in the newspaper warning everyone about the company. This will have a more significant effect, especially if you can place it in the supplement like Times Ascent for a greater impact.
Please do not use words like, "Does mere empathy sort out the problem? Can anything be done to safeguard the rights of the candidate for that?"
All types of violations, corruption, and organizations that do not follow any laws exist, and when the authorities are approached, they often turn a blind eye. So, if you are seeking justice, go to court or form an NGO and take up the fight against employee exploitation. Alternatively, you can form a union, become affiliated with CITU, and call for a mass protest.
There are no ready-made solutions, and might often makes right. So, if you have the determination to pursue it, take the matter to court and fight it out.
Regards,
SC