Overview of Xero Integration

This section includes all of the information you need to know to establish the integration between Projectworks and Xero. There are separate articles available explaining the process that users follow to export invoices from Project Works into Xero, and to reconcile Projectworks with invoice payment information from Xero.

This article covers the steps for setting up the connection, including:


Data Flow Diagram

The integration of Projectworks and Xero is relatively simple, focusing on exporting Invoices (and associated data) from Projectworks through to Xero. Invoice payment data is pushed from Xero to Projectworks to allow the Debtors report in Projectworks to be reconciled with Xero.

“What does this integration do?” Is a very common question from our customers and accountant partners. Providing a data flow diagram clearly communicates how data in your application maps to Xero and which direction the data flows.

Reference data used

As part of the integration some data from Xero needs to be aligned to corresponding values in Projectworks. The following data from Xero will be presented to Projectworks for mapping to be established.

Xero Data Projectworks: Edit Xero Office Mappings
Tax Rate
  • The Tax Rates that exist for the Xero organisation will be listed in the "Xero Tax Name" field alongside each Tax Rate which has been set up in Projectworks.
  • The values can be selected to provide the mapping between the Projectworks value and the Xero value.
Account
  • The Accounts that exist for the Xero organisation will be listed in the "Xero Account Name" field alongside each GL Code which has been set up in Projectworks.
  • The values can be selected to provide the mapping between the Projectworks value and the Xero value.
Currency
  • Currencies that are set up in Projectworks are listed, and if they also exist in Xero, they will show as "yes" for Exists in Xero

Transaction data

