Switching to Beanflow

Moving from another payroll system — or a spreadsheet — to Beanflow mid-year? This guide walks through a clean restart in a new company, rebuilding consistent payroll history while avoiding overlapping periods that can affect YTD and T4 totals.

Last updated August 2026

At a glance

  • A clean restart means creating a new company in Beanflow and re-running payroll period by period from your real starting point.
  • It is the recommended path when your current company's payroll history is not clean, or a past period is locked after approval and cannot be corrected without voiding.
  • For a clean restart, create a new company. Do not use a second, overlapping pay group as a way to recreate payroll that was already approved in the existing company.
  • Export your employee list first, then import it into the new company — see our Employee Import & Export guide.
  • Where you start the catch-up depends on whether you ran payroll elsewhere earlier in the year.

When a clean restart is the right call

A clean restart is the cleanest route forward when one or more of these apply:

  • Your current company has superseded or overlapping payroll runs, and the period lock makes it hard to correct an individual past run without voiding already-approved payroll.
  • You started using Beanflow mid-year after running payroll elsewhere — in another system or a spreadsheet — and need the full year captured.
  • You want a clean, complete year-to-date record heading into T4 season without patching individual periods in place.

When these apply, rebuilding the history from scratch in a new company is usually simpler and more reliable than correcting runs one at a time. The new company gives you a clean ledger where every period runs in sequence and nothing is locked behind an earlier approval.

Avoid overlapping historical payroll

Do not use a new pay group to redo past payroll

A second pay group is not a correction mechanism for payroll that was already approved. If the same employee and historical periods are recreated in another group, the result can create overlapping payroll history and duplicate or blocked YTD/T4 data. Correct a past period by voiding and re-running it in its original pay group, or use the new-company clean restart described in this guide.

Creating a new company keeps the clean-restart history isolated: the new company's YTD and T4 totals are computed from the runs inside that company. The old company's data stays separate and has no effect on the new company's records — whether you keep it or remove it later.

A new pay group can still be appropriate for a future configuration change (such as a new province or pay frequency). The rule is narrower: do not create a parallel group to recreate overlapping historical periods.

The clean restart process

  1. Export the employee list from the current company. On the Employees page, use Export to download a CSV. Keep this file safe — you will import it in step 4. See Employee Import & Export for what the file includes and how to use it.
  2. Create a new company in Beanflow Payroll. Enter your business details (legal name, province, business number, etc.) as you would for a normal setup.
  3. Create pay groups under the current rules (for example, bi-weekly full-time or bi-weekly part-time). Use clear group names. Do not use a special "correction-only" group to recreate periods for someone who was already paid; future configuration changes can use a new group when appropriate.

    Migration catch-up (important): If you were running payroll at the start of the tax year, include the earliest payroll whose pay date falls in that tax year, then re-run forward period by period. Depending on your schedule, that payroll's work period may begin in the previous calendar year. If an employee was hired later, start from their real first paid payroll after hire.

  4. Import employees into the new company. On the Employees page, use Import and upload the CSV from step 1. Beanflow pre-validates every row before creation; after validation passes, creation proceeds row by row, so review the import result for any create-time failures. See Employee Import & Export for the detailed behavior and retry steps.
  5. Re-run payroll in order — period by period up to the current period — using the real hours and earnings from your historical records. Reconcile CPP, EI, and income tax against what was actually deducted before treating the rebuilt YTD/T4 totals as complete.
  6. Once you've confirmed that the payroll runs in the new company are all correct, you can optionally remove the old company from Company profile. Payroll data is isolated per company, so keeping or deleting the old one has no effect on your new records — it is purely cleanup.

Where to start the catch-up

The recommendation is the same either way — a clean restart in a new company, then re-run payroll period by period. Your situation only changes the starting period:

If you ran payroll earlier in the year

If you were paying employees before your Beanflow start date — in another system or a spreadsheet — begin with the earliest payroll whose pay date falls in the target tax year. Re-run forward from there. A payroll paid in January can cover a work period that began in December; T4 reporting follows the pay date, not the period start date.

If Beanflow is your first payroll

If you were not running payroll before your Beanflow start date, simply start the catch-up from your real first pay period — the first period in which you actually paid employees. There is no need to create empty periods before that.

A visual walkthrough

On our homepage, the "Switching to Beanflow — From another payroll — or a spreadsheet — to this period's paystubs" section includes a step-by-step video you can follow along with as you work through the process above.

Keep historical corrections in the original pay group

Do not create an extra pay group to "redo" a historical period for someone who was already paid. If a past run needs correction, void that run within its original pay group and re-run it there rather than starting a parallel historical group. A separate pay group remains a valid choice for future configuration changes when the old and new periods do not overlap.