Expat operational tracking — visa to ticket
Most Oman audit-firm staff are expat. Five sub-tabs cover the operational reality the firm runs daily: visa sponsorships (with MOLP quota), driving licences, insurance policies, accommodation lease, return-air-ticket entitlements. None of this fits a generic HR system.
The 5 sub-areas
Sponsor → sponsored party · visa type · number · valid-from / valid-to · status · consumes_quota flag for the manpower report.
Number · country · class (light_vehicle / heavy / motorcycle / bus / taxi) · expiry · international-permit flag for travel.
Health (Dhamani) · life · accident · travel · workmen · other. Insurer · policy number · sum insured · premium · paid-by · valid period · dependents covered · coverage summary.
Company villa / company flat / shared / employee-rented / family home / hotel / other. Address · area · city · landlord · monthly rent · paid-by · lease period · sharing-with · status.
Annual home leave / joining / exit / family / business / other. Beneficiary · sector_class · route · entitlement_year · entitlement_amount · actual_amount · last_issued · next_eligible · status (eligible → issued → used / forfeited / encashed).
MOLP quota report
Oman MOLP (Ministry of Labour) sets a manpower quota per firm based on Omanisation requirements. Each sponsored expat visa consumes one slot. ExpatService::quotaReport() returns:
- Per-employee: how many quota slots they consume (typically 1 — themselves)
- Firm-wide: total consumed, total available, remaining
- Flag visas with
consumes_quota=0(e.g. visit visa, conference visa) so they don't double-count
Insurance — Dhamani context
Oman implemented mandatory health-insurance scheme Dhamani (Sept 2023). All employees + dependents must be covered. Track:
- Insurer (e.g. Solidarity Saudi Takaful, Al Madina Takaful, RSA)
- Sum insured (typical OMR 3,000-5,000/year for primary care + chronic)
- Coverage summary (in-patient / out-patient / dental / optical / maternity)
- Dependents covered (spouse + minor children)
- Premium paid-by (firm / employee / shared)
Accommodation — paid-by drives payroll
If accommodation is firm-provided + paid:
- No housing allowance in payroll (already provided in kind)
- Lease end-date triggers renewal task at T-60
- Monthly rent is firm's expense, not employee's
If employee-rented + housing allowance paid:
- Allowance reflected in
employee_allowancesas monthly - Counted toward PASI subjection (basic + housing) for Omani staff
Tickets — the entitlement lifecycle
| Status | Meaning |
|---|---|
| eligible | Employee is now due (e.g. annual home leave anniversary) |
| issued | Ticket purchased / cash given |
| used | Travel completed |
| forfeited | Anniversary passed without claim |
| encashed | Employee opted for cash payment instead |
Tracking actual_amount vs entitlement_amount lets the firm see who took the cheap option (encashed) and who took the expensive route. Useful for budget planning + benchmarking.
Step-by-step — record a visa
Open employee → Visa tab
Existing visas as cards with expiry badges + MOLP-quota chip.
Click "+ Add visa"
Inline form: visa_type (work / dependent / visit / business) · visa_number · valid-from / valid-to · sponsor (the firm or another employee for dependent visas) · status · consumes_quota flag.
Save
Audit-logged. Card appears. MOLP quota report updates.
Renewal at T-60
M17 reminder cron emails HR coordinator + employee. Doc upload (renewed visa PDF) goes to Documents tab; this row's expiry can be updated to the new period.
Open HR → MOLP Quota Report. See per-employee + firm-wide quota consumption. If your firm is at 95% quota, hiring is constrained — expansion plans need to factor in quota release (someone leaving) or quota application to MOLP.
Visa overstay in Oman is OMR 10/day fine accruing on the employee. If a renewal slips, both the firm and the employee are on the hook. Set m17.expiry_reminder_days to 60 for visas (vs 30 default) — gives time for ROP processing.
Sum monthly rents across all "company-paid" accommodations → firm's annual housing cost. Track YoY. When negotiating new leases, present this aggregate to the partner. Often there's room to consolidate (e.g. 4 staff in one villa instead of 4 separate flats).