The workflow

Watch this workflow run through Kroy.

  1. The request.

    “Kroy Artifacts”

  2. Who is asking.

    Kroy identifies the person in tax and Claude acting for them, within the delegation they gave it.

  3. Only what the task needs.

    Kroy retrieves vAT return report for the period (Xero), transactions and tax codes for the period (Xero) and the previous quarter’s return, for comparison (Xero) from Xero.

  4. Excluded by design.

    Payroll data, Clients outside the manager’s portfolio and Xero credentials never reach Claude. That boundary is Kroy’s, not an instruction to the AI.

  5. The proposed action.

    Permitted: read VAT reports (xero.reports.read), read transactions (xero.transactions.read) and create a review note (artifact.create).

  6. What Kroy refuses.

    Refused: change tax codes or transactions (xero.transactions.update), file the VAT return and read another portfolio’s clients.

  7. A person decides.

    The manager decides every correction and files the return in Xero.

  8. State changes. Everything is recorded.

    The work is updated in Kroy, and every request — allowed or refused — is written to the audit trail.

Claude
Tax
Kroy
Xero
Read VAT reports
Change tax codes or trans…
! Approval
AUDIT · STATE

Retrieved

  • VAT return report for the period (Xero)
  • Transactions and tax codes for the peri…
  • The previous quarter’s return, for comp…
  • The client’s VAT scheme and period date…

Excluded

  • Payroll data
  • Clients outside the manager’s portfolio
  • Xero credentials
  • Internal fee and profitability notes
Claude
Tax
Kroy
Xero
Read VAT reports
Change tax codes or trans…
! Approval
AUDIT · STATE

Retrieved

  • VAT return report for the period (Xero)
  • Transactions and tax codes for the peri…
  • The previous quarter’s return, for comp…
  • The client’s VAT scheme and period date…

Excluded

  • Payroll data
  • Clients outside the manager’s portfolio
  • Xero credentials
  • Internal fee and profitability notes
Reviewing a VAT return with Claude and Xero before submission: the workflow through Kroy. The request.. Who is asking.. Only what the task needs.. Excluded by design.. The proposed action.. What Kroy refuses.. A person decides.. State changes. Everything is recorded..

What the AI can and cannot do

Data accessed

  • VAT return report for the period (Xero)
  • Transactions and tax codes for the period (Xero)
  • The previous quarter’s return, for comparison (Xero)
  • The client’s VAT scheme and period dates (KroyDB)

Data excluded

  • Payroll data
  • Clients outside the manager’s portfolio
  • Xero credentials
  • Internal fee and profitability notes

Actions permitted

  • Read VAT reports (xero.reports.read)
  • Read transactions (xero.transactions.read)
  • Create a review note (artifact.create)

Actions refused

  • Change tax codes or transactions (xero.transactions.update)
  • File the VAT return
  • Read another portfolio’s clients

Human approval required

  • The manager decides every correction and files the return in Xero

Business situation

A London accountancy practice prepares quarterly VAT returns for many of its clients in Xero. Before a manager files each one, somebody has to look over the quarter: transactions with an unexpected tax code, large bills with no VAT recorded, reverse charge entries, and movements that look out of line with the previous quarter. It is careful work, and it competes with everything else in the week.

Why existing tools alone are insufficient

An AI assistant can spot patterns in a list of transactions, but only if someone exports them into a chat — which puts client ledgers wherever that chat is stored. Connecting the AI straight to Xero gives it whatever the connection allows for everyone who uses it, including the ability to change transactions. The practice wants a second pair of eyes, not a second person editing the books.

Systems involved

  • Xero — the VAT return report and the transactions behind it.
  • KroyDB — the client entity, its VAT scheme, period dates and the manager responsible.
  • Kroy Artifacts — where the review note is kept, linked to the client and the period.

Kroy architecture

Claude connects to Kroy. Xero is connected to Kroy once, by the practice. The Review VAT Return Skill is enabled for the tax team: it may read reports and transactions for the manager’s clients and create a review note. It may not write to Xero. Kroy holds the Xero credentials; Claude never receives them.

Workflow

  1. The manager asks Claude: “Review ABC Limited’s VAT return for the quarter before I file it.”
  2. Claude requests context through Kroy. Kroy checks the manager, the agent, the manager’s portfolio and the Skill.
  3. Kroy calls Xero with xero.reports.read and xero.transactions.read and returns the period’s return, the transactions behind it and the prior quarter for comparison.
  4. Claude lists the items worth checking — for example, a supplier normally coded at the standard rate now coded as zero-rated, and a large overseas bill with no reverse charge entry.
  5. The manager asks: “Save that as a review note.” Claude requests artifact.create. Kroy permits it and links the note to ABC Limited and the period.
  6. The manager asks: “Fix the zero-rated ones.” Claude requests xero.transactions.update. Kroy refuses: the Skill does not include writing to Xero.
  7. The manager asks Claude to file the return. Kroy refuses: filing is not an action this Skill can reach. The manager corrects the coding and files the return in Xero.

Agent permissions

Claude acts only under delegation from the signed-in manager, and only within the Review VAT Return Skill. It reads the manager’s clients and writes only review notes inside Kroy.

Human permissions

The manager sees their own portfolio, makes every correction and files every return. A partner can see review notes across portfolios.

State changes

  • A review note Artifact is created for ABC Limited’s VAT period.
  • The period’s status moves to Reviewed — awaiting manager.
  • Nothing in Xero changes as a result of the AI’s work.

Audit outcome

Kroy records each Xero read, the review note, and both refused requests — the attempted recode and the attempted filing — with the manager, the agent, the Skill and the policy that decided each one.

Security considerations

  • Xero credentials stay in Kroy.
  • Read-only access is set in the Skill, so it holds whatever the AI is told.
  • Payroll and other portfolios are outside the Skill and never returned.
  • The review note stays inside the practice’s Kroy organisation, not in a chat history.

Setup requirements

  • A Kroy organisation with client entities, VAT periods and portfolios in KroyDB.
  • Xero connected to Kroy.
  • Claude connected to Kroy.
  • The Review VAT Return Skill enabled for the tax team.

Try this with your own systems.

Try this with your practice