WorkDWG AC-101

An Irish accountancy firm's AI & Automation service line, built from zero, with its client platform live in 10 days

An Irish chartered accountancy and audit firm offered no AI. Adrian built the service line and runs it: a 20-module client platform live in 10 days, EU-only AI processing enforced in code, an AML gate, Irish statute as software, and AI training for the whole firm.

10 daysfirst commit to live production

Client
M.A. Whately & Co., Irish chartered accountancy and audit firm
Role
Director of AI & Business Automation (contractor). Sole owner of AI at the firm, reporting to the principal: scoping, pricing, build, training and support.
Timeline
Service line from October 2025. Platform: first build 23 Sep 2026, live 3 Oct 2026, current scope by 21 Oct 2026
Status
Live in production, pre-revenue

The build in 60 seconds

60 s, with voice-over. Drawn from the same figures as this page; client anonymised.

Context and the problem

When Adrian joined, AI was not a service the firm offered. A year later it has its own client platform, a trained team, an AI Academy, published fee packages and automation clients of its own in Ireland, the UK and the US. The flagship is the platform: one place where clients send bills and receipts, see VAT and deadlines, pay suppliers and receive proposals, with the practice working from the same data. Its clients had been paying for separate document-capture tools, and slow quoting was costing the practice prospects.

What was broken

AI was not a service the firm offered: no client platform, no AI training for staff and no automation offer for its own clients. Client management ran on a 97-field schema that needed an audit before any automation could trust it.

What it cost

  • Clients were paying for separate document-capture tools, and slow quoting was costing the practice prospects.
  • A Xero audit joined 749 sales invoices to 587 client records and found 391 records with no invoice in 12 months: a dormant-client and revenue-leak signal for the principal.
  • A recurring-tasks automation run on the unaudited data would have created payroll tasks for all 587 clients.

The brief

Build software a regulated profession can put its name on, fast, without an in-house engineering team. Client financial data, identity numbers and bank details are involved, so data residency, tenant isolation, AML checks and GDPR retention had to exist from the first release, not be retrofitted.

Constraints and stakes

  • EU data residency enforced in code, not in policy: Vercel (Dublin), Supabase (eu-west-1), Resend EU, Gemini via Vertex AI in the EU with data caching disabled. A US model is an opt-in fallback only, so client documents never leave the EU silently.
  • A regulated profession: AML and customer due-diligence gate, audit log, retention purge, a DPA template.
  • No engineering team to maintain it, so the test suite and runbooks had to carry the knowledge.
  • Unit economics that beat paid capture tools: target under one cent per document.

What was at stake

A regulated profession puts its name on this software. A client document leaving the EU silently, an account opened before an identity check, or a model guessing a figure on a fee proposal would be a compliance problem for the firm, not a bug.

Adrian's role and team

  • Sole owner of AI at the firm, reporting to the principal: scoping, pricing, build, training and support in one seat.
  • Partners bring client scenarios; Adrian designs, prices and hands over a proposal-ready brief.
  • Validation rounds with the firm's bookkeepers, and decisions with the principal.
  • Parallel AI coding agents as the delivery team, each workstream behind review and test gates before deploy.

The approach, from 0 to 100

  1. Oct 2025

    Hired as the sole owner of AI. The firm had no AI offer, no client platform and no AI training for staff.

  2. Dec 2025

    First deliverable: an AI maturity assessment funnel for lead generation, a 12-node n8n workflow with AI scoring and a four-email nurture.

  3. 2026

    Practice management rebuilt for 587 client records and 10 staff plus the owner: 97-field schema audited, 3,172 writes with 0 failures, per-person dashboards, Xero invoicing and credit control at 7, 14, 30 and 60 days.

  4. Apr to Oct 2026

    Client delivery under the firm's brand: HubSpot-to-Xero invoicing across 3 legal entities (live April), a SEPA payment-file converter sold as a monthly subscription (live 14 Aug), a co-op's first automated settlement cycle (Aug) and Xero prepayment journals for a tour operator (live 16 Oct).

  5. 23 Sep 2026

    First commit of the client platform; multi-tenant the next day.

  6. 3 Oct 2026

    Live in production, hosted in the EU. The first deploy smoke test passed 85 of 85.

  7. 5 to 7 Oct 2026

    The firm's website split into Accounting and AI & Automation (353 claims fact-checked, 81 of 81 pages clean), the AI Academy live with 8 lessons and 48 prompts, and a daily staff brief from the AI assistant.

  8. 13 Oct 2026

    Xero audit of 749 sales invoices against 587 client records; 391 records with no invoice in 12 months flagged to the principal.

  9. 15 to 17 Oct 2026

    Bills engine rebuilt: browser path from 86.7% to 97.6%, AI path from 98.6% to 99.8% on the synthetic corpus. 3,230 checks green, 0 failures.

  10. 21 Oct 2026

    20 modules live, five product films on the sales page, fee packages published, and the full team trained in an AI for Accountants session.

