Payroll Manager — Payroll guide
Take the month from an empty period to money in people's accounts — and to a number the accounts agree with.
Owns the run from the empty period to the posted journal — and owns the rules it is calculated from. The only payroll role that both prepares and signs off.
What you will be able to do
- See in one screen what the month still needs
- Compare this payroll with last month before anyone signs
- Check the bank file before the bank does
- Prove, months later, exactly who approved what and when
What this role can and cannot do
| Can | Cannot |
|---|---|
|
|
19 steps, each one carried out in the product on .
Check what your sign-in can do #
Where Your name, top right » Profile
- Open your company's address in the browser — it looks like yourcompany.tarleaks.com.
- Type the e-mail address your administrator set up for you, then your password.
- You land on the app launcher: a grid of the apps your company uses.
- Click your name in the very top-right corner of the screen.
- Choose Profile from the menu that drops down.
- Scroll to the roles section.

You should see It says payroll manager. You can calculate a run, approve it, release the money and post it to the accounts — and you can change the rules the calculation uses. Replacing the country rulebook is not yours.
Watch out If the chip does not say what you expected, stop and ask your administrator before you start a run. Half of what you can press depends on it.
Worth knowing Two people with the same job title can have different roles here. If the chip is not what you expected, ask your administrator before you start a run.
Start at the payroll home #
Where Payroll » Overview
- From the launcher, click the Payroll tile.
- You land on the overview. Read the four boxes across the top.
- Click any box to open the list behind it.

You should see The last pay run, the next pay date, how many runs are open and how many are waiting for review. Every box is clickable and takes you to the list behind it.
Watch out "Runs awaiting review" counts runs with flags still open, not runs waiting for a signature. A run can be perfectly clean and still be sitting there unsigned.
Check the month exists before you calculate anything #
Where Payroll » Pay periods
- In the left menu, under RUN PIPELINE, click Pay periods.
- Find the month you are paying.
- Read the State column: open, closed or locked.

You should see A run can only live inside a period, and only an open period accepts one. Closed and locked months are shown differently on purpose.
Watch out The four boxes at the top filter the list, but that filter is not kept when you refresh the page — unlike the run list's, which is.
Open next month #
Where Payroll » Pay periods » Create
- On the Pay periods page, press Create at the top right.
- Fill the three fields in the card that appears.
- Press Create.
| Field | What to put in it |
|---|---|
| Code | How the month is named everywhere else. Use the shape your company already uses — 2026-05, for a May period. |
| Start date | The first day the period covers. |
| End date | The last day. The statutory payment clock starts from this date, not from the day you pay. |

You should see The month appears as open and can now hold a run. Codes read like 2026-05, which is what everything else in payroll will show you.
Watch out Create the month before you need it. A period created on payday is a period nobody checked.
Worth knowing Create the month before you need it. A period created on payday is a period nobody checked.
Open the run register #
Where Payroll » Payroll runs
- In the left menu, click Payroll runs.
- Click one of the four boxes at the top to narrow the list.
- Click it again, or press Clear, to widen it back.

You should see Every run the company has ever produced, newest first, with the state it stopped at. The box you click is written into the address, so you can send somebody the same filtered list.
Watch out What you filter to is written into the address bar, so you can paste the link to a colleague and they see the same list.
Start the run #
Where Payroll » Payroll runs » New run
- On the Payroll runs page, press New run.
- Choose the pay period from the list.
- Leave Structure empty unless you are deliberately paying one group on its own.
- Press Create run.
| Field | What to put in it |
|---|---|
| Pay period | The month this run pays. Only periods that exist are offered — create the period first if it is missing. |
| Structure (optional) | Leave empty and each person is paid under the structure their contract points at. Set it only to force one structure for the whole run. |

You should see The run is created empty, in draft. Nothing is calculated until you open it and press Compute, so creating one commits you to nothing.
Watch out Creating a run calculates nothing. It is an empty container until you open it and press Compute.
Open a run and read its totals #
Where Payroll » Payroll runs » Open
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Read the four figures across the top.
- Click any of them to jump to the payslips they are made of.

