A Complete Guide To Payroll Migration
TranquilTRANQUIL

A Complete Guide To Payroll Migration

Home/Blog/A Complete Guide To Payroll Migration
HR & Payroll
January 18, 202612 min read
Share:

What payroll migration actually involves

Payroll migration is the move of employee records, pay structures, running balances and calculation rules from one system to another, followed by the first live payroll run on the new platform. The old system might be a spreadsheet maintained by one accountant, a standalone payroll package that never talked to the general ledger, or an aging product the vendor no longer develops. Whatever the starting point, the test of success is simple: in the first month after cutover, every employee is paid the right amount on the right day, and the company's obligations to GOSI and the Wage Protection System are intact.

Payroll is less forgiving than most data migrations. A wrong supplier balance might surface weeks later in a reconciliation. A wrong salary shows up on payday, on an employee's phone, with their name on it. That is why a payroll migration needs a documented plan, a parallel run and a formal sign-off rather than a weekend data load.

This guide walks through when a migration makes sense, which data to move, a step-by-step method, the Saudi requirements that shape the project, a worked parallel-run example, and the mistakes we see most often.

Signs it is time to migrate

Companies rarely switch payroll systems for the sake of novelty. There is usually a concrete trigger:

  • Headcount growth. A spreadsheet that works for 20 people becomes fragile at 150 spread across branches and project sites.
  • More complex pay. Percentage-based housing allowances, fixed transport allowances, site allowances, overtime at different rates, and a mix of Saudi and expatriate contracts.
  • Compliance load. Monthly WPS files, wage updates with GOSI and iqama renewals all depend on clean, connected data.
  • Disconnected accounting. When the payroll journal is keyed into the ledger by hand every month, differences between the payroll report and the GL become routine.
  • A wider ERP project. Increasingly, payroll moves as part of a broader implementation covering HR, finance and projects.

Write the main trigger down as a measurable goal at the start, for example "close payroll in two working days instead of five" or "zero variance between the payroll register and the GL". That goal becomes the yardstick for judging the migration once it is done.

Deciding what data to move

Not everything in the old system deserves a place in the new one. The rule of thumb is to move anything that affects next month's pay or represents an open obligation, and to archive the rest in a readable form.

Data groupExamplesMigrate?Watch out for
Employee masterName, national ID or iqama, nationality, hire date, department, job titleYes, in fullHire date drives end-of-service and leave accrual
Pay structureBasic, housing, transport, other allowancesYes, in fullMust match the contract and the GOSI registration
Bank detailsIBAN, bank nameYes, after validationOne wrong digit means a returned salary
Running balancesLeave days, loans, advances, deferred amountsYes, as opening balancesNeeds sign-off from HR and finance
End-of-service provisionAccrued amount per employeeYes, then recalculateMust tie to the balance sheet account
Payroll historyPrior years' monthly registersPartlyUsually current year only; archive the rest
Raw attendance logsOld punch recordsUsually noClose the last month before cutover instead

Keep the retention rules in mind before decommissioning anything. The current Commercial Books Law requires books and records to be kept for ten years, so the old system's data needs a safe, readable archive even if it is not migrated.

Saudi requirements that shape the project

GOSI contribution rates

Contribution rates depend on nationality and on when the employee entered the system. Under the rules that applied before 3 July 2024, a Saudi employee contributes 9% for annuities and 0.75% for SANED, while the employer pays 9% annuities, 2% occupational hazards and 0.75% SANED. For non-Saudi employees, the employer pays 2% occupational hazards only.

The new Social Insurance Law changed the picture for new entrants with no prior contribution periods. Their annuity rate steps up by half a percentage point a year on each side, from 9% toward 11% by July 2028, which puts it at 10% for each party in the period that started in July 2026. In practice, a single "Saudi / non-Saudi" flag is not enough. The new system needs to know which regime each Saudi employee falls under, or it will apply the wrong rate. This is one of the most frequently missed fields in migration templates.

WPS and the Mudad platform