What was built

  • 20 product modules (16 client-facing, 4 practice-only): bills and receipts, VAT, supplier payments, credit control, Irish tax deadlines, proposals with a fee calculator, expenses, a client portal. 53 request templates across 14 sectors.
  • AI bills reader. Two Gemini models via Vertex AI EU reach a consensus on every field, with Claude as an opt-in fallback. VAT numbers are checked against VIES, bills post to Xero, and supplier payments export as SEPA pain.001 files.
  • Irish statute as software. Revenue deadlines for PAYE, RCT, VAT, Form 46G, LPT and Form 11, CRO audit-exemption tests (S.I. 301/2024), statutory late-payment interest and Irish bank holidays, encoded as rules and covered by tests.
  • An AML gate. Client account set-up stays blocked until the identity check is verified. IBAN confirmations are admin-only, stamped and audited by a database trigger.
  • AI assistant with confirm-first actions. A tool-registry agent that runs under the user's own session permissions, proposes an action, and executes only after the user confirms. Per-tenant cost caps. A daily staff brief went live on 7 Oct.
  • Numbers computed, words generated. The fee engine computes every figure deterministically and lets AI compose only the wording, a rule written down with reference to model non-determinism and Irish DPC guidance.
  • Security by default. Row-level tenant isolation, CSP and HSTS, masked PPS and IBAN numbers, 192-bit recipient tokens, an audit log and automatic retention purge. SSL Labs grade A.
  • A service the firm can sell. A five-tier price ladder (Free, Essentials, Pro, Business and Practice Bookkeeping) with add-ons, and an AI for Accountants session that trained the full team (10+ people) with live demos, backed by an AI Academy of 8 lessons and 48 prompts.

How the system fits together

System drawing: Accountancy firm: AI service line from zero, platform live in 10 daysClient uploads a bill or receipt. Two EU-hosted models extract every field and must agree. VAT number checked against VIES. Bill drafted in Xero for review. Approved payments exported as a SEPA file.EU ONLY: VERCEL DUBLIN, SUPABASE EU-WEST-1, RESEND EU, VERTEX AI EUFirm's clientUPLOADS A BILL OR RECEIPTNew clientASKS TO OPEN AN ACCOUNTPractice team10 STAFF AND THE OWNERAI bills reader2 EU MODELS MUST AGREE, USFALLBACK OPT-INIBAN confirmationADMIN ONLY, AUDITEDAML gateBLOCKED UNTIL ID VERIFIEDAI assistantACTS AFTER THE USERCONFIRMSVIES VAT checkEVERY SUPPLIER VAT NUMBERSEPA file builderCONFIRMED IBANS ONLYClient portal16 CLIENT-FACING MODULESIrish statute engineREVENUE, CRO, BANKHOLIDAYSDraft bill in XeroA PERSON APPROVESSEPA pain.001 fileSUPPLIER PAYMENTSProposals and fee engineNUMBERS COMPUTED, WORDS GENERATEDAudit log, tenant walls, retention purge3,000+ CHECKS GREEN, 87-POINT SMOKE TEST ON EVERY DEPLOYSystem drawing: Accountancy firm: AI service line from zero, platform live in 10 daysClient uploads a bill or receipt. Two EU-hosted models extract every field and must agree. VAT number checked against VIES. Bill drafted in Xero for review. Approved payments exported as a SEPA file.DEADLINESFirm's clientUPLOADS A BILL OR RECEIPTNew clientASKS TO OPEN AN ACCOUNTPractice team10 STAFF AND THE OWNERAI bills reader2 EU MODELS MUST AGREE, US FALLBACKOPT-INIBAN confirmationADMIN ONLY, AUDITEDAML gateBLOCKED UNTIL ID VERIFIEDAI assistantACTS AFTER THE USER CONFIRMSVIES VAT checkEVERY SUPPLIER VAT NUMBERSEPA file builderCONFIRMED IBANS ONLYClient portal16 CLIENT-FACING MODULESIrish statute engineREVENUE, CRO, BANK HOLIDAYSDraft bill in XeroA PERSON APPROVESSEPA pain.001 fileSUPPLIER PAYMENTSProposals and fee engineNUMBERS COMPUTED, WORDS GENERATEDAudit log, tenant walls, retentionpurge3,000+ CHECKS GREEN, 87-POINT SMOKETEST ON EVERY DEPLOY

