Workflows
Blocks
Integrations
Xero

Xero

The Xero block connects your workflows to Xero accounting — create and send invoices, manage contacts, record payments and bills, and pull reports like Profit & Loss, Balance Sheet, and Aged Receivables.

Accounting Automation: Turn workflow events into real Xero records — an invoice for every new order, a contact for every new customer, a report in your inbox every Monday.

Key Features

  • Invoicing: Create, update, send, and void invoices, plus credit notes
  • Contacts: Create and look up contacts by ID
  • Money In & Out: Record payments, bills, bank transactions, and purchase orders
  • Reports: Profit & Loss, Balance Sheet, and Aged Receivables on demand
  • Items & Files: Manage items, read tax rates, and attach files to records
  • Auto Token Refresh: Xero access tokens expire after 30 minutes — Indite refreshes them for you

Operations

Invoices & Credit Notes

OperationDescription
Create InvoiceCreate an invoice for a contact with JSON line items, due date, and status (DRAFT, SUBMITTED, AUTHORISED)
Get Invoice / Get InvoicesFetch one invoice by ID, or list invoices
Update InvoiceChange an existing invoice
Send InvoiceEmail an invoice to the contact
Void InvoiceVoid an invoice
Create Credit NoteIssue a credit note

Contacts

OperationDescription
Create ContactAdd a contact with name and email
Get Contact / Get ContactsFetch one contact, or list contacts

Payments, Bills & Purchases

OperationDescription
Create PaymentRecord a payment against an invoice
Create BillRecord a supplier bill
Create Purchase OrderCreate a purchase order, with an optional delivery date
Get Bank TransactionsList bank transactions

Items, Accounts & Files

OperationDescription
Get AccountsList your chart of accounts
Get Items / Create ItemList items, or create one with code, name, and unit price
Get Tax RatesList tax rates
Attach FileAttach a file (by URL) to Invoices, Contacts, CreditNotes, PurchaseOrders, Receipts, BankTransactions, ManualJournals, or Accounts

Reports

OperationDescription
Get Profit & LossP&L report for a date range
Get Balance SheetBalance sheet for a date range
Get Aged ReceivablesAged receivables for a contact

Configuration

ParameterTypeRequiredDescription
CredentialsSelectYesYour saved Xero connection
ActionSelectYesOne of the 22 operations above
Contact / Invoice IDTextPer operationThe target record's ID
Contact Name & EmailTextFor Create ContactNew contact details
Line ItemsJSONFor invoices, bills, POsThe line items as a JSON array
Amount / Due Date / Reference / Account CodeTextPer operationMoney fields — support {{variables}}
StatusTextFor invoicesDRAFT, SUBMITTED, or AUTHORISED
Start Date / End Date / DateTextFor reports & documentsDates in YYYY-MM-DD
File URL / File Name / Endpoint Type / Entity IDTextFor Attach FileWhat to attach and where

Connecting your Xero account

  1. Create an app at developer.xero.com (opens in a new tab) (App type: Web app).
  2. Copy the app's Client ID and Client Secret.
  3. Complete Xero's OAuth 2.0 flow for your organisation to get an Access Token and Refresh Token (Xero's docs include a step-by-step guide; the offline_access scope is required to receive a refresh token, plus accounting.transactions, accounting.contacts, accounting.reports.read, and accounting.attachments depending on the operations you use).
  4. Find your Tenant ID — it's returned by Xero's connections endpoint after you authorize your organisation.
  5. In Indite, add the Xero block, click Connect new, and fill in: Access Token, Refresh Token, Tenant ID, Client ID, and Client Secret.

Xero access tokens only live for 30 minutes. Indite transparently refreshes the token on expiry and stores the rotated access and refresh tokens, so the connection keeps working without your help.


Output

The block returns the raw Xero API response for the operation — for example the created Invoices object, a Contacts list, or the report rows. Reference fields in later blocks with {{<blockId>.<field>}}.


Example: weekly finance digest

  1. Schedule Trigger — every Monday at 08:00.
  2. Xero → Get Profit & Loss — start date = first of the month, end date = today.
  3. Xero → Get Aged Receivables — see who still owes you money.
  4. Send Email — a summary of both reports to the finance team.
Indite Documentation v1.7.1
PrivacyTermsSupport