Wage Protection System files are uploaded through Mudad. The Ministry of Human Resources and Social Development cut the upload window from 60 days to 30 days effective 1 March 2025. Reports published in August 2025 also describe Mudad alerts for basic wages that look illogical against other recorded data and for deductions above 50% of the wage.

So the new system has to produce a WPS file in the required format from the very first month, and the basic wage in that file must agree with GOSI and the employment contract. Inconsistency between sources is exactly what triggers alerts. Our guide to WPS and Mudad compliance covers this in more depth.

End-of-service benefits

Under Article 84 of the Labor Law, the award is half a month's wage for each of the first five years and a full month's wage for each year after that, based on the last wage and prorated for partial years. Article 85 reduces the award on resignation: nothing under two years, one third from two to under five years, two thirds from five to under ten years. These rules need to be configured in the new system, and the provision recalculated per employee and compared with the migrated balance.

A seven-step migration method

1. Plan and staff the project

You need HR (they own employee data and contracts), finance (they own the journals, provisions and bank transfers) and IT or the implementation partner (they own the tools and configuration). Name one accountable project lead with decision rights, and fix the month in which the first live payroll will run.

Pick the cutover date deliberately. The start of a financial year or quarter makes reconciliation easier. Avoid months with annual bonuses, across-the-board increases or major restructuring, and be careful around Ramadan if your company pays early ahead of Eid, because the calendar gets tight.

2. Document the current rules

Before moving a single number, write down how each component is calculated today. How is overtime computed? Is housing 25% of basic or a fixed amount? How are absences treated in a 31-day month? In what order are multiple deductions applied? In many companies these rules live in a payroll accountant's head or inside spreadsheet formulas. Capturing them saves more time than any other step.

3. Clean the data

Data cleansing typically eats more than half the project timeline, and it decides the outcome. For every employee, check:

  • National ID or iqama number and expiry date.
  • IBAN and bank, and that the account holder name matches.
  • Basic and housing amounts against the GOSI registration.
  • The true hire date, especially for staff transferred from a sister company or rehired.
  • Leave balance after closing the last month.
  • Loans and advances: original amount, repaid, monthly instalment, outstanding.
  • Leavers whose records were never closed.

4. Configure the new system

Set up pay components, employee groups, GOSI rules, overtime formulas, leave policies and end-of-service rules. Map each pay element to GL accounts and cost centers so the payroll journal posts automatically, split by department and project. Finally, prepare the bank transfer format and the WPS file.

5. Run a trial load

Load into a test environment, never straight into production. Then check control totals: headcount, total basic pay, total allowances, total outstanding loans, total end-of-service provision. Each figure must tie back to the old system before you move on.

6. Run payroll in parallel

Process at least one full month, ideally two, on both systems and compare results employee by employee. This is the step you must not compress, however tight the timeline.

7. Go live and monitor

Once parallel results are approved, run the first live payroll, watch for bank rejections, answer payslip questions and reconcile the journal. Keep the old system in read-only mode for several months, and do not cancel it until the first year-end close on the new platform is complete.

Worked example: reading a parallel run

Hypothetical example: a contracting company with 120 employees ran its September payroll on both systems. The summary looked like this:

LineOld system (SAR)New system (SAR)Variance
Total basic pay612,000612,0000
Allowances248,500248,5000
Overtime38,40036,9501,450
GOSI deductions41,30042,180880
Loan instalments19,00019,0000
Net pay838,600836,2702,330

A SAR 2,330 variance on a SAR 836,000 payroll looks trivial, but it had two distinct causes. First, the old system priced an overtime hour on a fixed 30-day month, while the new one was set up on actual calendar days, which affected 14 employees. Second, three Saudi hires who joined after July 2024 with no prior contribution history had been on the old rate in the legacy system. The new system was right on the second point. The first point is a policy decision management has to make and document.

That is the real value of a parallel run. It catches configuration errors in the new system, and it often exposes errors the old one carried for years.

Reconciling opening balances

