Registering A Malaysia Visit Pass Through MDAC Online
The Ministry of Digital Affairs of Malaysia runs an online portal where employers and agents register visit passes for foreign workers. It replaced the older manual submission process a few years ago. The system is functional but has enough friction that knowing the quirks saves you time. Step one is creating your account. Go to the MDAC portal and register as an employer or authorized agent. You will need your company's company number, a valid email, and a mobile number that can receive OTP. The OTP sometimes arrives three to five minutes late during peak hours. Don't click "resend" repeatedly, because that locks you out for ten minutes. I learned that the hard way on a Tuesday night with a worker whose visa was expiring in 48 hours. Once logged in, you can initiate a new visit pass application. The system asks for the applicant's passport details, current visa status, intended entry date, and the purpose of visit. Make sure the passport expiry date is at least six months away, or the system rejects it immediately. There is no soft warning on that field. It just bounces back.
After you submit, the application goes into a review queue. Processing typically takes three to five working days, but it can stretch to two weeks during holiday periods. You can check the status on the dashboard using the reference number. The statuses are "Under Review," "Approved," and "Rejected." If it gets rejected, the reason is usually listed, but sometimes it's vague. I had one application returned with nothing but "Document Discrepancy" as the note, which turned out to be because the passport photo page resolution was too low when we scanned it. We re-uploaded a cleaner scan and it went through the next day. Viewing existing passes works from the same dashboard. You can filter by employee name, application date, or validity status. There is a PDF export option, but the formatting occasionally breaks if you have more than twenty registered workers. I keep separate spreadsheets for large teams instead of relying on the export function. Managing a pass usually means updating contact details, extending a stay, or cancelling it before expiry. Extensions require a fresh application, not an edit on the existing one. The system doesn't let you modify core fields after submission. If you need to correct a passport number or date of birth, you have to withdraw the application and start over, which resets the processing clock.
Here are the things most people miss: The portal only accepts certain file formats for document uploads. PDF and JPEG only. PNG files get rejected without explanation. Also, each file has a 2MB limit. I've seen people upload high-resolution scans that the system silently truncates, then wonder why the uploaded document appears blurry to the reviewer. The payment gateway supports online card payment and bank transfer. Card payment is instant. Bank transfer takes one to two working days to reflect. If you pay by transfer and the application deadline is close, you're essentially gambling on whether it clears in time. I always use the card option now.
Get the Full Details

The system doesn't send email notifications for every status change. You have to log in and check manually. There is no push notification feature or SMS alert for approval. If you're managing multiple workers across different companies, you'll want to check the dashboard daily rather than waiting for an email that may never come. One edge case worth noting: if a worker enters Malaysia on a social visit pass before your MDAC application is approved, the system sometimes flags their entry record as conflicting. The fix is to submit a cover letter explaining the timeline through the portal's messaging feature, attaching the entry stamp copy. It adds maybe two extra days to processing, but it prevents the application from getting stuck in an endless review loop. There are real limitations to this system. The uptime isn't great. Between 10 PM and 6 AM Malaysian time, the portal is unstable. I've had forms partially save and then lose data because the session timed out. Always work during daytime hours if possible. The interface also doesn't support bulk operations. Each worker gets one application at a time, so registering a team of fifty people means fifty separate submissions. There is no CSV upload or batch import feature, which is frustrating when you have high turnover.
If the MDAC portal is down or you're dealing with a particularly stubborn application, the alternative is visiting the immigration office in person with printed documentation. It's slower in a different way, but at least you can speak to a human who might actually explain why something was rejected. For routine registrations with clean documents, the online route is fine. It just requires patience and attention to detail.