At a glance
- Karbon's integrations page names no connection into UltraTax CS or Lacerte, and its one CCH Axcess connection is still listed "coming soon" for a client sync; TaxDome and Juno announced a workflow (July 2025) that feeds extracted data into tax software without naming which engines.
- The reach matrix below maps five stack layers - practice management, client portal, tax engine, general ledger and email - against what each platform's own documentation, or its vendor-reported integrations, describes as read, written or not addressed.
- A custom agent pays off once a workflow needs more than one layer at a time, not as a replacement for platform AI that already does the job inside its own system.
- Platform AI and a custom agent can run side by side: platform AI keeps doing what it already does, and the agent covers only the handoff between systems.
- PE-backed and multi-office firms that inherited several practice-management and tax-engine combinations should run the same layer-by-layer check once per acquired stack, not once for the whole group.
Is Karbon AI enough for a mid-size CPA firm?
Build vs buy AI for an accounting firm often starts with the platform the firm already pays for: for a mid-size firm whose bottleneck is entirely inside Karbon, Karbon AI alone may already close the gap. Karbon describes its agents this way: "Tapping into your firm's data, communication history, and workflows, Karbon AI Agents understand who's responsible, what's due, and what's changed moment to moment" [1]. They act too - Karbon says the agents "follow your firm's playbook so the work gets done your way" [1].
The limit is scope, not quality. Karbon's own integrations page names tax partners including ProConnect, StanfordTax, Filed, Juno and TaxBandits, and lists a CCH Axcess connection, described as a client sync, still labeled "Coming soon" [2]; UltraTax CS and Lacerte don't appear. A firm on one of those two engines is asking a different question: not whether Karbon AI is enough, but whether it was ever positioned to reach the tax engine's own data.
- Almost all of the firm's practice-management, email and task work already happens inside Karbon.
- The firm's tax engine is one Karbon's own integrations page names, not one of the two it doesn't.
- No workflow needs to read from, or write to, a system that page doesn't describe.
The platform-vs-custom decision matrix
The real question isn't Karbon AI vs. custom AI, or TaxDome vs. custom - it's which stack layer needs the reach. The table below maps five layers against what each platform's own documentation, or its vendor-reported integrations, describes as read, written or not addressed.
| Stack layer | Reads (platform AI or its integrations) | Writes (platform AI or its integrations) | Not addressed today |
|---|---|---|---|
| Practice management (tasks, internal workflow) | Firm data, communication history and workflow status, per Karbon's own agents page [1]. | Client reminders and end-of-month workpapers, following the firm's own playbook [1]. | A connection into UltraTax CS or Lacerte - neither appears in Karbon's own integrations list, and its CCH Axcess connection is described as a client sync still "coming soon" [2]. |
| Client portal / intake | Uploaded client documents at intake - W-2s, 1099s, K-1s, Schedules C and E - per TaxDome and Juno's July 2025 announcement [3]. | Extracted data fed directly into tax software via the Juno integration, plus AI-enhanced error checks and a review summary, per the same announcement [3]. | Not stated in the announcement: whether task or workflow status syncs to a separate practice-management platform, or which tax engines the workflow reaches. |
| Tax engine (CCH Axcess, UltraTax CS, Lacerte) | CCH Axcess's Open Integration Platform offers APIs a firm's developer can build on [4]; Lacerte's SDK is for those who "write custom code or use database queries" [5]; UltraTax CS's features page lists named product integrations - CoCounsel Tax, SafeSend and Checkpoint - and doesn't describe a developer interface [6]. | Confirm write and import support with the vendor: the CCH Axcess portal describes APIs [4]; Intuit's SDK page describes database-field access and GL Bridge transfer files for importing general-ledger data into Lacerte [5]. | The CCH Axcess developer portal and Lacerte SDK page describe developer interfaces and don't mention AI [4][5]; UltraTax CS's page names its own CoCounsel Tax product as a separate integration [6]. No page describes AI acting inside any of the three engines themselves. |
| General ledger | Client, billing and payment data, via Karbon's QuickBooks Online Accountant and Xero integrations [2]. | Synced billing and payment records via the same integrations [2]; Karbon's own agents page separately lists "reconciling transactions" among what its AI agents do [1]. | Not described on Karbon's integrations page: whether that reconciliation posts anything inside QuickBooks Online's or Xero's own ledger, or stays inside Karbon's own workflow. |
| Client and team email through Gmail and Microsoft Exchange: "Every email between your client and anyone on your team, in one single place" [2]. | Tasks and comments created from email: "Bring your email into your workflow, create tasks, add comments and share with colleagues" [2]. | Messages inside a portal's or tax engine's own message center that isn't routed through Gmail or Exchange. |
Run six questions before scoping anything.
- 1. What layer does the workflow live in?
Name the layer - practice management, portal, tax engine, GL or email - using the matrix above.
- 2. Does the platform's own AI already reach it?
Check the vendor's own documentation, not a reseller's pitch, for whether it reads and writes there today.
- 3. Does the workflow need more than one layer at once?
Touching only one layer is a platform-AI or configuration question, not a build-vs-buy one.
- 4. Is the gap missing integration, or a missing capability?
A tax engine's own developer interface may already expose what looks missing.
- 5. Is the volume high enough to own the exception review?
A custom agent earns its cost on a workflow that recurs, not a one-off.
- 6. Who will own the agent, its prompts and its code?
Decide this in writing before the engagement starts.
What can't practice-management AI see?
Practice-management AI sees what happens inside its own platform, plus whatever it names in its own integrations. Karbon's page names tax partners including ProConnect, Filed and Juno, and lists a CCH Axcess connection, described as a client sync, still labeled "Coming soon" [2]; UltraTax CS and Lacerte don't appear. That's a gap, not a criticism: a practice-management platform runs the firm's workflow, not every firm's tax-engine connector.
The same pattern holds on the portal side: TaxDome and Juno announced, in July 2025, a workflow whose extracted client documents are "fed directly into tax software" (CPA Practice Advisor) [3], without naming which tax engines it reaches - one reported vendor workflow. Anything outside a platform's named integrations is a custom-integration question, not a limitation to wait out: CCH Axcess's Open Integration Platform offers developer APIs [4], and Lacerte's SDK gives "methods to access database fields in various ways" [5].
- Data inside a tax engine that isn't one of a platform's named integrations.
- Workflow status split across two systems that don't share an integration today.
- Other portals or practice-management platforms - Canopy, SmartVault, Liscio - aren't covered here; check each one's own documentation the same way.
- Anything a platform's own documentation doesn't describe as a read or a write, however plausible it sounds in a sales conversation.
When does a custom AI agent pay off over a platform add-on?
A custom agent pays off once a workflow needs more than one layer at once - reading a document, checking the tax engine, updating a task in one pass - and that exact combination isn't named in your own vendors' published integrations. It also pays off when volume justifies owning the exception review, and the firm wants the prompts and code as an asset it keeps, not a feature it rents.
It rarely pays off just because a roadmap feature hasn't shipped; ask the vendor for the gap first.
- The workflow reads from or writes to a system combination your own vendors' published integrations don't name together.
- The same exception pattern recurs often enough to be worth owning, not routing to a person indefinitely.
- A configuration request or vendor roadmap ask has already been tried, or clearly won't cover the gap.
Can you combine platform AI with custom agents?
Yes - combining the two is a realistic answer, not a compromise. Platform AI keeps doing what it already does inside its own system - Karbon's agents handling tasks and email, a portal's AI handling document intake and review - while a custom agent covers only the handoff between them.
Call it buy-first, build-the-gap: keep the platform AI doing what it was built for, and scope the custom agent narrowly around the one connection your platforms' own integrations don't name - often the tax engine, or the handoff between two platforms that don't talk.
That also avoids rebuilding what a platform already ships. Check the vendor's documented features first; duplicating a licensed feature only adds a system to secure and maintain.
- Keep platform AI for anything inside a system it's already reading and writing.
- Scope the custom agent around the one handoff your own vendors' integrations don't name.
- Re-check the vendor's own documentation before building anything that might already ship.
Where to start: a first scoped workflow
Whichever column of the matrix a firm lands in most, start with one handoff, not a program.
- Pick one handoff, not a program
Choose one point where two systems don't talk today - portal intake into a tax engine, say - not a platform rebuild.
- Confirm what each platform already covers
Check the practice-management, portal and tax-engine vendors' own documentation for whether it already exists.
- Map the layer, not just the task
Use the reach matrix above to name exactly which layer the gap sits in.
- Write down who owns the result
Decide who owns the prompts, integration code and exception queue, and put it in the statement of work.
- Run a parallel period before go-live
Replay a closed period and compare the agent's output to what the team actually produced.
Our AI agent implementation page covers how a workflow like this gets scoped, built and handed over, and our industry page for CPA firms maps where agents fit across tax, close and notice workflows.
When this framework doesn't apply
- The firm's platform AI already reaches every layer the workflow touches - there's nothing custom to build yet.
- The firm hasn't picked one scoped workflow; none of the columns above is the right first step before that.
- The rules can already be written down completely - deterministic automation is the better fit; see when not to use an AI agent.
- The firm is still deciding whether to buy a platform at all - that's a vendor-selection question, not a build-vs-buy one.
Frequently asked questions
Is Karbon AI enough for a mid-size CPA firm?
Often, for work inside Karbon itself: tasks, email and workflow status. The limit is what Karbon's own integrations describe. Its page names tax partners including ProConnect and Juno, plus a client-sync CCH Axcess connection still labeled "coming soon"; UltraTax CS and Lacerte don't appear, so firms on those engines need a separate path to the tax engine.
What can't practice-management AI see?
Anything outside a platform's own named integrations. Karbon's own page doesn't name UltraTax CS or Lacerte, and its CCH Axcess connection is described as a client sync, still labeled "coming soon". A portal's AI is similarly scoped: TaxDome and Juno's 2025 announcement feeds extracted documents into tax software (CPA Practice Advisor) without naming which engines it reaches.
When does a custom AI agent pay off over a platform add-on?
When a workflow needs more than one layer at once - reading a document, checking the tax engine, updating a task - and that combination isn't in your own vendors' published integrations, with enough volume to justify owning the exception review. It rarely pays off just because a roadmap feature hasn't shipped; ask the vendor for the gap first.
Can you combine platform AI with custom agents?
Combining them is realistic, not a compromise. Platform AI keeps handling what it already reaches inside its own system, while a custom agent is scoped narrowly around the one handoff - often into the tax engine - that your own vendors' published integrations don't name today.
Who owns a custom agent built for a firm?
Decide it in writing before the engagement starts: who keeps the prompts, the evaluation set, the integration code, and the ability to keep running the agent if the vendor relationship ends. None of that is a default outcome; it's whatever the statement of work says, so put it there before signing.
How do PE-backed firms decide across many acquired stacks?
Run the same layer-by-layer check once per inherited practice-management and tax-engine combination, not once for the whole group - an acquired office on Lacerte faces a different gap than one on CCH Axcess. We'd recommend standardizing the data layer agents read and write before standardizing which client-facing platform each office keeps using.
Related reading
- Before you sign with any implementation partner, run through 10 questions to ask an AI consulting firm.
- Our AI operations and enablement service covers running and maintaining an agent once it's built.
Sources
- Karbon, "AI Agents for Accounting Firms" (accessed 2026-09-30)
- Karbon, "Integrations" (accessed 2026-09-30)
- CPA Practice Advisor, "TaxDome and Juno Unveil Fully Integrated End-to-End Tax Workflow" (2025-07-10) (accessed 2026-09-30)
- Wolters Kluwer, "Developer Portal (CCH Axcess Open Integration Platform)" (accessed 2026-09-30)
- Intuit, "Lacerte Software Developer's Kit (SDK)" (accessed 2026-09-30)
- Thomson Reuters, "UltraTax CS features" (accessed 2026-09-30)
More in Professional firm operations
AI Proposal Automation for A&E Firms: Speeding Up SF330 and RFP Responses Without Losing Quality Control
AI proposal automation for A&E firms: a workflow table showing what an agent drafts for SF330 and RFP responses and what your licensed staff review.
Engineering FirmsWhy Clients Reject Your Invoices: Reducing Billing Disputes at Consulting and A&E Firms
Why clients reject your invoices, and how an AI review catches fee-cap overages, wrong phase codes and missing backup before billing. Includes a cause table.
Engineering FirmsWIP Accounting for A&E Firms: Catching Overbilling, Underbilling and Subconsultant Reconciliation Gaps
WIP accounting for A&E firms: what a WIP report shows, how to spot over- and underbilling, and a weekly exception table that includes subconsultant invoices.
Engineering Firms