FlecBase Docs

Payroll: hours into Employment Hero

How a week a worker files on their phone becomes money in Employment Hero — and what has to be set up once before it will.

FlecBase sends approved hours and a pay category to Employment Hero, which supplies the rate and runs the payroll; the finished pay run returns as a CSV.
FlecBase decides which pay category each day is; Employment Hero supplies the rate for it and runs the payroll. The finished pay run comes back as a CSV.

The shape of it

FlecBase owns the hours, the rates and the award. Employment Hero owns tax, super, leave and STP. The handover is one API call per week, carrying a pay category per day.

That split matters because of what it implies: if a FlecBase award rule is wrong, Employment Hero will pay the default rate without complaining and nothing over there will flag it. The award setup is load-bearing on pay.

StageWhereWho
Enable the add-onFlecBase AdminFlecBase
Enter the API keyAdmin → Employment Hero → SetupWorkspace admin
Map clients to businessesSetup tabWorkspace admin
Map pay code items to pay categoriesPay codesWorkspace admin
Push ratesPay code → Push to Employment HeroWorkspace admin
Send the employeePlacementConsultant
File the weekPhone appWorker
Approve the weekTimesheetsSupervisor or office
Push the hoursTimesheetConsultant
Pay runEmployment HeroPayroll

Setting it up, once

1. The add-on

Employment Hero is a paid add-on, enabled per workspace by FlecBase. It is not simply a switch: standing the integration up means mapping each client, filling in tax file numbers and employment types, and testing a pay run end to end. Until it is on, none of the screens below appear.

While the add-on is off the payroll screens do not exist. Enabling it means mapping every client to an Employment Hero business, filling in tax file numbers and employment types, and testing a pay run end to end.
The add-on is a gate and a project: until the three middle steps are done, none of the screens in this article exist.

2. The API key

Admin → Employment Hero → Setup. Paste the key and press Check & save.

The key belongs to the workspace, not to the server — every workspace has its own Employment Hero login. It is stored encrypted and never shown again; only the first six and last four characters are displayed afterwards.

It is checked before it is saved. A key that cannot authenticate is not stored, so a mistyped key during a rotation leaves the working one in place rather than taking the workspace offline.

Replacing the Employment Hero API key: the key is checked against Employment Hero before it is saved, so a mistyped one leaves the working key in place.

Two things the Setup tab reads off the account rather than asking:

3. Clients to businesses

Employment Hero calls a client a business. Hours for a placement go to the business its client is mapped to — so somebody placed at two clients reaches two payrolls.

Only organisations that actually carry a placement are listed. A workspace with 1,481 organisations would otherwise get a screen nobody can read when six of them pay anybody.

Which client is which business: every FlecBase client carrying a placement, the number of placements, and the Employment Hero business its hours go to.

If this is wrong, nothing fails. The hours are accepted — right employee, right dates, charged to the wrong company. Nothing errors, so the mapping is worth checking rather than assuming.

4. Pay code items to pay categories

A FlecBase pay code item maps to an Employment Hero pay category through external_id. For any workspace that has ever imported an Employment Hero pay run CSV, this is already populated — the importer has been maintaining it.

Pay code items mapped to Employment Hero pay categories.

Two forms turn up in real data:

5. Push the rates

A FlecBase pay code becomes an Employment Hero pay rate template. FlecBase is the source of truth for the rate — it is negotiated per Job × Org and drives the charge rate too, which Employment Hero has no concept of.

Pushing rates from a FlecBase pay code into Employment Hero.

What does not travel is the tax treatment. Whether a category is tax exempt, accrues leave, or appears separately on a payment summary is legislated, and FlecBase holds two of those six attributes. Categories are created in Employment Hero, where somebody understands the treatment; FlecBase then owns their name and their money.

Rates are converted on the way through. FlecBase holds the effective rate — what lands on the payslip. A template rate is the rate before loading. Sending 40.00 straight through to a category with 25% casual loading pays 50.00, so the push divides it back out and then reads the template back to check Employment Hero's own arithmetic agrees, to the cent.

The push refuses rather than guesses when:

6. The award

The award on the role decides what each day is paid as. Employment Hero is not doing this — a line with no category is paid at the employee's default rate, every day of the week, including Saturday.

Award rules in FlecBase, which decide the pay category for each day.

Rules are read in order, so day-conditioned rules come first — otherwise a catch-all claims Saturday as ordinary before the Saturday rule sees it. The engine has no concept of "a Saturday rate": it has a measure and a day condition, which is enough.

Every week

7. Send the employee

Placement → Send to Employment Hero. On the placement, not the person: a person alone does not say which payroll, because the business comes from the placement's client.

Sending a placement's worker to Employment Hero as an employee.

The confirmation says which business, how that was worked out, whether this is a create or an update, and whether the payroll is live — before it writes.

Created is not the same as payable. Employment Hero returns status Incomplete when something it needs is missing, and an Incomplete employee is left out of pay runs entirely — approved timesheets and all. FlecBase reports the status and names the missing fields, because their own message ("Basic Details are incomplete") does not say which. Usually it is bank account details.

8. The worker files the week

Hours, breaks and a signature on the phone, or entered in the CRM. The week arrives as Submitted and cannot go to payroll yet.

A worker filing a week of hours in the phone app.

9. Approval

Timesheets. Nothing reaches payroll until somebody accepts the hours. Approve and Send back both require a note, and both are recorded against the placement, the client and the worker.

The timesheets list showing each week's submission and approval status.

Who approves is a fallback chain, most specific first:

  1. The placement's own supervisor.
  2. The site's nominated supervisors — any one of them.
  3. The internal group on the placement, as the agency backstop.

The level is recorded with the decision, because "approved by Jane" and "approved by Jane, who is the agency consultant because this client nominated nobody" are different facts, and a dispute turns on the second.

Approving or rejecting a week, with the mandatory note.

Select-all works for a client with a dozen workers: one note covers the batch. Weeks that could not be approved are named, not counted.

10. Push the hours

Timesheet → Push hours to EH. Only appears once the week is approved. The whole week goes in one request, with a pay category per day.

Pushing an approved week of hours to Employment Hero.

Each day becomes one Employment Hero line. A day worked in two stretches is two lines — that is their model, and FlecBase matches it. Day-rate and per-kilometre work goes as units rather than a clock window.

Their timesheets do not update in place. Re-pushing a corrected week is refused as an overlap rather than replacing it, so use Clear lines in EH first. FlecBase records which Employment Hero line each day became, so it knows what to clear.

11. The pay run

In Employment Hero. Two things decide whether the hours appear, and both fail silently:

The Employment Hero pay run with the pushed hours in it.

When something looks wrong

SymptomUsually
Pay run "adds" the timesheets and adds noneThe employee is Incomplete, or the lines are outside the period, or they are on another pay schedule
Some days came across, not allThe pay period starts or ends mid-week and cuts the FlecBase week in half
Saturday paid at the ordinary rateNo award on the role, so no category was sent and the default applied
A rate shows 0.00The category was added to the template after the employee was linked to it; re-push the rates
Paid 25% overAn effective rate pushed as a base rate against a loaded category
Push hours button missingThe week is not approved, or every line is already sent

The pattern worth internalising: almost nothing in this chain fails loudly. Hours land in the wrong company, at the wrong rate, or in no pay run at all, and every one of those looks like success. The checks FlecBase does — reading the week back, comparing their arithmetic to ours, naming the days it could not classify — exist because the alternative is a plausible wrong number.