name: Xero自动化 description: “Xero自动化:在Xero中管理发票、联系人、付款、银行交易和账户,用于云基础簿记” requires: mcp: [rube]
Xero自动化
自动化Xero会计操作,包括管理发票、联系人、付款、银行交易和账户图表,适合小企业簿记。
工具包文档: composio.dev/toolkits/xero
设置
此技能需要连接到 https://rube.app/mcp 的 Rube MCP 服务器。
在执行任何工具之前,确保 xero 工具包存在活动连接。如果没有活动连接,请通过 RUBE_MANAGE_CONNECTIONS 启动一个。
多租户: 如果您管理多个Xero组织,请先调用 XERO_GET_CONNECTIONS 以列出活动租户,并获取后续调用所需的正确 tenant_id。
核心工作流程
1. 列出和筛选发票
检索发票,支持按状态、联系人、日期范围和分页进行筛选。
工具: XERO_LIST_INVOICES
关键参数:
Statuses– 逗号分隔的状态筛选器:"DRAFT"、"SUBMITTED"、"AUTHORISED"、"PAID"ContactIDs– 逗号分隔的联系人ID以筛选InvoiceIDs– 逗号分隔的发票ID以筛选where– OData风格筛选器,例如"Status==\"AUTHORISED\" AND Total>100"order– 排序表达式,例如"Date DESC"、"InvoiceNumber ASC"page– 分页页码If-Modified-Since– UTC时间戳;仅返回自此日期后修改的发票tenant_id– Xero组织ID(如果省略则使用第一个租户)
示例:
工具:XERO_LIST_INVOICES
参数:
Statuses: "AUTHORISED,PAID"
order: "Date DESC"
page: 1
2. 管理联系人
检索和搜索联系人,用于发票和交易。
工具: XERO_GET_CONTACTS
关键参数:
searchTerm– 不区分大小写的搜索,覆盖姓名、名、姓、电子邮件、联系人编号ContactID– 按ID获取单个联系人where– OData筛选器,例如"ContactStatus==\"ACTIVE\""page、pageSize– 分页控制order– 排序,例如"UpdatedDateUTC DESC"includeArchived– 当true时包含已归档的联系人summaryOnly– 当true时返回轻量级响应
示例:
工具:XERO_GET_CONTACTS
参数:
searchTerm: "acme"
page: 1
pageSize: 25
注意: 在高容量账户上,某些
where筛选器(例如IsCustomer、IsSupplier)可能会被Xero拒绝。请回退到searchTerm或分页。
3. 创建付款
通过创建付款记录,将发票链接到银行账户。
工具: XERO_CREATE_PAYMENT
关键参数:
InvoiceID(必需) – 付款应用的Xero发票IDAccountID(必需) – 付款的银行账户IDAmount(必需) – 付款金额(数字)Date– 付款日期,格式为YYYY-MM-DDReference– 付款参考或描述CurrencyRate– 外汇付款的汇率
示例:
工具:XERO_CREATE_PAYMENT
参数:
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. 创建银行交易
记录支出(付款出)或收入(钱进)银行交易。
工具: XERO_CREATE_BANK_TRANSACTION
关键参数:
Type(必需) –"SPEND"(付款出)或"RECEIVE"(钱进)ContactID(必需) – Xero联系人IDBankAccountCode(必需) – 账户图表中的银行账户代码LineItems(必需) – 行项数组,每个包含:Description(必需) – 行项描述UnitAmount(必需) – 单价AccountCode(必需) – 分类的账户代码Quantity– 数量(默认1)TaxType– 税类型:"OUTPUT"、"INPUT"、"NONE"
Date– 交易日期,格式为YYYY-MM-DDReference– 交易参考Status–"AUTHORISED"或"DELETED"CurrencyCode– 例如"USD"、"EUR"
示例:
工具:XERO_CREATE_BANK_TRANSACTION
参数:
Type: "SPEND"
ContactID: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
BankAccountCode: "090"
LineItems: [
{
"Description": "办公用品",
"UnitAmount": 75.00,
"AccountCode": "429",
"Quantity": 1,
"TaxType": "INPUT"
}
]
Date: "2026-02-11"
Reference: "二月办公用品"
5. 列出付款和银行交易
查看现有付款和银行交易历史。
工具:
XERO_LIST_PAYMENTS– 列出链接发票到银行交易的付款XERO_LIST_BANK_TRANSACTIONS– 列出支出/收入银行交易
通用参数:
where– OData筛选器,例如"Status==\"AUTHORISED\""order– 排序表达式,例如"Date DESC"page– 分页页码If-Modified-Since– 自时间戳以来的增量更新tenant_id– 组织ID
6. 查看账户图表和连接
工具:
XERO_LIST_ACCOUNTS– 检索所有账户代码以分类交易XERO_GET_CONNECTIONS– 列出活动Xero租户连接XERO_LIST_ATTACHMENTS– 列出实体(发票、联系人等)上的附件
已知陷阱
| 陷阱 | 细节 |
|---|---|
| 多租户路由 | 如果省略 tenant_id,则使用第一个连接的租户。在管理多个组织时,请始终用 XERO_GET_CONNECTIONS 验证正确租户。 |
| 高容量筛选拒绝 | 在大型账户上,某些 where 筛选器如 IsCustomer/IsSupplier 可能被拒绝。请回退到 searchTerm 加分页。 |
| OData筛选器语法 | 在OData筛选器中使用双等于号(==),例如 Status==\"AUTHORISED\"。单 = 会导致错误。 |
| 需要分页 | 大多数列表端点分页结果。始终检查附加页并继续获取直到完成。 |
| 日期格式 | 所有日期必须为 YYYY-MM-DD 格式。If-Modified-Since 的时间戳必须为完整ISO 8601 UTC日期时间。 |
| 银行账户代码 | 银行交易中的 BankAccountCode 必须匹配账户图表中的有效代码。使用 XERO_LIST_ACCOUNTS 发现有效代码。 |
快速参考
| 工具标识 | 描述 |
|---|---|
XERO_LIST_INVOICES |
带筛选和分页列出发票 |
XERO_GET_CONTACTS |
检索和搜索联系人 |
XERO_CREATE_PAYMENT |
创建链接发票到银行账户的付款 |
XERO_CREATE_BANK_TRANSACTION |
记录支出或收入银行交易 |
XERO_LIST_PAYMENTS |
列出付款记录 |
XERO_LIST_BANK_TRANSACTIONS |
列出银行交易 |
XERO_LIST_ACCOUNTS |
检索账户图表 |
XERO_GET_CONNECTIONS |
列出活动Xero租户连接 |
XERO_LIST_ATTACHMENTS |
列出实体上的附件 |
由 Composio 提供支持