Skip to content
Maliru Help Center

Setting up your payroll provider

Choose the file your payroll software imports, give everyone their payroll ID, map your pay items, and prove it with a sample before the first payday.

Maliru works out what each person earned, line by line. Your payroll provider — BrightPay, Sage, Xero, QuickBooks or your accountant — works out tax, National Insurance or its equivalent, pension and take-home pay, issues the payslips and pays your employees. The file that goes between them is set up once, under Pay › Payroll provider, and proved before your first real payday.

You need the Manage pay rates permission.

Pay › Payroll provider with the generic CSV chosen, proven for this workspace, a payroll ID for everybody and each kind of pay mapped to a pay item

1. Choose the file

Under The file your payroll provider imports, choose:

The choice is saved as soon as you make it. Pay items are kept for each file separately, so switching to another file doesn't carry them over.

QuickBooks Advanced Payroll (UK) is listed, but not available yet: its layout has to be checked against a live QuickBooks account first. Until then, use the generic CSV.

BrightPay (UK) and Sage 50 Payroll (UK) say Not yet proven against a live BrightPay account (or Sage 50 Payroll account) until Maliru has imported its test file into that product and the totals matched. They still work: check the totals yourself, as in step 4. If a later check against the product fails, the file says it is under review, and to use the generic CSV until it is fixed.

Under the choice, How each line goes in says where each kind of pay lands in that file: hours as hours × rate, a correction that takes money back as a deduction before tax, and so on.

2. Payroll IDs

Every file matches people on their payroll ID: their employee number in your payroll software, such as BrightPay's works number, Sage's employee reference or their employee number in Xero. Never on a name: two people called Sam Hart would otherwise swap pay.

Press Set payroll IDs to set everybody's in one place, or set each on the person's Pay tab under Users. An ID is up to 35 characters, and each is used once in your workspace, ignoring capitals; a clash names who already has it, including somebody who has left. An export is refused, naming who is missing one, until everybody on it has one. Contractors don't need one, because they are never in a payroll file.

3. Pay items

Each kind of line maps to the pay item it goes to in your payroll software: an earnings rate, a payment, an addition, a deduction type. Then Save pay items.

  • A whole type, marked (any), such as Overtime (any), covers every kind of it.
  • A single kind, such as Overtime x1.5, wins over its type. Map each overtime rate on its own when your payroll software has one rate per multiplier.
  • Kinds that have appeared on a recent run say on a recent run.

For BrightPay, Sage 50 and the Xero keying sheet, a line with no pay item stops the export, naming it. The generic CSV needs pay items only if it prints them. Nothing is ever sent to a pay item Maliru guessed.

4. The first import

  1. Download sample. Until you have closed a run, the sample has a zero line for each kind of pay you have mapped, for every current employee with a payroll ID: enough to check that every person and every pay item lands. It needs at least one person with a payroll ID and one kind of pay mapped. Once you have closed a run, the sample is your latest closed run.
  2. Import it into your payroll software, into a test period or one you can clear.
  3. Check every person and every line landed, and compare its totals with the ones Maliru shows under the sample.
  4. Press Totals matched. Maliru records who ticked it and when, and the screen says Proven for this workspace.

Until that tick, every export says Not yet proven for this workspace. Change a pay item or the columns afterwards and it says so again, since the mapping changed, and an old sample can't prove the new mapping: download a new one. The tick belongs to one file, so switching to another needs proving too.

5. Each payday

Close the run, then press Export for payroll on it, or choose More › Export for your payroll provider. Before you download, the dialog shows:

  • anything that stops the export, with the exact fix. Nothing downloads until it is fixed;
  • the Control totals: people, gross, deductions and reimbursements. Compare them with your payroll software's pay-run summary after the import. A dropped person or line shows up here before anybody is paid;
  • how many contractors are left out, and why (see below);
  • Already sent on …, with who sent it, if this run has been downloaded in this file before.

Every download is recorded, with its totals, under Files handed over.

Export for your payroll provider on a closed run: the contractors left out, and the control totals for people, gross, deductions and reimbursements, before the download

An export refused: the employees with no payroll ID are named with the fix, and Download stays unavailable until it is made

Sending a run twice

You can download a run again with Download again, and it is recorded again. Don't import it a second time: a Sage import can't be undone, and payroll software that adds what it imports would pay those lines twice. A change after sending goes in the next run as a correction, never as a second full file. See putting a paid period right.

Contractors are not in the file

A payroll file carries employees only. Your business pays contractors itself, from their self-bill statement, with the payment schedule or the payment file for your bank; a payroll file with them in it would pay them twice. The dialog says how many were left out, and they are in none of the totals. A run with only contractors on it has nothing to export.

Import didn't work?

Press Import didn't work? beside the download, paste what your payroll software said, and send it. Support gets the file, the provider and the run with it, and the conversation opens so you can follow it up.