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:
- developer.xero.com → My Apps → New app, integration type Web app.
- Name it without "n8n" (Xero rejects it).
- Redirect URI: n8n's OAuth callback URL.
- 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-idheader. - Rate limits. Xero limits calls per minute and per day per tenant and returns
429withRetry-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
- Export from Pipedream.
- Upload on /convert; the free report lists every Xero step and its props.
- 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.