Allocate Overpayment
Allocate part of an existing Xero overpayment to an invoice. The overpayment and invoice must belong to the same contact.
Xero is a cloud-based accounting software for small businesses, providing invoicing, bank reconciliation, bookkeeping, and financial reporting in real time
Allocate part of an existing Xero overpayment to an invoice. The overpayment and invoice must belong to the same contact.
Create multiple Xero bank transactions with item-level validation results.
Create multiple Xero invoices or bills. With summarize_errors false (the default), return each success and validation outcome.
Create a bank transaction in Xero. Use SPEND for payments out or RECEIVE for money received.
Create a new contact in Xero. Contacts can be customers, suppliers, or both.
Create a new credit note in Xero. Credit notes are used to reduce amounts owed by customers (ACCRECCREDIT) or to suppliers (ACCPAYCREDIT).
Associate a Xero file with an accounting object.
Create a new invoice in Xero. Supports both sales invoices (ACCREC) and bills (ACCPAY).
Create an inventory item in Xero. Items can be tracked for sales and/or purchases.
Create a manual journal in Xero with journal lines. Manual journals must balance (debits equal credits).
Create a Xero chart-of-account record, or update one by account ID.
Create a payment in Xero to link an invoice with a bank account transaction.
Create a purchase order in Xero to order goods/services from suppliers.
Create a new sales quote in Xero for a customer or prospect. Quotes can be sent to contacts for approval and later converted to invoices. Use this action when you need to create a formal price proposal or quotation for goods or services before issuing an invoice.
Add an option to an existing Xero tracking category.
Permanently delete a Xero inventory item by its internal UUID.
Download an attachment from a supported Xero accounting entity.
Retrieve a specific account from Xero's chart of accounts by its unique ID. Returns detailed account information including code, name, type (BANK, REVENUE, EXPENSE, etc.), status (ACTIVE/ARCHIVED), tax settings, bank details (for BANK accounts), and classification. Use XERO_LIST_ACCOUNTS to get account IDs if you don't already have one.
Retrieve a specific asset by ID from Xero. Returns depreciation details and book value.
Retrieve Balance Sheet report from Xero. Shows assets, liabilities, and equity at a specific date. Liability and credit balances appear as negative numbers in the response. Response structure is Reports → Rows → Sections; account lines are nested inside group sections and summary totals (e.g., 'Total Current Assets') appear in SummaryRows.
Retrieve Xero's account-level Bank Summary for an optional date range.
Retrieve a specific spent or received money transaction from Xero by its unique bank transaction ID. Returns full transaction details including line items, contact, bank account, amounts, and reconciliation status. Use this action when you need to fetch the details of a specific bank transaction that was previously created.
Retrieve a budget from Xero. Budgets track planned vs actual spending by account.
Tool to list active Xero connections. Use to retrieve all current tenant connections for the authenticated user and resolve the correct tenant_id before making data requests. When multiple tenants are returned, never assume the first connection is correct — always explicitly pass the intended tenant_id to every subsequent call. Using a wrong or stale tenant_id can silently return or modify data for a different organisation.
Retrieve aged payables or receivables rows for one Xero contact.
Retrieve activity history records for a Xero contact.
Tool to retrieve a list of contacts. Use when you need up-to-date contact information with filtering, paging, or incremental updates.
Retrieve a specific credit note by ID from Xero. Returns full credit note details including line items, allocations, and status. Use this action when you need to fetch detailed information about a single credit note by its UUID identifier.
Retrieve a specific invoice by ID from Xero. Returns full invoice details including line items and status.
Retrieve a specific item by ID from Xero. Returns item code, name, pricing, and tax details.
Retrieve a specific manual journal by ID from Xero. Returns full details including journal lines.
Retrieve the hosted online-invoice URL for an authorised Xero invoice.
Retrieve organisation details from Xero. Returns company info, base currency, timezone, financial year settings, SalesTaxBasis, SalesTaxPeriod, etc. Response fields are nested under data.data.Organisations[0]. Use Timezone when computing date ranges to avoid boundary errors.
Retrieve a specific payment by ID from Xero. Returns full payment details including associated invoice, account, and reconciliation status. Use this action when you need to inspect a particular payment record to verify its status, amount, or linked transactions.
Retrieve a Xero Profit & Loss report showing income, expenses, and net profit; when both dates are supplied, their range cannot exceed 365 days. Parse labeled report rows by label rather than index; the report aggregates tax codes and is not suitable for tax compliance reporting.
Retrieve a specific project by ID from Xero. Returns project details, deadlines, and status.
Retrieve a specific purchase order by ID from Xero. Returns full details including line items and status.
Tool to retrieve a list of quotes. Use when you need to list, filter, or page through sales quotes. Use after obtaining the tenant ID via connections.
Retrieve history for a Xero bank transaction, invoice, manual journal, or payment.
Retrieve a Xero repeating invoice template by its unique ID.
Retrieve Trial Balance report from Xero. Shows all account balances (debits and credits) at a specific date. Use to verify that total debits equal total credits and to prepare financial statements. Credit balances appear as negative numbers in the response.
Retrieve Xero's chart of accounts, with optional filtering and ordering. AccountID uniquely identifies an account.
List filtered Xero overpayments or prepayments.
Retrieve fixed assets from Xero by status, defaulting to DRAFT. Assets track depreciation and book value of capital equipment.
List all attachments for a specific entity in Xero (invoice, contact, etc.).
Retrieve bank transactions from Xero. Includes SPEND, RECEIVE, and transfer types; unfiltered results include DELETED transactions that skew totals. Dates returned in /Date(milliseconds_since_epoch)/ format. Rate limit: ~60 requests/minute per org; heavy pagination may trigger 429 errors.
List Xero batch payments with documented filtering and ordering controls.
Retrieve list of credit notes from Xero. Credit notes are issued to reduce amounts owed by customers.
List Xero business objects associated with a specific file.
Retrieve files from Xero Files. Lists documents stored in Xero's file management system.
Retrieve folders from Xero Files. Lists document folders in Xero's file management system.
Retrieve a list of invoices from Xero. Results include both sales invoices (Type=ACCREC) and bills (Type=ACCPAY) by default; filter by Type in the `where` clause when only one is needed. Supports filtering by status, contact, date range, and pagination.
Retrieve items (inventory/products) from Xero. Items can be tracked for sales and/or purchases.
Retrieve journals from Xero, with optional modified-since and payment-only filters and offset pagination. Journals show accounting entries for transactions and are returned in a Journals array.
Retrieve manual journals from Xero. Manual journals are used for period-end adjustments and corrections.
List currencies enabled for the connected Xero organisation.
List users of the connected Xero organisation.
Retrieve list of payments from Xero. Payments link invoices to bank transactions; invoices may have multiple partial/split payment records. Response Date fields use Xero's /Date(milliseconds)/ format requiring custom parsing.
List and filter time entries logged against a specific Xero project.
Retrieve projects from Xero. Projects track time and costs for client work.
Retrieve list of purchase orders from Xero. Purchase orders track goods/services ordered from suppliers.
Retrieve a list of sales quotes from Xero with optional filtering and pagination. Supports filtering by date ranges, contact, status, and quote number. Returns up to 100 quotes per page with full line item details. Use this action when you need to query, list, or search for quotes in a Xero organization.
Retrieve tax rates from Xero. Shows available tax codes and rates for the organization. Use returned tax codes as valid `TaxType` values in other tools — invalid values cause ValidationException errors.
Retrieve tracking categories from Xero. Tracking categories are used to segment data for reporting (e.g., departments, regions).
Update an existing bank transaction in Xero. Use this action when you need to modify details of a previously created bank transaction such as line items, reference, date, or status. Note: Reconciled transactions cannot be updated and will return a validation error.
Update an existing contact in Xero. Only provided fields will be updated.
Updates a specific credit note in Xero by its unique identifier. This action allows you to modify credit note details such as status, line items, reference numbers, and other fields after the credit note has been created. Use this action when you need to change the status of a credit note (e.g., from DRAFT to AUTHORISED), update line items, modify reference information, or make other changes to an existing credit note. The credit note must already exist in Xero - use the credit_note_id to specify which credit note to update. Not all fields can be updated depending on the current status of the credit note.
Tool to update an existing invoice. Use when you need to modify the details of an invoice after it's been created.
Update an existing Xero inventory item by its ItemID.
Update an existing manual journal (journal entry) in Xero by its ID. Use this action when you need to modify the narration, date, journal lines, status, or other properties of an existing manual journal. Manual journals must balance (debits equal credits) or the update will fail. Only DRAFT manual journals can have their journal lines updated; POSTED journals can have limited fields updated.
Updates a specific purchase order in Xero by its unique identifier. Use this action when you need to modify an existing purchase order's details such as line items, delivery information, status, or other fields. Only the fields provided in the request will be updated; fields not included will remain unchanged.
Updates a specific quote in Xero by its QuoteID. Use this action when you need to modify an existing sales quote, such as changing its status, updating line items, contact details, dates, or other quote properties. Only the fields provided in the request will be updated - unprovided fields will remain unchanged.
Upload a file attachment to a Xero entity (invoice, contact, etc.). Supports PDF, images, and documents.
Check Xero credentials by querying connected organisations. Returns a success status and message; success requires a nonempty connections list, while an empty list or HTTP error returns failure.
The Xero integration connects your Dench AI CRM directly to Xero, so agents can read and act on your Xero data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.
74 actions are available for agents to invoke on your behalf. Every call runs through Xero's own authorization, scoped to the account you connect.
Sign in to your Dench workspace and open Integrations.
Find Xero and click Connect — you'll authorize access through Xero's own sign-in flow. No API keys or code required.
Ask an agent to use Xero in chat, or call it from an automation.
Manage or disconnect the connection any time from workspace settings.
The Dench Xero integration connects your AI CRM to Xero, so AI agents can work with your Xero data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.
The Xero integration currently exposes 74 actions, including Allocate Overpayment, Bulk Create Bank Transactions, Bulk Create Invoices, Create Bank Transaction, Create Contact, and Create Credit Note. Agents invoke them on your behalf from chat or from automations.
No. You connect Xero from your Dench workspace using Xero's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.
Connections are authorized through Xero's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the Xero connection from your workspace settings at any time.