You should see The four numbers you will be asked about, with the stage stepper above them showing how far the run has walked.
Watch out Employer cost is not the same as gross. It is gross plus the employer's own half of every statutory contribution — the number a budget is set against.
Worth knowing Every one of those four boxes scrolls you straight down to the payslips they are made of.
Read the run's own history #
Where Payroll » Payroll runs » Open » Run history
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Scroll down past the actions to the run's history.

You should see Who created it, who calculated it, who submitted it and who approved it, each with the time. This is the answer to "who signed this off" three years later.
Watch out This is what an auditor asks for. It is also what protects you when somebody asks why a run was reopened in March.
Read the flags before you go near Approve #
Where Payroll » Payroll runs » Open » Anomaly detection flags
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Scroll to Anomaly Detection Flags.
- Read the flag type, the current figure and the baseline it is compared against.
- Press the dismiss icon on a flag you have explained.

You should see Pay that jumped against the last three months, deductions that disappeared, people with no attendance, and two people sharing a bank account. A flag never blocks a run — it makes somebody look.
Watch out Dismissing without a reason is worse than leaving the flag open. The reason is what the approver reads instead of phoning you.
Worth knowing Dismissing a flag keeps your reason on the record. Dismiss with a sentence somebody else could read in a year.
Compare this month with last month #
Where Payroll » Payroll runs » Open » Variance
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Press Variance in the row of actions.
- Read the headline figures, then the table of people underneath.

You should see Every person whose net pay moved more than the alert threshold, with the reason, plus the joiners and the leavers. A payroll that is right in total can still be wrong for eleven people.
Watch out Joiners and leavers explain most of a big move. If they do not explain this one, do not approve it yet.
Check the bank file before the bank does #
Where Payroll » Payroll runs » Open » Bank / WPS » Pre-flight
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Scroll to the bank panel.
- Choose the file format for your country from the list.
- Press Pre-flight.

You should see Missing company identifiers, malformed account numbers, missing national ids and missing basic-pay lines, listed before a file exists. The check writes nothing and can be run as often as you like.
Watch out The deadline shown is statutory and counts from the end of the pay period. Generating the file late does not restart it.
Worth knowing The panel also shows how many days are left on the statutory payment window. That clock started when the period ended, not when you generated the file.
See what the bank did with every file you sent #
Where Payroll » Payroll runs » Open » Bank / WPS
- From the launcher, click the Payroll tile.
- In the left menu, under RUN PIPELINE, click Payroll runs.
- Press Open on the run you want.
- Scroll to the submission log under the bank panel.
- Read the status, the deadline and the reference on each row.

You should see Generated, submitted, accepted, rejected or cancelled — with the bank reference, the rejection reason and the days left. The banner above it counts the whole company, not just this run.
Watch out A file that was generated but never marked submitted looks identical to one nobody made. Record the submission the day you make it.
Find one person's payslip #
Where Payroll » Payroll runs » Open » Payslips
- In the left menu, click Payroll runs and open a run, then scroll to the payslips — or open Payslips from the menu to search every run at once.
- Type part of somebody's name in the search box.
- Press Open on their row.

You should see The grid leads with the person's name, not a reference, and every row opens the full breakdown.
Watch out A payslip that is still pending is one the run has not finished with. Do not quote it to anybody.
See what everyone is paid under #
Where Payroll » Employment contracts
- In the left menu, under COMPENSATION, click Employment contracts.
- Search by name, employee number or structure code.
- Press Open to see one in full.