DWG AC-101System drawingRev Oct 2026

  • Outside the system: a person, a ledger, a regulator
  • Built by Adrian
  • Human approval or a hard check
  • Live in production
  • Boundary

Data path

  1. 01Client uploads a bill or receipt
  2. 02Two EU-hosted models extract every field and must agree
  3. 03VAT number checked against VIES
  4. 04Bill drafted in Xero for review
  5. 05Approved payments exported as a SEPA file

Safeguards and controls

  • EU-only AI processing enforced in code: Vertex AI's EU endpoint with data caching disabled. The US model is an opt-in fallback, never a silent one.
  • An AML due-diligence gate: client account set-up stays blocked until the identity check is verified.
  • IBAN confirmation is admin-only, stamped and audited by a database trigger; SEPA files are built only from confirmed IBANs.
  • A confirm-first AI assistant that runs under the user's own permissions, with per-tenant cost caps. Assistant conversations are deleted 12 months after the last message.
  • Tenant isolation in Postgres (row-level security), CSP and HSTS, masked PPS and IBAN numbers, 192-bit recipient tokens, an audit log and a retention purge. Mozilla Observatory 11 of 12, SSL Labs grade A.
  • Numbers computed, words generated: the fee engine computes every figure deterministically and AI writes only the wording.

How it was tested

Fifty backend test files and 55 browser end-to-end suites run before release; the AI assistant has its own unit and end-to-end tests (17/17, 8/8). Every deploy runs an 87-point smoke test against the live system. Accuracy on real client documents has not yet been measured; that is the next evaluation, and the synthetic corpus figure is reported as exactly that.

Running the practice, alongside the platform: client management was rebuilt for 587 clients and 10 staff, with a 97-field schema cleaned in 3,172 writes and 0 failures. A Xero audit joined 749 sales invoices to the client records and surfaced 391 clients with no billing in 12 months. A recurring-tasks automation was held on dry run because it would have created payroll tasks for all 587 clients; after the data fix, the dry run produced exactly 38, one per payroll client in Xero.

Results

  • 10 daysfrom first commit (23 Sep) to live production (3 Oct 2026)
  • 20modules live within four weeks
  • 99.8%field accuracy of the AI bills reader (428 of 429 fields) on a 64-file synthetic test corpus; 97.6% on the browser path, up from 86.7%, with 0 silent errors
  • < 1 centper document, about USD 0.009 per scan
  • 3,000+automated checks green (3,230 with 0 failures on 17 Oct)
  • 87/87deploy smoke test on every deploy since 6 Oct (85/85 at launch)
  • 10+people trained: the full firm team, in an AI for Accountants session with live demos
Before and after
MeasureBeforeAfter
AI offer at the firmNoneIts own AI & Automation service line, with published fee packages
Staff trained in AINoneThe full team (10+), plus an 8-lesson AI Academy
Bills reader, browser path (synthetic corpus)86.7%97.6%, 0 silent errors
Bills reader, AI path (synthetic corpus)98.6%99.8%
Payroll tasks on the recurring-tasks dry run587, one per client38, one per payroll client in Xero

What the client owns now

  • The code, the Supabase project and the Vercel account, all in the firm's name.
  • A handover document, deploy runbook and the full regression suite.
  • Its pricing, packaging and module roadmap, and a team trained to sell and use it.

Stack

  • TypeScript
  • Vercel
  • Supabase (PostgreSQL, RLS)
  • Gemini via Vertex AI EU
  • Claude
  • Xero API
  • VIES
  • SEPA pain.001
  • Resend
  • n8n

Links

What Upwork clients said

  1. Upwork review5 out of 5 stars

    Capraru was extremely knowledgable in N8N, AI and general automation. He put together an excellent workflow that helped us achieve human scoring, automated content. We are hiring him for our next AI automation project.

    UK internet-marketing firmAI workflow automation, n8n

Similar problem?

Describe the process, the systems and the constraint. Hiring for this skill set? The CV has the full record.

adriancapraru27@gmail.com