Free SIF Validator for Oman WPS Payroll
Ship payroll files without bank rejections.
Ujoor checks your WPS SIF file against every bank rule before you send it. Fix errors in-browser, then download a clean file your bank will accept.
Free forever
Private by design
English + عربي
Designed for Oman
Rejected files delay payroll
A single bad row and the bank sends the whole file back. Payday slips by a week.
Silent formatting bugs
Trailing spaces, wrong encodings, stray tabs issues invisible in Excel, fatal at the bank.
Typos cost real money
One missing digit in an IBAN and salary lands in a stranger’s account. Good luck recovering it.
From messy spreadsheet to bank-ready file in three steps.
Upload
Drop a .csv or .txt SIF. Nothing uploads parsing happens in your browser.
Review
See every issue with its row, field, and rule. Edit cells in place and re-validate instantly.
Download
Export a clean SIF your bank will accept. Send it. Pay your team.
Validate a SIF file — right here.
Drop a file below. Everything runs in your browser. Nothing uploads.
Drop your SIF here
Drag a .csv or .txt file, or browse. Max 10 MB.
Everything you need to ship a clean SIF.
75+ validation rules
Every field and cross-field check from the official SIF spec, with clear messages.
WPS-compliant
Built for Oman’s Wage Protection System. Matches what your bank actually checks.
English + Arabic
Full bilingual UI with RTL layout. Error messages, column labels, everything.
100% client-side
Your salary data never leaves the browser. No uploads, no servers, no exposure.
Fix it in place
Edit any cell. See errors clear as you type. Undo if you mess up.
Clean file, one click
When everything is green, download the fixed file ready to send to the bank.
Your salary data never leaves your device.
Every parse, every rule check, every edit runs inside your browser. There is no upload endpoint. There is no server. Close the tab and nothing persists.
Your browser
Parsing · validation · editingLocal memory only
Never saved, never uploadedOur servers
Not involved. Not even a little.A validator today. A payroll platform tomorrow.
SIF validator
The free tool you’re using today.
SIF generation from payroll
Turn your payroll sheet into a valid SIF, end to end.
Submit directly to the bank
Skip the portal. Push validated files straight to your bank’s API.
Be first in line.
Leave your email and we’ll tell you when payroll generation and direct bank submission go live. No spam.
Frequently asked.
Yes. The validator runs entirely in your browser no upload, no server, no logging. Open the network tab while you use it and you’ll see nothing leaving the page.
Salary Information File the standardized format Omani banks use under the Wage Protection System (WPS) to process monthly payroll. It’s typically a CSV or tab-separated file with 16 fields per employee.
Salary Year, Salary Month, Employee ID Type (C for Civil ID or P for Passport), Employee ID, Employee Name, Bank Code, Account Number/IBAN, Salary Frequency (M/B), Working Days, Net Salary, Basic Salary, Extra Hours, Extra Income, Deductions, Social Security Deductions, and Notes. Every row must have exactly 16 fields separated by commas or tabs.
An Omani IBAN is always 23 characters: 'OM' + 2 check digits + 3-digit bank code + 16-digit account number. Ujoor verifies length, checksum, and recognizes all 22 Omani bank codes — no manual lookup needed.
Omani Civil IDs are typically 7–9 numeric digits with no leading zeros. Ujoor flags IDs with leading zeros, non-numeric characters, unusual lengths, or duplicates across rows — each error points to the exact row so you can correct it before the bank does.
Arabic employee names and special characters require UTF-8 so the bank can read them correctly. If the file uses a different encoding (like ANSI or Windows-1256), Ujoor stops validation and tells you to re-save as UTF-8. Most Omani banks mandate UTF-8 anyway.
Yes. Ujoor auto-detects commas or tabs, and accepts .csv or .txt. UTF-8 encoding is required (most banks mandate it anyway).
Yes. Ujoor supports both Monthly (M) and Bi-weekly (B) salary frequencies. The same file cannot mix both — all rows must share one frequency. Ujoor flags any mixed-frequency file before you upload it.
All banks that follow the Central Bank of Oman’s SIF v4.1 spec. The validator checks your file against that specification, not against any single bank’s proprietary quirks.
Yes. Ujoor validates against the Central Bank of Oman’s SIF v4.1 specification, which every licensed bank follows — Bank Muscat, NBO, Bank Dhofar, Sohar International, Oman Arab Bank, Ahli Bank, Bank Nizwa, Meethaq, Maisarah, Al Hilal, and all other 22 banks operating in Oman.
For Omani employees, SPF is 8% of gross salary, capped at a maximum of OMR 240 per month (8% of the OMR 3,000 salary cap). Expatriates contribute at different rates. Ujoor flags any row where the Social Security Deduction doesn’t match the standard rate.
The minimum wage for full-time Omani nationals is OMR 325 per month. Ujoor warns you when a row falls below this so you can confirm the employee is part-time, on unpaid leave, or had deductions that explain the shortfall.
Yes. Oman Labour Law caps deductions at 50% of an employee’s gross pay. Ujoor warns when deductions exceed that limit — a common cause of bank rejection and a potential labour-law violation. Add a note in the Notes field explaining the deduction if it’s justified.
Open the file in Ujoor and every rejection reason appears inline — with the exact row, field, and rule. Fix each issue in place, then download a clean file. Most common causes: invalid IBAN, duplicate employee IDs, non-UTF-8 encoding, and salary math mismatches.
The validator stays free. Paid features (payroll generation, direct bank submission) are coming later — they’ll be optional and separate.