Xero Connection and Settings

Estimated reading time: 67 min
Xero banner

Xero is an online accounting platform that helps businesses manage their finances, including invoicing, expense tracking, payroll, and reporting.

By integrating Xero with Wiresk, users can automate key workflows like monitoring new or updated invoices, retrieving records, and managing contacts or transactions.

This allows businesses to pull data directly from Xero into Wiresk’s interface, facilitating easier management of financial records

Wiresk integration with Xero requires a Xero account. Sign up for free at Xero.com.
Explore the available functionalities through the Xero API documentation.

A connection to your Xero account is needed so we can sync it with our platform.

There are two ways to connect your app to Wiresk:

▪️ In “My apps” section, where you can manage your connections (select or create your group first to get access to this section, refer to the Group system ).

▪️ While building your Flow, you can easily establish a connection to your app directly within the Flow builder. This can be done during the setup of either a Trigger or a Method.

This guide explains how to set up a connection in “My apps” section, which is essentially the same process as creating one on-the-go.

  • On your Wiresk’s Dashboard, select your Group.
  • On the left panel, go to “My apps” and select Screenshot 2025 04 08 at 9.58.41 in the morning Xero Connection and Settings
  • Search “Xero” in the search field or scroll down the list of apps and choose the Xero icon.
Animated image GIF, showing the step of how to create an app connection. First, select the group then select the + create button.
Wiresk offers two pathways for connecting to your Xero account:

▪️ the Standard OAuth connection, it is recommended for less technical users but offer the same features as the Advanced connection (multi-tenant, Access Token refreshed automatically, etc…).
For multi-organisation account, you can choose the specific organisation (“Tenant”) for each Method and Trigger. When you use standard OAuth connection and don’t explicitly select an organization, the first one you authorized will be used by default (you can authorize multi-organisation in one connection. Refer to the standard Oauth connection below).

▪️ the Advanced OAuth connection, it requires creating a app in your Xero developer Portal, to get the Client ID and secret for Wiresk’s connection.
  1. On the connection settings panel, give a name to your connection, e.g., “Xero Connection”.
  2. Select XERO tab connection.
  3. Select the checkbox Xero (Select permissions for the authorization).
  4. Select the “Authorize” button.
Screenshot of Wiresk "My Apps". It shows Xero connection setting panel. Numbered red arrows shows the configuration process.

You will be redirected to Xero connection page.

Screenshot of Xero Log in page to continue with Wiresk app.
  • Log in to your Xero Account.
  • On the new screen, select your organization and give access to Wiresk App by selecting “Continue”.
Screenshot of Xero access permissions. Here you can select the organization to let the Wiresk app have access to.

You are now redirected to Wiresk’s connection settings:

  • Your email associated with Xero is displayed.
  • Your connection is now listed in your Apps list.
  • Select the Save button.
Screenshot of Wiresk "My Apps page". It shows Xero connection settings panel. Red arrows are pointing to email field and save button.

Voila! Your Xero app OAuth connection is ready. You can now use it to build your Flows.

To authorize multiple organizations within one connection
1 – Create and save your initial OAuth connection.
2 – Select that connection and click “Authorize.”
3 – Choose the additional organization to authorize.
4 – Save, and repeat steps 2-4 for each organization.
Prerequisite:
▪️ You must create a custom app in your Xero developer Portal.
▪️ Retrieve your Client ID and Client Secret.
  • Go to Xero Developer Portal > My Apps (log in to your Xero account if asked).
  • Select “New app” button.
Screenshot of Xero developer portal, showing My apps section. red arrow is pointing to the "new app app" button.
  • Set a name for your App, here we’ll use “Wiresk app“.
  • Select your Integration type, in our case we’ll set it to “Web app“.
  • Enter the application URL : https://app.wiresk.com/
  • Enter the Redirect URI : https://api.wiresk.com/api/auth/callback
  • Agree to the Xero Developer Platform Terms & Conditions.
  • Select “Create app” button.
Screenshot of Xero "add a new app" settings screen. Red arrows are pointing to app name, integration type and create app button. red rectangles are focusing on "company or application URL" and "Redirect URL" fields.
  • On your newly created app management page, select Configuration tab
  • Then, Select Generate a secret.
