approve_xero_pending_change
approve_xero_pending_changeApproves a change YOU (or another assistant on this account) have already proposed to Xero - create_xero_invoice, update_xero_invoice, create_xero_contact, update_xero_contact, create_xero_manual_journal or create_xero_credit_note - and immediately executes it. This is the ONE tool in this connector that actually writes to a live Xero ledger; treat it with the same weight as send_invoice or archive_business, not as a formality. Call this ONLY after the person using this account has clearly said, in their own words, to go ahead with THIS specific change - never infer approval from context, never call this speculatively "to see what happens", and never approve a change without first showing them what it actually says (call list_pending_changes if you do not already have its summary in this conversation). If they seem unsure, or ask what a value means, answer the question and wait - hesitation is not consent. Only once they have clearly agreed, call this with confirm: true. Afterwards, relay the real outcome verbatim: whether the write to Xero actually succeeded (and, if so, the id/number Xero assigned), or exactly why it failed if it did not - you cannot retry a failed write yourself, only draft a new change. Approving in Invio's own Settings > MCP > Xero screen remains available at all times and works exactly the same either way.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | Yes | Must be true. Set this ONLY after the person using this account has explicitly said, in their own words, to approve (or reject) this specific change - never infer consent from context, and never pass true speculatively "to see what happens". | |
| pendingChangeId | Yes | The pendingChangeId of the row to act on - from list_pending_changes' own result, or the pendingChangeId a draft-creating tool (create_xero_invoice etc.) just returned. Never invent one. |