// Adds dimensions UUID, Author and Topic into GA4
Thursday, June 18, 2026
30.5 C
Singapore

Can my boss legally reject my resignation and refuse to pay my salary because I couldn’t complete a task?

SINGAPORE: Resigning from a job is typically a straightforward process, but for one worker in Singapore, it became a complicated and frustrating experience.

The worker took to r/askSingapore, a Reddit forum, on Tuesday (Dec 10), explaining that things got messy when his boss insisted he finish a huge task before his notice period ended.

He, however, knew for sure that he couldn’t complete the task because of its magnitude and because he still had other work to take care of before leaving the company. He has also explained this to his boss, but unfortunately, his boss remained firm on his demand.

“I feel the worst case would be my boss refusing to sign off on my exit clearance form, so I checked with HR in this scenario. Can I still get paid and leave the company?” he asked.

Unfortunately, he learned that he couldn’t receive payment without his boss’s signature on the exit clearance form.

“I proceeded to email my boss as suggested by HR to confirm that exit clearance can still proceed even if the task cannot be completed, but my boss refused to acknowledge this,” he explained.

“I have escalated to HR on my boss’s reply; however, there is no assurance from HR that my boss cannot hinder my exit clearance process.”

Frustrated and unsure of what to do next, he turned to Reddit for advice, asking if anyone knew whether his boss’s actions were allowed under Singapore’s Ministry of Manpower (MOM) regulations.

“What more can I do to protect my rights?” he asked.

“You are not a slave; they cannot force you to work…”

In the discussion thread, many pointed out that employees are entitled to their final pay as long as they have completed their contractual obligations, and employers can’t hold them back from leaving simply because a task wasn’t finished.

One Redditor said, “Don’t think they can block you legally; they have already accepted your resignation. Maybe your boss is being petty.”

Another commented, “I don’t think they can withhold your salary this way. Just inform your HR and boss that you will try your best to finish, and if impossible, hand over your task. If they withhold any salary, you will press charges and leave it at that.”

A third Redditor expressed, “You are not a slave; they cannot force you to work. No such thing as exit clearance is not done; then they cannot release salary. This is illegal.”

Others recommended that the worker keep a detailed record of all communication with HR and the boss, as this could serve as crucial evidence if the situation escalates.

According to the Ministry of Manpower (MoM), employers cannot stop employees from resigning.

Employees can leave their jobs anytime, provided they either serve the notice period specified in their contract or compensate in place of notice. Furthermore, if the notice period has been served, the employer must ensure the final salary is paid on the employee’s last working day.

Read also: “Ex-employer playing dirty” — Worker complains after her boss, who agreed to waive her 2-week resignation notice, deducts her final salary

Featured image by Depositphotos (for illustration purposes only)

- Advertisement -

Hot this week

Singapore’s youth are AI’s biggest sceptics, new survey finds — and it’s not about access

A new AsiaOne survey reveals that young Singaporeans under 35 are the least likely to use GenAI, both at work and in their personal lives, bucking the national push for wider AI adoption.

Singapore’s beloved hawker food may get pricier as rice costs rise

From an Al-Jazeera video featuring Singapore hawkers. "A sharp rise in rice prices across Asia is putting pressure on food vendors in Singapore, where affordable meals are a cornerstone of everyday...

Popular Categories

document.addEventListener("DOMContentLoaded", () => { const trigger = document.getElementById("ads-trigger"); if ('IntersectionObserver' in window && trigger) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { lazyLoader(); // You should define lazyLoader() elsewhere or inline here observer.unobserve(entry.target); // Run once } }); }, { rootMargin: '800px', threshold: 0.1 }); observer.observe(trigger); } else { // Fallback setTimeout(lazyLoader, 3000); } });
// //
Enable Notifications OK No thanks