Screenshot of Xero developer page, in the configuration section of the My apps tab, it shows how to generate a secret.
  • Copy and save the Client ID and Client secret (The secret will only be shown once). Keep the Credentials for the Advance connection in Wiresk.
  • Go to My apps tab > select “+Create” button > search Xero.
Screenshot of Wiresk "My Apps". It shows Xero connection setting panel for the OAuth Advanced Connection. Numbered red arrows shows the configuration process.
  1. On the connection settings screen, give a name to the connection.
  2. Select OAuth Advanced Connection.
  3. Enter your Xero Client ID.
  4. Enter the Secret from the previous step.
  5. Select Xero app permissions for authorization.
  6. Select the “Authorize” button and you will be redirected to Xero connection page.
Screenshot of Xero access permissions. Here you can select the organization to let the Wiresk app have access to.
  • Log in to your Xero Account.
  • On the new screen, select your organization and give access to Wiresk App by selecting “Continue”.

You are redirected to Wiresk. Your app connection is now listed.

Screenshot of Wiresk "My Apps". It shows Xero connection setting panel for the OAuth Advanced Connection. Red arrows shows that the connection is listed and point to the "save" button.
  • Select the “Save” button to complete your connection process.

Voila! Your Xero app OAuth Advanced connection is ready. You can now use it to build your Flows.


Now that Xero is linked to Wiresk, you’re ready to start building Flows.

How to create a Flow ↓
  • Select your Group, then on the Flow management screen click on “Create Flow”.
Animated image GIF, shows where to click to create a Flow in Wiresk. first select a group then click on create Flow.

A – Select the Trigger

Flows can be executed by multiple Triggers, depending on the desired workflow. For example, you could use scheduled Triggers with different recurrence rules alongside a Webhook Trigger for immediate, event-driven runs of the Flow. If you choose to “Run Once“, the Flow will execute using only one Trigger and its sample data.
  • On the new screen, name the Flow that you want to create.
  • Add your Triggers by clicking on the Wiresk 2025 05 02 at 15.00.40 Xero Connection and Settings next to “All Triggers”.
  • On the Trigger selection screen, search your app or select it from the list below the screen.
Screenshot of Wiresk Trigger setting screen. Red arrows shows that you can wether search your app in the search or or select it in the list below.
  • Select your preferred Trigger on the next screen and customize its settings. For Xero Triggers, refer to the Trigger settings below.

As mentioned in “How to connect your app to Wiresk” above, during your Trigger settings, you can create a new connection to your apps at this stage.

B – Add an HTTP Trigger to your Flow

An HTTP Trigger allows you to manually activate your Flows.

HTTP Trigger settings

  • Select the Wiresk 2025 05 02 at 15.00.40 Xero Connection and Settings next to “All Triggers”, to add a Trigger for testing your Flow,
  • Select the button “HTTP”.
Screenshot of Wiresk Trigger selection screen. Red arrow is pointing to Http button. Select that button to configure the Http Trigger.
  • Write a description and select your API key or create a new one.
Screenshot of the HTTP Trigger settings. Here you need to provide a description and select the API key.
  • Click on save. Now you can use your HTTP Trigger to Manually run your Flow.

C – Add a Method to your Flow

The Method will perform a specific task on a particular app or service you’ve connected to Wiresk like get info or send emails.

You can add at least 1 or multiple Methods for complex Flows (a maximum of 255 Methods).
  • On the Flow builder screen, click on the plus button (+) next to the Trigger icon.
Screenshot of Wiresk Flow Builder, showing Trigger icon and an arrow pointing to a plus button. This button is use to add Methods in Wiresk.
  • Search or scroll down to select your apps Methods, then configure it settings. For Xero Methods, see Methods list and settings in the step below.
Screenshot of Wiresk flow builder.  This screen shows the Methods selection panel. Search the app or select it in the list below the search.

D – Add Wiresk Tools to your Flow

If you want to build a complex Flow, Wiresk offers a selection of tools at your disposal. Refer to Wiresk’s Tools

To add Tools in your Flow, Follow the same step as adding the Methods.

  • On the Flow builder screen, click on the plus button (+) then just click on the “Tool” tab and select the Tool that you want to add.

What will start your automation…

See Wiresk Scheduler – The Fundamentals.

