π Quickstart
Connect to Xero with Nango and see data flow in 2 minutes.1
Create the integration
In Nango (free signup), go to Integrations -> Configure New Integration -> Xero.
2
Authorize Xero
Go to Connections -> Add Test Connection -> Authorize, then log in to Xero. Later, youβll let your users do the same directly from your app.
3
Call the Xero API
Letβs make your first request to the Xero API. Replace the placeholders below with your secret key, integration ID, and connection ID:Or fetch credentials with the Node SDK or API.β
Youβre connected! Check the Logs tab in Nango to inspect requests.
- cURL
- Node
4
Implement Nango in your app
Follow our quickstart to integrate Nango in your app.To obtain your own production credentials, follow the setup guide linked below.
π Xero Integration Guides
Nango maintained guides for common use cases.- How to register your own Xero OAuth app Register an OAuth app with Xero and obtain credentials to connect it to Nango
- How to configure Xero webhooks with Nango Learn how to set up webhook notifications from Xero to Nango
π§© Pre-built syncs & actions for Xero
Enable them in your dashboard. Extend and customize to fit your needs.Accounts
| Function name | Description | Type | Source code |
|---|---|---|---|
accounts | Fetches all accounts in Xero (chart of accounts). Incremental sync, detects deletes, metadata is not required. | Sync | π Github |
Bank Transactions
| Function name | Description | Type | Source code |
|---|---|---|---|
bank-transactions | Fetches all bank transactions in Xero. Incremental sync, detects deletes, metadata is not required. | Sync | π Github |
Contacts
| Function name | Description | Type | Source code |
|---|---|---|---|
create-contact | Creates one or multiple contacts in Xero. Note: Does NOT check if these contacts already exist. | Action | π Github |
update-contact | Updates one or multiple contacts in Xero. Only fields that are passed in are modified. If a field should not be changed, omit it in the input. The id field is mandatory. | Action | π Github |
contacts | Fetches all Xero contacts. Details: incremental sync, detects deletes, metadata is not required. | Sync | π Github |
Credit Notes
| Function name | Description | Type | Source code |
|---|---|---|---|
create-credit-note | Creates one or more credit notes in Xero. Note: Does NOT check if the credit note already exists. | Action | π Github |
update-credit-note | Updates one or more credit notes in Xero. | Action | π Github |
credit-notes | Fetches all credit notes in Xero. Incremental sync. | Sync | π Github |
General Ledger
| Function name | Description | Type | Source code |
|---|---|---|---|
general-ledger | Fetch all general ledger entries in Xero | Sync | π Github |
Invoices
| Function name | Description | Type | Source code |
|---|---|---|---|
create-invoice | Creates one or more invoices in Xero. Note: Does NOT check if the invoice already exists. | Action | π Github |
update-invoice | Updates one or more invoices in Xero. To delete an invoice that is in DRAFT or SUBMITTED set the status to DELETED. If an invoice has been AUTHORISED it canβt be deleted but you can set the status to VOIDED. | Action | π Github |
invoices | Fetches all invoices in Xero. Incremental sync. | Sync | π Github |
Items
| Function name | Description | Type | Source code |
|---|---|---|---|
create-item | Creates one or more items in Xero. Note: Does NOT check if the item already exists. | Action | π Github |
update-item | Updates one or more items in Xero. | Action | π Github |
items | Fetches all items in Xero. Incremental sync, does not detect deletes, metadata is not required. | Sync | π Github |
Organisations
| Function name | Description | Type | Source code |
|---|---|---|---|
organisations | Fetches organisation details in Xero. | Sync | π Github |
Payments
| Function name | Description | Type | Source code |
|---|---|---|---|
create-payment | Creates one or more payments in Xero. Note: Does NOT check if the payment already exists. | Action | π Github |
payments | Fetches all payments in Xero. Incremental sync. | Sync | π Github |
Tenants
| Function name | Description | Type | Source code |
|---|---|---|---|
get-tenants | Fetches all the tenants the connection has access to. This can be used to set the metadata to the selected tenant. | Action | π Github |