The workflow

Watch this workflow run through Kroy.

  1. The request.

    “Why is our VAT bill so much higher this quarter?”

  2. Who is asking.

    Kroy identifies the person in client services and ChatGPT acting for them, within the delegation they gave it.

  3. Only what the task needs.

    Kroy retrieves the client’s VAT returns and transactions (Xero), correspondence linked to the client (Outlook) and the client’s open queries (KroyDB) from Xero and Outlook.

  4. Excluded by design.

    Other clients' records and correspondence, Internal notes marked partner-only and Payroll data never reach ChatGPT. That boundary is Kroy’s, not an instruction to the AI.

  5. The proposed action.

    Permitted: read reports and transactions (xero.reports.read, xero.transactions.read), read linked correspondence (outlook.mail.read) and create a reply draft (outlook.draft.create).

  6. What Kroy refuses.

    Refused: send email (outlook.mail.send), read mail not linked to the client and read partner-only notes.

  7. A person decides.

    The manager sends the reply from the draft.

  8. State changes. Everything is recorded.

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

ChatGPT
Client services
Kroy
Xero
Outlook
Read reports and transactio…
Send email
! Approval
AUDIT · STATE

Retrieved

  • The client’s VAT returns and transactio…
  • Correspondence linked to the client (Ou…
  • The client’s open queries (KroyDB)

Excluded

  • Other clients' records and corresponden…
  • Internal notes marked partner-only
  • Payroll data
ChatGPT
Client services
Kroy
Xero
Outlook
Read reports and transactio…
Send email
! Approval
AUDIT · STATE

Retrieved

  • The client’s VAT returns and transactio…
  • Correspondence linked to the client (Ou…
  • The client’s open queries (KroyDB)

Excluded

  • Other clients' records and corresponden…
  • Internal notes marked partner-only
  • Payroll data
Investigating a client’s question with ChatGPT, Xero and Outlook: 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

  • The client’s VAT returns and transactions (Xero)
  • Correspondence linked to the client (Outlook)
  • The client’s open queries (KroyDB)

Data excluded

  • Other clients' records and correspondence
  • Internal notes marked partner-only
  • Payroll data

Actions permitted

  • Read reports and transactions (xero.reports.read, xero.transactions.read)
  • Read linked correspondence (outlook.mail.read)
  • Create a reply draft (outlook.draft.create)
  • Update the query record (query.update)

Actions refused

  • Send email (outlook.mail.send)
  • Read mail not linked to the client
  • Read partner-only notes

Human approval required

  • The manager sends the reply from the draft

Business situation

ABC Limited’s director emails a London accountancy practice: “Why is our VAT bill so much higher this quarter?” The manager knows the answer is somewhere in the quarter’s transactions and last month’s correspondence about a new supplier, but finding it means opening Xero, searching the mailbox and piecing it together.

Why existing tools alone are insufficient

The manager uses ChatGPT. To use it here, they would paste transactions and emails into the chat. A direct mailbox connection would let the AI search every client’s correspondence, and send replies on its own. The practice’s AI policy allows neither.

Systems involved

  • Xero — ABC Limited’s VAT returns and transactions.
  • Outlook — correspondence linked to ABC Limited.
  • KroyDB — the client entity and its open queries.

Kroy architecture

ChatGPT connects to Kroy. Xero and Microsoft 365 are connected to Kroy by the practice. The Investigate Client Query Skill may read one client’s ledger and linked correspondence, draft a reply and update the query record. Kroy scopes every read to the client named in the query and to the manager’s portfolio.

Workflow

  1. The manager asks ChatGPT: “ABC Limited want to know why their VAT bill has gone up this quarter. Find out why.”
  2. Kroy checks the manager, the agent, the manager’s access to ABC Limited and the Skill.
  3. Kroy returns this quarter’s and last quarter’s returns and transactions through xero.reports.read and xero.transactions.read, and correspondence linked to ABC Limited through outlook.mail.read.
  4. ChatGPT explains the change: higher standard-rated sales after a new contract, and fewer purchases with reclaimable VAT.
  5. The manager asks: “Does XYZ Limited have the same issue?” Kroy refuses: this query is about ABC Limited, and XYZ Limited’s records are outside the Skill’s scope for it.
  6. The manager asks: “Draft a reply.” ChatGPT requests outlook.draft.create. Kroy permits the draft.
  7. A request to send the reply is refused: outlook.mail.send is not part of the Skill. The manager reviews the draft and sends it.
  8. ChatGPT requests query.update. The query is marked Answered — draft ready.

Agent permissions

ChatGPT acts under the manager’s delegation, within the Skill and within the one client named in the query. It can read and draft; it cannot send or reach other clients.

Human permissions

The manager can see their own portfolio and sends every reply. A partner can see open queries across the practice.

State changes

  • The client query moves to Answered — draft ready.
  • The draft reply is linked to the query and to ABC Limited.
  • The explanation is recorded against the query, so a colleague can pick it up.

Audit outcome

Kroy records each read from Xero and Outlook, the draft, the refused cross-client request and the refused send — with the manager, the agent, the Skill and the policy that decided each.

Security considerations

  • Mailbox access is limited to correspondence linked to the client, not the whole mailbox.
  • Scope is set by Kroy for each request, so it holds even if the AI is asked to widen it.
  • Credentials for Xero and Microsoft 365 stay in Kroy.

Setup requirements

  • Client entities and portfolios in KroyDB, with correspondence linked to clients.
  • Xero and Microsoft 365 connected to Kroy.
  • ChatGPT connected to Kroy.
  • The Investigate Client Query Skill enabled for the client services team.

Try this with your own systems.

Try this with your practice