Setting up the recurrence rule or scheduler of your Trigger (if the Trigger is not a Webhook):

  • Regular intervals will monitor your Trigger by intervals in minute
  • Daily recurrence will monitor your Trigger by day and hour
  • Monthly recurrence will monitor your Trigger every month on a defined date and hour
  • Yearly recurrence will monitor your Trigger on a specific date and hour every year
  • Specific dates will start your Trigger on specific dates

After you’ve configured your Trigger parameters, select the “Use” button to fetch a live sample of data from the Trigger.

What it does:

  • Extracts real data based on your Trigger setup
  • Validates your parameters by showing if they match existing records
  • Prepares data for field mapping – the sample helps you map your Trigger output to your Method parameters in the Flow. Refer to FIELD MAPPING documentation.

Think of it as a preview step: it makes sure your Trigger is working and gives you real data to work with when setting up the rest of your flow.

XERO Xero Connection and Settings

These Triggers will start your Flow automatically at a specific time or intervals instead of being triggered real-time event (Webhooks).


What your automation will do…

XERO Xero Connection and Settings
You can include between 1 and 255 Methods to build complex Flows.

MANAGE RECORDS:

This unified Method is used to create various Records in a specific Entity.

Configuration Table:

Input Options:

  • Input: Allows dynamic inputs, e.g., from a Trigger or from Step responses. Input tab>uncheck “Show recommended” to see all fields).
  • Default Value: You can specify a fixed attribute.
Name*Create Records
Connection*Select your connection or create one.
Entity*
(Set of data that contain records)
Select the available Entities to create records:

Invoice, Payment, Batch Payment, Contact, Bank Transaction, Bank Transfer, Credit Note, Quote, Manual Journal, Item, Purchase Order, Contact Groups, Employee, Asset, Asset Type, Tracking Category, Folder

(*) required field

Configuration tables for each Entity:

This unified Method is used to Update Records in a specific Entity.

Configuration Table:

Input Options:

  • Input: Allows dynamic inputs, e.g., from a Trigger or from Step responses. Input tab>uncheck “Show recommended” to see all fields).
  • Default Value: You can specify a fixed attribute.
Name*Update Record
Connection*Select your connection or create one.
Entity*
(Set of data that contain records)
Select the available Entities to create records:

Invoice, Contact, Item, Purchase Order, Contact Groups, Employee, Asset, Asset Type, Tracking Category, Folder.

(*) required field

Configuration tables for each Entity:

This unified Method is used to Upsert Records.
 
⚠️ Reminder: The Method employs matching criteria to search for existing records. If a match is found, the record is updated; otherwise, a new record is created using the supplied information.

Configuration Table:

Input Options:

  • Input: Allows dynamic inputs, e.g., from a Trigger or from Step responses. Input tab>uncheck “Show recommended” to see all fields).
  • Default Value: You can specify a fixed attribute.
Name*Upsert Record
Connection*Select your connection or create one.
Entity*
(Set of data that contain records)
Select the available Entities to create records:

Invoice, Contact, Item, Purchase Order, Contact Groups, Tracking Category.

(*) required field

Configuration tables for each Entity:

HISTORY NOTE:

Notes are the only type of Change that can be manually created. All other types of Change are created automatically when certain actions occur (e.g. an invoice is paid).
 
The note will be displayed in history & notes showing the date of creation and “System Generated” as the user that created it.

⚠️ It’s not possible to update history and notes.

ATTACHMENT:

CONTACT GROUP:

INVOICE:

PAYMENT:



After setting up your Flow, you can choose to:

  • Run once”, your Flow will run only a single time. You can use this function to test your Flow. Refer to how to set up an HTTP Trigger, in the “Create a Flow” step.
  • Run Scheduler” will automate your Flows with the recurrence rule you previously defined.


For more details, refer to How to run a Flow tutorial in our Help Center.
 
If you are using a Webhook Trigger, the Flow will initiate automatically when a webhook is received from your connected apps. This means that the Flow is automated without a scheduler and will run until you deactivate the Flow manually. Refer to Webhook documentation in our Help Center.


Check related app documentations, such as: Nham24GrabFoodYoudingQuickbooks, Foodpanda.

If you need an integration that you cannot find in Wiresk, you can make a request to our team, and we will try our best to satisfy your needs.