Skip to content
MoveWorkflows

Pipedream Xero steps in n8n

Updated 2026-10-21 · 3 min read · n8n: Xero (Native n8n node)

Xero workflows on Pipedream turn sales into accounting entries: a Stripe or Shopify payment becomes a sales invoice, a new customer becomes a contact, a paid invoice notifies the team. n8n has a native Xero node for contacts and invoices; the rest is HTTP Request with the same credential.

The n8n side

Xero node (n8n-nodes-base.xero):

Resource Operations
Contact Create, Get, Get Many, Update
Invoice Create, Get, Get Many, Update

Invoice → Create takes type (sales invoice or bill), contact, line items (description, quantity, unit amount, account code, tax type) and options like reference, due date and status. You choose the Xero organization (tenant) in the node.

There is no Xero trigger node.

What maps where

Pipedream (app xero_accounting_api) In n8n Status
Create Sales Invoice Invoice → Create (type sales invoice) manual
Create Bill Invoice → Create (type bill) manual
Get Invoice, List Invoices Invoice → Get / Get Many manual
Create or Update Contact, Find or Create Contact Contact → Get Many (filter) + Create / Update manual
Create Payment HTTP Request → PUT /api.xro/2.0/Payments manual
Email an Invoice HTTP Request → POST /Invoices/{id}/Email manual
New or updated invoice, New or Updated Contact (polling) Schedule Trigger + Get Many with a Where filter on UpdatedDateUTC manual
New or Updated Quote (polling) Schedule Trigger + HTTP Request → Quotes manual
Webhook Event Received (Instant) Xero webhook → n8n Webhook node manual

Xero is not in the converter's mapped list. Each step arrives as a placeholder with its props in a comment, and the report lists the Xero OAuth2 credential.

Xero credentials in n8n

Xero OAuth2 only:

  1. developer.xero.com → My Apps → New app, integration type Web app.
  2. Name it without "n8n" (Xero rejects it).
  3. Redirect URI: n8n's OAuth callback URL.
  4. Scopes are set by the n8n credential itself (invoices, payments, bank transactions, contacts, settings and others, plus offline access); the n8n docs still mention accounting.transactions, but the credential uses Xero's newer granular scopes.

Typical migration: Stripe payment to Xero invoice

Pipedream: Stripe New Payment → Xero Find or Create Contact → Create Sales Invoice (status AUTHORISED) → Create Payment. n8n: Stripe Trigger → Xero → Contact → Get Many (filter by email) → If empty → Contact → Create → Xero → Invoice → Create → HTTP Request (Payments, account code of your Stripe clearing account).

Xero migration pitfalls

  • Tenant ID. Each Xero organization is a tenant; HTTP Request calls need the xero-tenant-id header.
  • Rate limits. Xero limits calls per minute and per day per tenant and returns 429 with Retry-After; check the current numbers in Xero's docs before bulk syncs.
  • Account and tax codes are organization-specific; copy them from the Pipedream props.
  • Token expiry. Xero refresh tokens expire if unused for a long period; an idle workflow may need reconnecting.

How to move your Xero workflows

  1. Export from Pipedream.
  2. Upload on /convert; the free report lists every Xero step and its props.
  3. Get the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.

See the Pipedream to n8n guide. Related: QuickBooks, Stripe, HubSpot.

FAQ

What does the n8n Xero node cover?
Contact and Invoice, each with Create, Get, Get Many and Update. Payments, bills, quotes and emailing invoices go through HTTP Request with the Xero credential.
Why does Xero reject my app name?
Xero does not allow app names that contain n8n. Name the OAuth2 app after your company instead.
Is there a Xero trigger in n8n?
No. Pipedream's New or updated invoice and New or Updated Contact poll; use a Schedule Trigger with Invoice → Get Many and a Where filter such as UpdatedDateUTC>=DateTime(2026,10,01). Xero webhooks are an option for contacts and invoices.
Do Xero steps convert automatically?
No. They arrive as placeholders with their props (contact, line items, account codes), and the report lists the Xero OAuth2 credential to create.

Related

Sources