Xero guide

Software Setup

To acquire your own Xero instance, you must create a Xero account and sign up for a free trial.

To get realistic data, you can use a Xero demo company.

Rutter does not provide a Xero instance.

Developer Acccount Setup

Note: By default, your Xero developer app will have an authentication limit of 25 connections. In order to increase this, you will need to apply to become a Xero app partner. Here is the guide for applying to becoming a Xero app partner.

Create a Xero app

  1. Log in to Xero Developer with your Xero credentials.

  2. Click New App at the top right Xero New App

  3. Fill out the Add a new app popup window.

    • App name: The name for the Xero application. This is shown to users when they authorize your access to their accounting data.
    • Integration type: Select Web App.
    • Company or application URL: Enter the URL to your company’s website.
    • Redirect URI: Enter https://production.rutterapi.com/xero/proxy/redirect-url

    Agree to the terms and conditions and click Create App. Xero Create App

  4. Your app should now be visible on the My Apps page. Xero App

Retrieve your app’s secure keys

  1. Click My Apps in the top navigation bar, then select your application.
  2. Click Configuration in the left pane. Xero Config
  3. Click Generate a secret.
  4. Copy the Client secret and store it in a safe place. If you leave the configuration page, the client secret won’t be visible anymore and you’ll have to generate a new one if you forget it.

Share your Client Id and Client Secret with Rutter

  1. Log in to the Rutter Dashboard.
  2. Navigate to Platforms → Accounting and click on Xero.
  3. Enter your Xero app’s Client ID and Client Secret in the Xero configuration page. Xero Platform Page

Connect to your Xero app

  1. Log in to the Rutter Dashboard.
  2. Navigate to Connections and click on Create New Connection in the top right.
  3. Copy the Shareable Url. Xero URL
  4. This url will open up the auth flow. Xero Auth Flow
  5. Click Continue and select Xero as your platform. Rutter Platform Page
  6. Click Xero and then click _Connect Xero.
  7. You should be redirected to a login page for Xero. Enter your credentials and click Log in.
  8. Click on Allow access. Xero Access
  9. You should be redirected to a page indicating a successful connection. Xero Success



How are Xero contacts classified as Vendors or Customers?

In Xero, contacts only become a customer or a vendor once an AP or AR transaction is applied to them e.g. an invoice or a bill. Up until this point, they remain as just a contact and not a customer or a supplier within Xero. If a contact has no transactions applied ot them, they will appear in the Rutter API as both a vendor and a customer so you can use them with any new transactions you would like to create.

What accounts can be used in transactions with Xero?

Some accounts cannot be used in Xero transactions.

We applied to be a Xero partner so that we can have more than 20 connections but haven’t gotten a response. Do you all know if we’re missing something here? What do you suggest?

We recommend that you continue to pursue the Xero partnership approval, but this can take time. An alternative option is to create a new Xero app in your developer portal and replace the OAuth credentials in the Rutter dashboard with the new ones. The old connections will continue to function, and you will be able to make new connections with the new credentials.

My user has reached the maximum number of uncertified apps they can install, what should we do?

Xero has a rule that users can only install up to 2 uncertified apps. They need to remove an existing one to install your app if it's uncertified. If you go through the Xero certification process successfully, you will not face this problem.

Naming Conventions

Accounting platforms can refer to Rutter objects by different names internally.


Xero refers to both Bills and Invoices as "Invoices".

Vendors & Customers

Xero refers to both Vendors and Customers as "Contacts".


Xero represents Expenses as "Bank Transactions" of type "Spend" (visible through "Bank Transactions", not the "Expenses" product).