Opening balances are where HR and finance meet. Before go-live, complete at least three reconciliations:

  • End-of-service provision. The sum of employee balances in the new system equals the provision account on the balance sheet. Differences usually trace back to wrong hire dates or leavers never settled.
  • Loans and advances. The sum of outstanding balances equals the employee advances account.
  • Accrued leave. If the company books a leave provision, it should match the value of migrated leave balances.

Have the HR manager and the finance manager sign each one. The signature protects you at audit and ends later arguments about where a variance came from. For more on how the award and leave are calculated in a system, see our article on end-of-service and leave under the Labor Law.

A realistic timeline

Duration depends on headcount, complexity and data quality. For a mid-sized company with 100 to 300 employees, this is a reasonable plan:

WeekActivityDeliverable
1 to 2Planning and rule documentationApproved calculation rules
3 to 5Data cleansingReviewed employee file
4 to 6Configuration and GL mappingReady test environment
7Trial load and control totalsReconciliation report
8 to 11One or two parallel runsVariance report with root causes
12Go-liveFirst live payroll

Cleansing and configuration can overlap. The parallel run cannot be squeezed, because it is tied to the monthly pay cycle itself.

Mistakes that cause the most pain

  • Loading dirty data. Old errors move into a system that looks more trustworthy, which makes them harder to spot.
  • Skipping the parallel run. Usually justified by time pressure or "simple" data, and usually followed by a month of corrections and off-cycle payments.
  • Ignoring GOSI regime differences. Treating every Saudi employee at the same rate when they fall under different rules.
  • Not testing with the bank. If the transfer file source or format changes, test it with the bank before payday.
  • Switching off the old system too soon. Before year-end and audit, leaving you to dig through backups nobody can open.
  • Late training. The payroll team learns the new screens during payroll week, under pressure.
  • Silence toward employees. Payslips will look different. Without a heads-up, questions and anxiety spike.

Pre-payday checklist

  • Parallel results are approved and every variance has a documented cause.
  • End-of-service and loan balances are reconciled to the GL and signed.
  • The bank transfer file has been tested with the bank.
  • The WPS file is ready and the basic wage agrees with GOSI.
  • Pay elements are mapped to the right accounts and cost centers.
  • User roles are set: who prepares, who reviews, who approves.
  • Employees know what the new payslip looks like and where to find it.
  • A complete, readable copy of the old system is archived.

Where an integrated system helps

Moving payroll into an integrated ERP solves more than the cutover. When payroll sits alongside HR, attendance and accounting, data flows between them without rekeying: attendance feeds the payroll run, the payroll run posts the journal, and the journal lands on the right cost centers.

Tranquil's HR and payroll solution covers employee management, time and attendance, payroll management, employee self-service and document expiry alerts, together with bank integration for direct salary transfer and Muqeem integration for iqamas and visas. Implementation services can include customized reports and multi-level approvals, plus certified training with 30 days of post-training support. To see how payroll connects to the rest of the business, read our guide to HR and payroll ERP in Saudi Arabia.

Frequently Asked Questions

How long does a payroll migration usually take?

For a company with 100 to 300 employees, two to three months is realistic, including one or two months of parallel running. Smaller companies with simple pay structures can move faster, provided their data is clean.

Do we need to migrate every year of payroll history?

Usually not. Migrating the current year plus open balances is typically enough, as long as earlier years are archived in a readable format. The current Commercial Books Law requires records to be kept for ten years.

When is the best time to cut over?

At the start of a financial year or quarter, away from bonus months, general increases and early Eid payouts. Leave enough time for at least one full parallel run before the go-live date.

How do we handle different GOSI rates among Saudi employees?

Add a field to the migration template that records which regime each employee falls under, based on registration date and prior contribution history. The new system then applies the right rate automatically, and the parallel run confirms it.

Can Tranquil transfer salaries directly to banks?

Yes. Tranquil's HR solution includes bank integration for direct salary transfer. You can contact the Tranquil team to discuss a payroll migration plan for your company.