Skip to content
Last updated

Xero integration

Xero is a cloud-based accounting platform for small and medium businesses that enables invoicing, expense tracking, payroll, and financial reporting. Integrating Xero with Frontegg allows your application to manage invoices, contacts, accounts, bank transactions, and reports on behalf of your users using OAuth 2.0.


Prerequisites

Connect Xero

Step 1: Open the developer portal

Navigate to developer.xero.com and click Log in. Enter your Xero email address and password, then click Log in.

Xero developer portal login page

Step 2: Open My Apps

After signing in, click My Apps in the top navigation bar. The My Apps page lists all your existing Xero applications.

Click New app to create a new OAuth application.

Xero My Apps page with New app button highlighted

Step 3: Fill in the new app form

In the Add a new Xero app dialog, fill in the following fields:

  • App name — Enter a descriptive name, for example Frontegg Integration.
  • Integration type — Select Web app (standard authorization code flow).
  • Will you use Xero data to train an AI model? — Select No.
  • Do you understand and agree to meet Xero's minimum security requirements? — Select Yes.
  • Company or application URL — Enter your application's website URL.
  • OAuth 2.0 redirect URI — Enter the following URI: https://YOUR_MCP_GATEWAY_URL/integration-callback

Check I have read and agree to the Xero Developer Platform Terms & Conditions, then click Create app.

Xero new app form filled in

Step 4: View the app details page

After clicking Create app, you are taken to the App details page for your new application. This confirms the app was created successfully.

Click Configuration in the left menu to proceed.

Xero app details page after creation

Step 5: Configure redirect URIs and copy your Client ID

On the Configuration page:

  1. In the Redirect URIs section, confirm that the redirect URI you entered in Step 3 is present: https://YOUR_MCP_GATEWAY_URL/integration-callback.

  2. Copy your Client ID — you will need it when configuring the Frontegg portal.

Xero configuration page with redirect URIs and Client ID

Step 6: Generate a Client Secret

Click Generate a secret. Xero generates a Client Secret and displays it once.

Copy your Client Secret now

The Client Secret is shown only once. Copy it immediately and store it in a secure location. If you lose it, you must delete the secret and generate a new one.

Xero Client Secret generated

Step 7: Save the configuration

Click Save at the top of the Configuration page to apply your changes.

Xero configuration saved

Configure the Frontegg portal

Once you have obtained your Client ID and Client Secret from the steps above, enter them in the integration configuration page of the Frontegg portal:

  1. Open the Frontegg portal and navigate to [ENVIRONMENT] → Integrations → Xero.
  2. Enter the Client ID and Client Secret in the corresponding fields.
  3. Select the required scopes:
ScopeDescription
openidRequired for OpenID Connect authentication
profileAccess user profile information
emailAccess user email address
offline_accessObtain refresh tokens for long-lived access
accounting.transactionsRead and write invoices, bank transactions, and payments
accounting.transactions.readRead-only access to invoices, bank transactions, and payments
accounting.contactsRead and write contacts
accounting.contacts.readRead-only access to contacts
accounting.settingsRead and write accounts and inventory items
accounting.settings.readRead-only access to accounts, inventory items, and organisation details
accounting.reports.readRead-only access to financial reports
  1. Click Save.

Keep your credentials secure

Never share or commit your Client Secret to version control.

Additional resources