Xero Automation
Helps your agent manage invoices, contacts, and payments in Xero. Useful for keeping your business finances organized.
What it does
This tool helps manage your finances in Xero, like invoices, contacts, and payments. It automates bookkeeping tasks for small businesses.
When to use it
- ✓When you need to see all paid invoices.
- ✓When you want to record a new bill payment.
- ✓When you need to find a specific contact.
Example of what to ask your AI
“List all authorized and paid invoices, ordered by the most recent date.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The tool connects to your Xero account to access and modify your financial information. It uses specific commands to search, create, or update data like invoices and contacts.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add ComposioHQ/awesome-claude-skills --skill Xero AutomationOr download just the file:
curl -L https://raw.githubusercontent.com/ComposioHQ/awesome-claude-skills/master/composio-skills/xero-automation/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Xero Automation
Automate Xero accounting operations including managing invoices, contacts, payments, bank transactions, and chart of accounts for small business bookkeeping.
Toolkit docs: composio.dev/toolkits/xero
Setup
This skill requires the Rube MCP server connected at https://rube.app/mcp.
Before executing any tools, ensure an active connection exists for the xero toolkit. If no connection is active, initiate one via RUBE_MANAGE_CONNECTIONS.
Multi-tenant: If you manage multiple Xero organizations, first call XERO_GET_CONNECTIONS to list active tenants and obtain the correct tenant_id for subsequent calls.
Core Workflows
1. List and Filter Invoices
Retrieve invoices with filtering by status, contact, date range, and pagination.
Tool: XERO_LIST_INVOICES
Key Parameters:
Statuses-- Comma-separated status filter:"DRAFT","SUBMITTED","AUTHORISED","PAID"ContactIDs-- Comma-separated Contact IDs to filter byInvoiceIDs-- Comma-separated Invoice IDs to filter bywhere-- OData-style filter, e.g.,"Status==\"AUTHORISED\" AND Total>100"order-- Sort expression, e.g.,"Date DESC","InvoiceNumber ASC"page-- Page number for paginationIf-Modified-Since-- UTC timestamp; returns only invoices modified since this datetenant_id-- Xero organization ID (uses first tenant if omitted)
Example:
Tool: XERO_LIST_INVOICES
Arguments:
Statuses: "AUTHORISED,PAID"
order: "Date DESC"
page: 1
2. Manage Contacts
Retrieve and search contacts for use in invoices and transactions.
Tool: XERO_GET_CONTACTS
Key Parameters:
searchTerm-- Case-insensitive search across Name, FirstName, LastName, Email, ContactNumberContactID-- Fetch a single contact by IDwhere-- OData filter, e.g.,"ContactStatus==\"ACTIVE\""page,pageSize-- Pagination controlsorder-- Sort, e.g.,"UpdatedDateUTC DESC"includeArchived-- Include archived contacts whentruesummaryOnly-- Lightweight response whentrue
Example:
Tool: XERO_GET_CONTACTS
Arguments:
searchTerm: "acme"
page: 1
pageSize: 25
Note: On high-volume accounts, some
wherefilters (e.g.,IsCustomer,IsSupplier) may be rejected by Xero. Fall back tosearchTermor pagination.
3. Create Payments
Link an invoice to a bank account by creating a payment record.
Tool: XERO_CREATE_PAYMENT
Key Parameters:
InvoiceID(required) -- Xero Invoice ID the payment applies toAccountID(required) -- Bank account ID for the paymentAmount(required) -- Payment amount (number)Date-- Payment date inYYYY-MM-DDformatReference-- Payment reference or descriptionCurrencyRate-- Exchange rate for foreign currency payments
Example:
Tool: XERO_CREATE_PAYMENT
Arguments:
InvoiceID: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
AccountID: "b2c3d4e5-f6a7-8901-bcde-f12345678901"
Amount: 1500.00
Date: "2026-02-11"
Reference: "Payment for INV-0042"
4. Create Bank Transactions
Record spend (payments out) or receive (money in) bank transactions.
Tool: XERO_CREATE_BANK_TRANSACTION
Key Parameters:
Type(required) --"SPEND"(payment out) or"RECEIVE"(money in)ContactID(required) -- Xero Contact IDBankAccountCode(required) -- Bank account code from chart of accountsLineItems(required) -- Array of line items, each with:Description(required) -- Line item descriptionUnitAmount(required) -- Unit priceAccountCode(required) -- Account code for categorizationQuantity-- Quantity (default 1)TaxType-- Tax type:"OUTPUT","INPUT","NONE"
Date-- Transaction date inYYYY-MM-DDformatReference-- Transaction referenceStatus--"AUTHORISED"or"DELETED"CurrencyCode-- e.g.,"USD","EUR"
Example:
Tool: XERO_CREATE_BANK_TRANSACTION
Arguments:
Type: "SPEND"
ContactID: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
BankAccountCode: "090"
LineItems: [
{
"Description": "Office supplies",
"UnitAmount": 75.00,
"AccountCode": "429",
"Quantity": 1,
"TaxType": "INPUT"
}
]
Date: "2026-02-11"
Reference: "Feb office supplies"
5. List Payments and Bank Transactions
Review existing payments and bank transaction history.
Tools:
…
FAQ
What is a 'tenant_id'?
It's a unique identifier for each Xero organization you connect. It's important to use it correctly if you manage multiple companies in Xero.
How do I record an expense?
Use the command to create bank transactions of type 'SPEND', providing the contact, bank account, and item details.
What happens if I don't specify a 'tenant_id'?
The tool will use the first connected Xero account. If you have multiple, it's best to verify and specify the correct 'tenant_id' to avoid errors.
Details
Original description by the author
Xero Automation: manage invoices, contacts, payments, bank transactions, and accounts in Xero for cloud-based bookkeeping
Popularity
- GitHub stars
- 77k
- Ranking position
- #1661
- License
- —
- Updated
- 9/18/2026
Comments
- …
More skills from this repository
artifacts-builder
Helps your agent build complex user interfaces. It uses modern technologies to create rich, interactive web pages.
ComposioHQ/awesome-claude-skills
brand-guidelines
Helps your agent apply official brand colors and fonts to materials. It's useful for maintaining visual identity in any piece that needs to look like the company's.
ComposioHQ/awesome-claude-skills
canvas-design
Lets your agent create original visual art in .png and .pdf. Use it when the user asks to create a poster, art, or other static design.
ComposioHQ/awesome-claude-skills
changelog-generator
Helps your agent create user-facing release notes from code commits. It transforms technical information into easy-to-understand text.
ComposioHQ/awesome-claude-skills
Similar skills
benchmark
Helps your agent measure code speed and performance. It's useful for ensuring things are fast and finding slowness issues.
affaan-m/ECC
content-hash-cache-pattern
Lets your agent use content hashes to cache file processing results. This avoids repeated processing and auto-invalidates the cache when content changes. Useful for speeding up slow tasks.
affaan-m/ECC
parallel-execution-optimizer
Makes your agent speed up complex tasks by breaking them into smaller parts and running them in parallel. It ensures everything is verified at the end.
affaan-m/ECC