Skip to content
English
  • There are no suggestions because the search field is empty.

Migrating from Xero Projects

If you are moving to Projectworks from Xero Projects, this guide covers what to prepare, what decisions to make upfront, and what to check once your data has been loaded.

How it works

For Xero Projects migrations, you extract your own data and send it to us as CSV files. There are two key reports to pull, plus an optional invoice export. The process is straightforward and you can extract the data at any time. Our data team then takes those files and loads them into Projectworks.

What you need to export from Xero

Xero projects - Extract your data (1)

Time entries and projects list: these come from two separate reports inside Xero Projects. Your Customer Success Manger (CSM) will provide step-by-step guidance with visuals showing exactly which reports to run. When exporting, make sure to select all columns and set grouping to none. Export both reports in CSV format.

Invoices: these are optional but recommended. Export your sales invoices from Xero via Business > Invoices in CSV format. We will use this to create your invoices against the right projects in Projectworks.

image_720 (1)

Before we start

Your CSM will send you a decisions form before we run the load.

The key things to confirm are:

  • How far back do you want to bring your data?
    There is no limit, but some businesses choose a start date to keep things simple.

  • How do you want to handle work in progress?
    With Xero Projects migrations, uninvoiced time entries cannot be linked back to specific invoices from the source data. This means all uncleared WIP will be written off up to an agreed cut-off date. We will confirm that date with you before the load runs so you know exactly what to expect when you see your data.

  • Do you have any pre-billed invoices?
    If you invoice clients before work is done, we need to know so those are handled correctly.

How Xero Projects maps to Projectworks

how xero projects maps to projectworks

In Xero Projects you have clients, projects, and tasks. In Projectworks the hierarchy is Companies, then Projects, then Budgets, then Timecodes. Your tasks generally become timecodes, and the key new layer is budgets, which sit between projects and timecodes and drive how invoicing works.

If you have not already, read our article How Projectworks structures your data and the guide on setting up project pricing before your validation.

A note on Xero invoice sync

If you use the Xero integration in Projectworks, it is worth understanding how migrated invoices behave differently from invoices created natively in Projectworks.

Invoices created in Projectworks get a unique sync key that allows payment status to update automatically when they are paid in Xero. Migrated invoices do not have this key, so their payment status will not update automatically.

Any historical invoices that are paid will need to be manually marked as paid in Projectworks as a one-time step after go-live. From that point forward, any new invoices you create in Projectworks will sync with Xero normally.

Your CSM will walk you through this after go-live.

What to check during validation

Once your data has been loaded, here is what to focus on.

  • Check your project and budget structure.
    Confirm that projects have come across correctly and that budgets and timecodes underneath them make sense for how you work.

  • Check your WIP position.
    Uninvoiced time up to the cut-off date should be showing as written off. If anything looks like it should have been written off but is still showing as uninvoiced, raise it with your CSM.

  • Check a sample of time entries across different projects and staff.
    Confirm hours and rates look correct.

  • Check a sample of historical invoices
    Confirm amounts and dates match your Xero records.

  • If you use the Xero integration, test it end to end.
    Create a draft invoice in Projectworks for an active project and check it exports to Xero correctly.

  • Check which historical invoices are showing as unpaid
    Make a note of any that will need to be manually marked as paid after go-live.

If something does not look right

Raise it with your CSM. Our data team can make bulk corrections during validation, so most things can be fixed without you having to touch anything manually.

For general validation guidance that applies to all migration types, see How to validate your migrated data.