You should see The wage, the currency, the structure and the country each person is paid under. This is what the calculation actually reads.
Watch out The search reaches every contract in the company, not just the rows on screen — so it finds a joiner from six months ago as easily as today's.
Put a new joiner on the payroll #
Where Payroll » Employment contracts » New contract
- On the Employment contracts page, press New contract.
- Fill the form.
- Press Save.
| Field | What to put in it |
|---|---|
| Employee | The person. Pick them from the list rather than typing anything. |
| Structure type | Which set of rules pays them — employee, worker, intern. It decides which salary structure applies. |
| Currency | What they are paid in. |
| Country | Which country's statutory rules apply to them. |
| Nationality scope | Nationals, GCC citizen, expat or all. This decides which social-insurance rates the calculation uses, so it is not cosmetic. |
| Basic wage | The monthly basic, before allowances. |
| Start date | The first day this contract pays from. |
| Housing / Transport / Phone | The allowances the offer promised. The salary rules refer to these by name, so a housing allowance typed here is what the housing rule pays. |

You should see Without a contract a person is simply absent from every run — no error, no warning. This form is what puts them in it.
Watch out Employee, structure type and start date cannot be changed afterwards — you would have to end this contract and create another. Wage, end date, status and frequency can be changed at any time.
Ask what it would cost if somebody left #
Where Payroll » Employment contracts » Open » End-of-service benefit
- Open Employment contracts and press Open on a contract.
- Scroll to the End-of-service benefit card.
- Set the termination date and the reason.
- Press Compute quote.
| Field | What to put in it |
|---|---|
| Termination date | The day they would leave. Service is counted to this date. |
| Reason | Termination by employer, resignation, fixed-term end, force majeure, employer breach, and the two Saudi female-employee reasons. Several of these reduce the entitlement — the quote applies that for you. |

You should see The entitlement, the tier breakdown behind it and any reduction the reason causes — using the same country rules a real final settlement will use. Asking terminates nobody and records nothing.
Watch out This is a question, not an action. Nobody is terminated and nothing is recorded by asking it.
Worth knowing Resignation reduces the entitlement in several Gulf countries and the quote applies that automatically. Change the reason and watch the figure move.
Test a pay rule before it touches a payslip #
Where Payroll » Salary structures » Edit » Live tester
- In the left menu, under COMPENSATION, click Salary structures.
- Choose the structure from the list at the top.
- Press Edit on the rule you want to look at.
- Scroll to the live tester, set a sample wage, and press Evaluate.

You should see The rule runs against a made-up employee and shows whether the condition fired and what the amount came to. Nobody's real pay is touched.
Watch out Amounts must be written with a decimal point — 1.0, not 1. It is the single most common reason a rule refuses to save.
Worth knowing The chips under the expression box paste the things you are allowed to refer to — the wage, an earlier rule's result, a contribution rate — so you do not have to remember the names.
Read what the month cost and what is owed #
Where Payroll » Payroll reports
- In the left menu, under RUN PIPELINE, click Payroll reports.
- Set the two dates at the top.
- Move between Contributions, End-of-service liability and Headcount cost.
- In Headcount cost, choose By department, By branch or By country.

You should see What is owed to each statutory scheme, what the company would owe if everyone left today, and what people cost by department, branch or country — all from the same payslips that paid them.
Watch out Employer cost is gross plus the employer's half of every contribution. It is the number a budget is set against, and a payslip list cannot give it to you.
Worth knowing Every figure links to the payslips behind it, so a number you did not expect is one click from the people who caused it.
Replacing the country rulebook is not yours #
Where Settings » Payroll refuses this sign-in.
- Open the payroll settings page.
- It answers that you do not have access to this section.

You should see You tune the rules the company already runs on — rates, pay components, contribution bands, all under COMPENSATION. Swapping the statutory rulebook underneath them changes every number produced afterwards, so it is deliberately an administrator's decision.
Watch out Ask the administrator for a rulebook change in writing, and ask them which date it applies from. Rates already used on a posted payslip never change.
Use cases — the work, step by step
Each one is a sequence somebody actually performs, with the screen behind every step. Every screen here was opened in the product as this role before it was published.
monthlyRun the month from an empty period to a posted journal #
The order is not a preference. Every step depends on the one before it, and the two that people skip — the variance and the pre-flight — are the two that cost a day when they are skipped.
Start at the payroll home and read what is still open. If last month is not posted, deal with that first.

