Skip to main content Home Creators clawlink-hq clawlink xero-accounting
xero-accounting Manage invoices, contacts, bills, payments, and accounting records in Xero via the Xero API. Use this skill when users want to create invoices, manage contacts, track payments, or automate Xero accounting workflows.
Jump to install Skills Marketplace Discover and explore AI skills built by the community.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Copy promptShow prompt details A direct command skips the review prompt. Inspect the source before running it.
npx skills add https://github.com/ClawLink-HQ/clawlink --skill xero-accountingThe command stays on one line. Scroll horizontally to inspect it before copying.
Prefer a local copy? Download the files currently available to SkillsMP.
Download Zip Downloading... More from this repository Safely change a generated <agent>/<app> matrix page: which source file owns which section, the per-page override keys, how to regenerate without dragging 2,188 unrelated pages into the diff, and how to verify the render and schema. Use whenever editing integration page copy, FAQs, troubleshooting, prompts, or adding a new page section.
Connect 1,000+ apps (Gmail, Slack, GitHub, Calendar, Notion, and more) to OpenClaw via ClawLink. One skill, 39,000+ tools, managed OAuth. Use when the user asks to send emails, create issues, post messages, manage calendars, search documents, and more.
Connect Gmail, Notion, Slack, GitHub, Google Workspace (Drive, Docs, Sheets, Calendar), HubSpot, Shopify, LinkedIn, and 90+ other apps to your agent through ClawLink's hosted OAuth gateway — one MCP server, managed authentication, no per-provider API keys. Use this skill when the user wants to read or send email, manage docs and spreadsheets, post to Slack, work with CRM or commerce data, or connect any third-party app from chat instead of saying you cannot access it.
Related occupations SOC
Based on SOC occupation classification
name xero-accounting description Manage invoices, contacts, bills, payments, and accounting records in Xero via the Xero API. Use this skill when users want to create invoices, manage contacts, track payments, or automate Xero accounting workflows.
Xero
Manage Xero invoices, contacts, bills, payments, and accounting records from chat via the Xero API.
This skill uses ClawLink for hosted connection flows and credentials so you do not need to configure Xero API access yourself.
Setup in 3 Steps
Step 1: Install Step 2: Pair Account Step 3: Connect Xero App-specific connection GIF coming soon Run the install command in OpenClaw Sign in and approve the device Open the dashboard and connect Xero
How It Works
┌─────────────────┐ ┌──────────────┐ ┌──────────────────┐
│ OpenClaw │────▶│ ClawLink │────▶│ Xero API │
│ (User Chat) │ │ (OAuth) │ │ │
└─────────────────┘ └──────────────┘ └──────────────────┘
│ │ │
│ 1. Install Plugin │ │
│ 2. Pair Device │ │
│ 3. Connect Xero │ │
│ │ 4. Secure Token │
│ │ 5. Proxy Requests │
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ SKILL │ │ Dashboard│ │ Xero │
│ File │ │ Auth │ │ Tenant │
└──────────┘ └──────────┘ └──────────┘
Install Install the verified ClawLink plugin from ClawHub. After the user confirms, complete the full setup so ClawLink tools are visible in the next OpenClaw chat.
openclaw plugins install clawhub:clawlink-plugin
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart
Then tell the user: "OpenClaw has been restarted. Send /new as a standalone message to start a fresh chat, then ask for Xero again."
Quick Start
clawlink_call_tool --tool "xero_list_invoices" --params '{"status": "DRAFT"}'
clawlink_call_tool --tool "xero_get_invoice" --params '{"invoice_id": "INVOICE_ID"}'
clawlink_call_tool --tool "xero_list_contacts" --params '{}'
Authentication All Xero tool calls are authenticated automatically by ClawLink using the user's connected Xero account OAuth token.
No API credentials are required in chat. ClawLink stores the OAuth token securely and injects it into every Xero API request on the user's behalf.
Getting Connected
Install the ClawLink plugin (see Install above).
Pair the plugin with clawlink_begin_pairing if it is not configured yet.
Open https://claw-link.dev/dashboard?add=xero and connect Xero.
Call clawlink_list_integrations to verify the connection is active.
Connection Management
List Connections clawlink_list_integrations
Response: Returns all connected integrations. Look for xero in the list.
Verify Connection clawlink_list_tools --integration xero
Response: Returns the live tool catalog for Xero.
Reconnect If Xero tools are missing or the connection shows an error:
Security & Permissions
Access is scoped to the Xero organization connected during OAuth setup.
All write operations (create invoice, approve, delete, payment) require explicit user confirmation.
Financial transactions (invoices, bills, payments) affect accounting records — always confirm details.
Confirm before voiding or deleting invoices, as these actions affect financial reporting.
Tax and currency amounts should always be verified against the Xero dashboard.
Tool Reference
Invoices Tool Description Mode xero_list_invoicesList all invoices with status filters Read xero_get_invoiceGet invoice details including line items Read xero_create_invoiceCreate a new invoice Write xero_update_invoiceUpdate an existing invoice's details Write xero_void_invoiceVoid an invoice (marks as void, keeps record) Write xero_delete_invoiceDelete a draft invoice Write xero_email_invoiceSend an invoice to the contact via email Write xero_get_invoice_as_pdfDownload an invoice as PDF Read
Bills (Purchase Invoices) Tool Description Mode xero_list_billsList all bills (purchase invoices) Read xero_get_billGet bill details Read xero_create_billCreate a new bill Write xero_update_billUpdate an existing bill Write xero_delete_billDelete a draft bill Write xero_approve_billApprove a bill for payment Write
Contacts Tool Description Mode xero_list_contactsList all contacts (customers and suppliers) Read xero_get_contactGet contact details including addresses and contacts Read xero_create_contactCreate a new contact Write xero_update_contactUpdate contact information Write xero_delete_contactDelete a contact Write xero_search_contactsSearch contacts by name, email, or account number Read
Payments Tool Description Mode xero_list_paymentsList all payments on invoices and bills Read xero_create_paymentRecord a payment against an invoice or bill Write xero_delete_paymentDelete/void a payment Write xero_get_paymentGet details of a specific payment Read
Items Tool Description Mode xero_list_itemsList all items/products Read xero_get_itemGet item details Read xero_create_itemCreate a new item Write xero_update_itemUpdate an existing item Write xero_delete_itemDelete an item Write
Accounts Tool Description Mode xero_list_accountsList all chart of accounts Read xero_get_accountGet account details Read xero_create_accountCreate a new account Write xero_update_accountUpdate an account Write
Bank Transactions Tool Description Mode xero_list_bank_transactionsList bank transactions (deposits, withdrawals, transfers) Read xero_get_bank_transactionGet bank transaction details Read xero_create_bank_transactionCreate a bank transaction Write xero_delete_bank_transactionDelete a draft bank transaction Write
Bank Feeds Tool Description Mode xero_list_bank_transfersList bank transfers Read xero_create_bank_transferCreate a transfer between bank accounts Write
Manual Journals Tool Description Mode xero_list_journalsList journal entries Read xero_get_journalGet a specific journal entry Read xero_create_journalCreate a manual journal entry Write
Organisation Tool Description Mode xero_get_organisationGet organisation/company details Read xero_list_currenciesList currencies configured in the organisation Read
Tracking Categories Tool Description Mode xero_list_tracking_categoriesList tracking categories (regions, departments) Read xero_create_tracking_categoryCreate a tracking category Write xero_update_tracking_categoryUpdate a tracking category Write
Code Examples
List all draft invoices clawlink_call_tool --tool "xero_list_invoices" \
--params '{
"status": "DRAFT",
"page": 1
}'
Get invoice details clawlink_call_tool --tool "xero_get_invoice" \
--params '{
"invoice_id": "INVOICE_ID"
}'
Create an invoice clawlink_call_tool --tool "xero_create_invoice" \
--params '{
"contact_id": "CONTACT_ID",
"type": "ACCREC",
"status": "DRAFT",
"line_items": [
{
"description": "Web development services - Phase 1",
"quantity": 1,
"unit_amount": 2500,
"account_code": "200"
}
]
}'
Record a payment clawlink_call_tool --tool "xero_create_payment" \
--params '{
"invoice_id": "INVOICE_ID",
"amount": 2500,
"payment_date": "2025-06-07",
"reference": "Payment via bank transfer"
}'
Create a contact clawlink_call_tool --tool "xero_create_contact" \
--params '{
"name": "Acme Corporation",
"email_address": "billing@acme.com",
"account_number": "ACM-001"
}'
Get organisation details clawlink_call_tool --tool "xero_get_organisation" \
--params '{}'
Discovery Workflow
Call clawlink_list_integrations to confirm Xero is connected.
Call clawlink_list_tools --integration xero to see the live catalog.
Treat the returned list as the source of truth. Do not guess or assume what tools exist.
If the user describes a capability but the exact tool is unclear, call clawlink_search_tools with a short query and integration xero.
If no Xero tools appear, direct the user to https://claw-link.dev/dashboard?add=xero .
Execution Workflow ┌─────────────────────────────────────────────────────────────┐
│ READ OPERATIONS (Safe) │
│ list → get → search → describe │
│ │
│ Example: List invoices → Get invoice → Show line items │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ WRITE OPERATIONS (Require Confirmation) │
│ describe → preview → confirm → call │
│ │
│ Example: Preview invoice creation → User approves → Create│
└─────────────────────────────────────────────────────────────┘
For unfamiliar tools, ambiguous requests, or any write action, call clawlink_describe_tool first.
Use the returned guidance, schema, whenToUse, askBefore, safeDefaults, examples, and followups to shape the call.
Prefer read, list, get, and search operations before writes when that reduces ambiguity.
For writes or anything marked as requiring confirmation, call clawlink_preview_tool first.
Execute with clawlink_call_tool. Pass confirmation only after the preview matches the user's intent.
If the tool call fails, report the real error. Do not invent results or restate the failure as a missing capability unless the live catalog supports that conclusion.
Notes
Xero uses ACCREC (accounts receivable) for sales invoices and ACCPAY (accounts payable) for bills.
Invoice and bill IDs are unique within an organisation — use them directly for payments.
Voiding an invoice keeps it in the system as a voided record for audit purposes.
Currency amounts should match the organisation's configured currencies.
Tracking categories (regions, departments) can be assigned to line items for reporting.
Draft invoices must be approved or sent before they appear in financial reports.
Contact IDs are required for creating invoices and bills — resolve from xero_list_contacts first.
Error Handling Status / Error Meaning Tool not found The tool name does not exist in the current catalog. Verify with clawlink_list_tools --integration xero. Missing connection Xero is not connected. Direct the user to https://claw-link.dev/dashboard?add=xero . Invoice not foundThe invoice ID does not exist or belongs to a different organisation. Contact not foundThe contact ID does not exist. Account not foundThe account code does not exist in the chart of accounts. Invalid status transitionThe invoice cannot be updated in its current status (e.g., voiding an already-paid invoice). Validation errorA required field is missing or has an invalid value. Duplicate invoiceAn invoice with the same number already exists. Write rejected User did not confirm a write action. Always confirm before executing writes.
Troubleshooting: Tools Not Visible
Check that the ClawLink plugin is installed:
openclaw plugins list
If the plugin is installed but tools are missing, tell the user to send /new as a standalone message to reload the catalog.
If a fresh chat does not help, run:
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart
After restart, tell the user to send /new again and retry.
Troubleshooting: Invoice Creation Fails
Verify the contact ID exists — use xero_list_contacts or xero_search_contacts.
Check that account codes are valid for line items.
Confirm the invoice type (ACCREC or ACCPAY) matches the intended purpose.
Ensure date formats are correct (ISO 8601 format recommended).
Resources
Powered by ClawLink — an integration hub for OpenClaw