Enable your company to bypass a lot of the manual bookkeeping data entry with this Xero integration connector

Provider of the connector:


Current state:


Type of license:


Programming language:



With the help of this cloud-based accounting management software, small business owners can easily manage their accounts from any location, allowing them to perform common bookkeeping functions like invoicing and payroll. In comparison with its most notable competitors such as QuickBooks Online or FreshBooks, Xero is more affordable for small companies, and in addition to that, it doesn’t charge more for additional users.

By default, Xero provides integrations for over 1000 apps for payroll, human resource management (HRM), customer relationship management (CRM), inventory, reporting, online payments and more. However, these add-ons cover generic, most common business use cases. If you have heavily customised data objects, you will most likely need an integration tool that supports high levels of customisation as well.

About elastic.io’s Xero integration connector

This is a custom connector that allows you to communicate with the Xero API endpoints and send or get accounting related data to or from Xero to use it in your business process automations. It was built to work on the elastic.io iPaaS and comes by default together with all of the other connectors that the platform has to offer.

The Xero connector has both the trigger and the action functionalities. This means that you can use it as a first step in your flow to trigger some action in another system (= Xero as a trigger) or have it act upon some change in another system (= Xero as an action).

For example, you can poll Xero for updated data objects such as Invoices, Accounts or Payments, and send this information to, say, your internal customer relationship management software. Or you can use the action function called “Make a Raw Request” to call virtually any type of custom request to the application’s API. We will briefly discuss triggers and actions below; alternatively, you can learn more about them and the Xero connector in general by clicking the Documentation link above.

Due to the Xero integration connector’s proprietary license, you cannot modify it on your own. In case you need more / other connector functions, please contact our pre-sales team at ps[@]elastic.io to discuss the specifics of your integrations.

PLEASE NOTE: To use the Xero connector in your flows, you must first create an account on the elastic.io platform. Therefore, if you don’t have such an account yet, you can sign up for a free 14-day trial of elastic.io.

How to add Xero integrations on elastic.io

As a trigger:

Step 1
Once you have created an account on the elastic.io platform, navigate to the sections Dashboard or Flows, click on the button “Add new Flow” and either scroll down to the bottom or use the search bar to find the Xero connector.

Select Xero integration connector

Step 2

The Xero connector triggers are still in development; currently, it provides the function “Get Updated Objects” that polls for updated data objects such as payments or invoices. Therefore, after selection, this is the function that is already selected by default and you’ll be directed straight to the authorisation. The authorisation occurs via OAuth 2.0, for which you’ll need to create a new App in your Xero developer account. Our documentation (link above) provides more details on how to do that.

Authenticate Xero integration

Step 3

Following authorisation, you’ll be navigated to further configure the Xero connector as a trigger by selecting which data objects you want to poll (e.g. Invoices or Quotes) and optionally setting a start date and time from which the polling should occur.

Step 4

After that, you can request a sample of the records to ensure that you configured Xero properly, and with that, the trigger configuration is complete. To test how it behaves in an actual business process automation flow, you will need to an action as your next step – for example Hubspot or Salesforce is you want to sync Xero data with customer contact details.

As an action:

Using Xero as an action means that it follows another application in your workflow and acts upon some changes in it. The setup steps are nearly the same: select Xero from the list of connectors, choose a function you want to work with, and verify your Xero account on the elastic.io platform using current or new credentials.

When it comes to functions, you can use the ‘Make Raw Request’ function to execute custom requests to the Xero API endpoints using any of the GET, POST, PUT, PATCH, or DELETE methods. Other currently available action functions are ‘Lookup Object’ (at most one) and ‘Lookup Objects’ (several) to look up specific data object by unique criteria and object types (e.g. Users). In addition to that, you can also include and process attachments using these action functions.

OUR TIP: To quickly evaluate Xero’s action connector settings, you can begin your test flow with our Simple Trigger connector. Keep in mind, though, that Simple Trigger is not suitable for testing how the Xero connector receives datasets from other systems because it lacks any accounting related data items to sync. To fully explore this connector, you’ll need to integrate it with more suitable apps that are available on the elastic.io platform.

For more details on how to work with the Xero component, please check the dedicated Documentation page following the link above.

Popular Xero automation scenarios

As we have already mentioned above, Xero does provide integrations to a large number of third-party business apps by default. In addition to that, as it is a popular accounting software, there are many single integrations that allow small and expanding businesses to ensure data exchange between one of their data management systems – an HRM or CRM – and Xero. Yet if you’re in need of a more holistic integration solution, where you can connect several systems like HRM, CRM, inventory or even reporting apps along with Xero, an iPaaS platform such as the one provided by elastic.io might be just the right choice.

Here are just a few examples of the most popular Xero integrations that our users have created:

Xero with Salesforce

To enable a steady flow of Xero contact details to CRM and make it easier for sales and finance teams access all customer related data in one place.

Xero with Shopify

To sync sales transactions from Shopify to Xero automatically and quickly match these against bank data.

Xero with Stripe

To accept online payments from Apple Pay, Google Pay as well as credit and debit cards for online invoices sent from Xero.

… and there are many more apps to connect to.

Take a look at all of the business apps and systems you can connect Xero with to provide faster and more accurate accounting data across the entire organization. Get your free 14-day demo now, no strings attached.