Payroll » Overview — verified: the page says “Payroll” Check the month you are about to pay exists and is open. Nothing can be calculated outside a period.

Payroll » Pay periods — verified: the page says “Pay periods”; 12 row(s) listed Check everybody who should be paid has an active contract. Somebody without one is simply absent from the run, with no error anywhere.

Payroll » Employment contracts — verified: the page says “Payroll Contracts”; 372 row(s) listed Create the run against the period, then open it and press Compute. Recompute as often as you need while it is still yours.

Payroll » Payroll runs » New run — verified: the control is offered Read every flag and explain it. A flag left unexplained becomes a phone call on payday.

Payroll » Payroll runs » Open » Anomaly detection flags — verified: the page says “Anomaly Detection Flags” Read the variance against last month — the person list, not the headline. This is the step that catches the eleven people a correct total hides.

Payroll » Payroll runs » Open » Variance — verified: the control is offered Pre-flight the bank file before you approve. Approving a run whose file cannot be produced only moves the problem to payday.

Payroll » Payroll runs » Open » Bank / WPS » Pre-flight — verified: the control is offered; the control is offered Approve, then generate the file, send it, and record the submission with the bank's reference.

Payroll » Payroll runs » Open » Bank / WPS — verified: the control is offered Mark the run paid when the bank confirms, then post it so the cost reaches the accounts. Approved and never posted is the one that bites at year end.

Payroll » Payroll runs » Open — verified: the page says “Payroll run”; the page says “Lifecycle actions” Close the pay period.

Payroll » Pay periods — verified: the page says “Pay periods”; 12 row(s) listed
urgentThe bank bounced the file and it is payday #
The statutory clock did not stop when the bank said no, and it counts from the end of the pay period rather than from your rejection.
Open the run's bank panel and read the log row: the status, the reference and the rejection reason the bank gave.

Payroll » Payroll runs » Open » Bank / WPS — verified: the control is offered Run the pre-flight again. Whatever the bank objected to is usually named here as an error against one person's row.

Payroll » Payroll runs » Open » Bank / WPS » Pre-flight — verified: the control is offered; the control is offered Fix the cause — nearly always an account number or a national id on somebody's record — then regenerate and resubmit from the same panel, and record the new submission.

Payroll » Payroll runs » Open » Bank / WPS — verified: the control is offered
edgeA payslip was wrong and the run is already paid #
A booked payslip is deliberately immutable. The correction is a new figure in a new period, which is exactly what an auditor expects to see.
Open the payslip and confirm what is actually wrong — line by line, in the run it was paid from.

Payroll » Payroll runs » Open » Payslips — verified: the page says “Payslips”; 500 row(s) listed Check the run's state. If it is paid or posted, Reopen refuses, and it should: what was paid stays visible as what was paid.

Payroll » Payroll runs » Open — verified: the page says “Payroll run”; the page says “Lifecycle actions” Put the correction into the next period instead — a work entry for missing hours, a contract change for a wrong wage — and tell the person which payslip it will appear on.

Payroll » Employment contracts — verified: the page says “Payroll Contracts”; 372 row(s) listed Read the run history on the original run so you can say who approved it and when, before anybody asks.

Payroll » Payroll runs » Open » Run history — verified: the page says “Lifecycle actions”
weeklySomebody joined on the fifteenth #
A joiner entered after the run is calculated is a joiner who is not paid, and nothing on the screen will tell you.
Create their payroll contract with the real start date. The allowances you type here are what the salary rules pay by name.

Payroll » Employment contracts » New contract — verified: the control is offered; the page says “New payroll contract” Recompute the run. The calculation prorates from the start date using the company's proration basis.

Payroll » Payroll runs » Open — verified: the page says “Payroll run”; the page says “Lifecycle actions” Check the variance: the joiner should appear in the joiners count and their part-month should look like a part-month.

Payroll » Payroll runs » Open » Variance — verified: the control is offered
You are the one role that can both prepare and sign off. That is convenient and it is also a risk, so when the company turns on the two-person rule you will find you cannot approve a run you created yourself — and that is working as intended.