The process of exporting invoices from Projectworks to Xero, and reconciling invoice payments from Xero to Projectworks requires a 2-way flow of data. Essentially, the export of invoices from Projectworks will result in invoices being created within customers in Xero. Should an exported invoice be for a customer that does not exist (or can't be matched) in Xero, a new customer and contact will be created in Xero. The only data that flows from Xero to Projectworks is the payment details for exported invoices (payment date and amount).and a Xero reference.


Process Flow

The high level process flow that transfers data between Projectworks and Xero is shown below. Invoices which are published in Projectworks can be exported either individually, in groups or all for an office.

When importing the invoices into Xero, The Projectworks client name will be matched to the Xero Customer name. If they match, the invoices will be loaded against that customer. If there isn't a match, a new Xero customer will be created as part of the process. If a customer is duplicated in Xero (eg if the names are slightly different to Projectworks) you can merge the customers within Xero.

The invoices are imported as Drafts and then managed by the normal processes within Xero. the Debtors screen in Projectworks lists all invoices which have not been marked as paid, either manually within Projectworks, or through the reconciliation with Xero. The "reconcile from Xero" process within Projectworks checks the Invoice Number in Xero looking for payment details. If payment details (amount and date) are located, the invoice payment details will be updated in Projectworks. When an invoice has no money outstanding it will no longer be shown on the Debtors screen in Projectworks.


Getting Started

How to set up Projectworks

Setting up Projectworks to integrate with Xero is an administrator task and is done on the Integration - Accounting page within the Admin section. Setting up the Xero connection is a one off task and Project works will remain connected to Xero as long as the credentials remain valid.

Before you start you will need:

  1. The credentials for Xero
  2. To understand what Projectworks GL Codes map to Xero Account Names

Connecting to a Xero organisation (authorising connection)

How to Connect to a Xero organisation

Connecting Projectworks to your Xero organisation is easy. The connection is initiated from the Integration - Accounting page in the admin section.

  1. Click "Connect to Xero"
  2. Enter the credentials for Xero
  3. Select the Xero organisation you wish to connect to

This will establish the connection between Projectworks and Xero for the selected Organisation. To complete the integration a number of mappings need to be set to enable the correct data in Projectworks and Xero to be aligned.

Using multiple Xero organisations

Projectworks can be configured to connect to multiple Xero organisations. This is useful if you are running separate General Ledgers for offices/locations within a single Projectworks instance. For example, within a single instance of Projectworks you have three offices set up; Wellington New Zealand, Auckland New Zealand and Seattle USA.

The Wellington and Auckland offices both use the same General Ledger while Seattle has their own General Ledger. Once multiple Xero organisations have been successfully connected to Projectworks, you can specify which Xero organisation a Projectworks office is associated to. This is done by editing the mappings for the Projectworks Offices.

Set Xero Organisation Mappings

Once Projectworks has been connected to Xero and authorised you need to set up various mappings. The mappings are needed to link the relevant pieces of information in Projectworks to the corresponding entries in Xero. The mappings only need to be set up once but can be edited at any time.

Mapping Reference Field

Projectworks invoices include a reference field. This is typically used to include the Purchase Order from the customer which relates to the work conducted. This is important to show on the invoice that goes to customers, but may not necessarily be the most relevant piece of data to export to Xero. 

For each office in Projectworks you can choose to either map the Projectworks Reference or the Projectworks Project Name to the Xero Reference Field.


Specify which piece of Projectworks data will be used for the Xero Reference field.

  • Each Office in Projectworks is listed, with the Xero Organisation it is linked to, and which Reference filed is mapped
  • The Reference filed options are:
    • Invoice reference - the value entered as the "Reference" on a Projectworks invoice
    • Project name - the Projectworks Project Name the invoice is for
  • The Xero Reference field will be populated with the selected data from Project

Note: Each office can be configured to use a different reference field if required.

Mapping tax types

Tax Types are set up in Projectworks to allow the correct tax types and rates to be applied to invoices generated within Projectworks. Tax Types are also set up and managed within Xero and used for invoices generated from within Xero. The same set of tax types don't need to exist in each system, however linking the tax types in both systems allows for seamless integration as data moves between systems.


To map the Tax Types you need to choose the Xero Tax Type that corresponds to the Projectworks Tax Type:

  • Each Tax Type within Projectworks is listed, showing the name, jurisdiction and rate
  • The Xero Tax Name field lists all Tax Types present for that Xero organisation
  • Select the corresponding Xero Tax Type to establish the mapping

Note: It isn't mandatory to map every Projectworks Tax Type to a Xero Tax Type. If required you can also have multiple Projectworks Tax Types mapped to the same Xero Tax Type.

Mapping GL Codes

GL Codes are set up in Projectworks to categorise revenue from invoices. The GL Codes should align with GL Codes within your accounting system (Xero). Each invoice line on a Projectworks invoice is tagged with the GL Code and when exported to Xero ensures that revenue is correctly categorised and to the appropriate Xero account name (GL Code). The same set of GL Codes don't need to exist in each system, however linking the GL Codes in both systems allows for seamless integration as data moves between systems.


To map the GL Codes, you need to choose the Xero Account Name that corresponds to the Projectworks GL Code:

  • Each GL Code within Projectworks is listed, showing the type Services or Non Services) and the GL Code
  • The Xero Account Name field lists all Account Names present for that Xero organisation
  • Select the corresponding Xero Account Name to establish the mapping to a Projectworks GL Code

Notes:

  1. It isn't mandatory to map every Projectworks GL Code to a Xero Account Name. 
  2. If required you can also have multiple Projectworks GL Codes mapped to the same Xero Account Name.
  3. If an invoice line is for a GL Code which isn't mapped to a Xero account the export will fail.

Mapping Currencies

Projectworks can accommodate multiple currencies for budgets and invoices. This allows different offices or projects to have their financials tracked in the appropriate currency. There is no need to map the currencies from Projectworks to Xero as both systems have the same master set of currencies. To have multiple currencies set up for your Xero organisation you need to have bank accounts that can accept each currency.


  • Each currency that is setup in Projectworks is listed, with the currency code and name
  • Whether the currency exists in Xero is shown

Note: Only invoices for a currency which exists in Xero can be exported from Projectworks