Silver Sea AI & Automation
Case studies

What we built, and what it changed.

Every project on one page, grouped by the problem it solved. Each one states the problem, what we built, and the result. Engagements are confidential, so firms are described, not named.

4 projects

Client onboarding

Client onboarding in one form

One intake form writes the client into your practice management system, CRM, and portal at once. Under 2 minutes instead of 30–45.

Problem
New clients were keyed separately into Smartsheet, CCH Axcess, CCH Workflow, and HubSpot, with no way to tell whether a lead already existed.
Built
A matching algorithm across all four systems, an API connection from Smartsheet into Axcess, and an RPA layer for the gaps.
Result
The API now covers 90% of data points. Record creation takes 7–10 minutes instead of 30.
  • CCH Axcess
  • Karbon
  • Practice CS
See how this fits the platform

Engagement letter automation

One master template driven by your service codes, generated and sent for signature from the systems you already use.

Problem
The existing engagement letter automation was outdated, disconnected from daily systems, and ran off 38 largely duplicated templates.
Built
An internal portal integrating Salesforce, CCH Axcess Workflow, SafeSend/Adobe Sign, and SharePoint, with one product-code-driven master template.
Result
Letter generation cut to 2–3 minutes in testing, and a $505,000 product-code mismatch surfaced and fixed along the way.
  • CCH Axcess
  • SafeSend
  • SharePoint
See how this fits the platform

One client record across CCH Axcess and Karbon

A single client view for firms that run tax in CCH Axcess and workflow in Karbon, respecting each system's ID and contact structure.

Problem
Staff checked two systems to get a complete picture of a client. The two systems use different ID and contact structures.
Built
A client management tool that creates a client in both systems at once, compares the two records side by side, and applies a change only after someone approves it. It keeps the firm's 5-digit client IDs and Karbon's organization-plus-person contacts, and runs on the firm's own server behind Microsoft 365 sign-in.
Result
Live in production. One place to look instead of cross-referencing two systems by hand, and every failure raises a notification and a visible status record, so nothing fails silently.
  • CCH Axcess
  • Karbon
See how this fits the platform

Client portal access managed by bot

Add and remove requests for CCH Portal users read from a spreadsheet and applied across clients by an RPA bot, with a log of every change.

Problem
Portal users had to be added and removed client by client, by hand.
Built
An RPA bot that reads add and delete requests from an Excel file and applies them across multiple clients.
Result
Portal access changes run in bulk, and every change is logged as a success or an error.
  • CCH Axcess
See how this fits the platform
2 projects

Tax data entry

Tax data import with validation

Excel and source-document data into the tax return with entity matching and duplicate checks, so preparers review instead of re-key.

Problem
Excel-to-Axcess imports produced entity mismatches and duplicates; document requests and e-filing status were tracked by hand.
Built
An import layer with entity matching and validation rules, plus a client portal for document tracking and e-file status through the SafeSend API.
Result
Duplication errors gone; staff see document and e-filing status in real time.
  • CCH Axcess
  • SafeSend
See how this fits the platform

PDF-to-Drake data entry bots

W-2, 1099, and K-1 forms read by OCR, validated, and entered into Drake by a bot. Low-confidence matches go to a review queue.

Problem
Incoming client documents were classified and routed by hand, a growing bottleneck as volume rose.
Built
An AI classifier that sorts documents automatically and flags low-confidence matches for review.
Result
80–90% of documents auto-filed; the rest routed to a reviewer rather than misfiled.
  • Drake Tax
See how this fits the platform
5 projects

Document migration

Document migration into SharePoint

Folder structure, retention rules, and client attributes mapped before a file moves. Permissions synced from your practice system.

Problem
1.2 million documents for about 11,000 clients had to leave GoFileRoom, prioritizing active clients and the last seven years.
Built
A staged pipeline (download, restructure, upload) run by ten RPA bots on ten virtual machines in parallel, with a redesigned client data model.
Result
Projected timeline cut from 12 weeks to 2–3 by using API tooling instead of a manual move.
  • SharePoint
  • Karbon
  • CCH Axcess
See how this fits the platform

Multi-terabyte document backlog, sorted by OCR

Legacy document systems moved into SharePoint and Karbon in tiers, with OCR reading each file and routing it to the right client folder.

Problem
About 3.5 TB across roughly 1 million files and 2.1 million folders, no API path out, and staff scanning, renaming, and routing by hand.
Built
A three-tier plan (active, recent, cold storage), folder structures generated from Karbon data at about 90% match accuracy, and OCR routing with Microsoft Document Intelligence.
Result
Manual scan-rename-route replaced by automated classification, and a structured home for a backlog that had no automated path before.
  • SharePoint
  • Karbon
See how this fits the platform

SharePoint folders built from Karbon client data

A consistent, metadata-driven SharePoint structure created automatically for each Karbon client, with tax PDFs routed to the right folder.

Problem
Work papers sat in a SQL database and in personal and group drives, with no consistent folder names or metadata.
Built
A phased move to Karbon, a SharePoint structure with metadata for path, tax year, and file type, one-click sign-off, and Power Automate folder creation synced from Karbon.
Result
Ad hoc folder naming replaced by one structure, and UltraTax PDFs routed to the right client folder automatically.
  • Karbon
  • SharePoint
  • UltraTax
See how this fits the platform

Document migration tuned for a weekend cutover

Slow delta syncs and path-length errors fixed before go-live, so the final move fits in a weekend.

Problem
Slow delta syncs and 300–400 file-path-length errors threatened the migration window.
Built
A delta-sync tuning pass, a bot that isolates and fixes path-length errors, and permissions synced from the practice management platform to SharePoint.
Result
Delta sync cut from 20 hours to 3 hours per folder, which made a weekend cutover possible.
  • SharePoint
  • Karbon
See how this fits the platform

CCH Axcess Document history moved into SharePoint

A one-time bulk move of the firm's document history into SharePoint, then an ongoing sync so staff can keep working in CCH Axcess Document while they adopt SharePoint.

Problem
About 40 export archives needing roughly 200 GB of working space, folder trees longer than Windows' 260-character path limit, and the same client spread across several archives.
Built
A pipeline that unpacks each archive, drops CCH's internal wrapper folders, merges each client into one SharePoint folder, skips documents older than seven years unless they are marked Permanent, and applies classification metadata after each upload. After the bulk move, a sync tool pulls new files from CCH Axcess through the API.
Result
The firm's document history landed in SharePoint in one structure, and the two systems run side by side, so the firm adopts SharePoint at its own pace instead of on a cutover date. If a metadata column is missing, the upload continues and logs a warning, so a night's transfer is never lost.
  • CCH Axcess
  • SharePoint
See how this fits the platform
2 projects

Practice-management migration

Karbon migration, including what the API can't move

Workflow mapping, a sync utility so nothing is double-keyed during the switch, and historical WIP and documents brought across.

Problem
Karbon's API has no WIP or document endpoints, so historical WIP invoices and documents had no supported migration path.
Built
A Selenium/Python UI automation for document migration and linking, plus a staged import sequence with unique ID suffixes.
Result
Made historical WIP and document migration possible at all, with no one-by-one relinking.
  • Karbon
  • UltraTax
  • SharePoint
See how this fits the platform

Workstream and project migration by bot

Projects created in bulk from a spreadsheet by an RPA bot that drives the same screens your staff use.

Problem
Thousands of projects had to be created in Workstream with no import path that preserved the firm's structure.
Built
An RPA bot creating Workstream projects from an Excel list, with validation on each record.
Result
2,000+ projects processed on one engagement.
  • CCH Axcess
See how this fits the platform
8 projects

Dashboards & KPIs

Dashboard 4 CPA

Six Power BI dashboards on CCH Axcess DAU or Practice CS data: firm overview, client profitability, staff productivity, time entry, AR, unbilled WIP. Live in two weeks.

Problem
Dashboard links broke whenever reports changed, and nothing separated what partners see firm-wide from what billers should see.
Built
A Power BI suite with a stable published link, role-based partner and biller workspaces, and one consolidated staff dashboard.
Result
Broken links gone; partners and billers each get a workspace scoped to what they're allowed to see.
  • CCH Axcess
  • Practice CS
  • Power BI
See how this fits the platform

Power BI on Karbon and QuickBooks data

Capacity, revenue, and workload views for firms whose practice system doesn't expose the detail, updated daily.

Problem
No daily visibility into revenue and cost, and roughly 1–1.5 FTE of admin work (reminders, timesheet reports, workload views) done by hand.
Built
A Power Automate layer for reminders, timesheet reports, and workload dashboards, plus a QuickBooks-linked dashboard with daily revenue and cost.
Result
About 1–1.5 FTE of admin work automated; revenue view moved from weekly and manual to daily and automatic.
  • Karbon
  • QuickBooks Online
  • Power BI
See how this fits the platform

DAU monitoring and Power BI infrastructure

Refresh failures caught before partners notice, credentials that don't expire the reporting, and a permissions process that scales.

Problem
Reporting on the Data Axcess Utility relied on credentials that expired every 60–90 days, causing repeated refresh outages.
Built
A move to centrally managed infrastructure, a ticketing process for Power BI permissions, and a row-level security plan.
Result
Credential expiry removed as a single point of failure.
  • CCH Axcess
  • Power BI
See how this fits the platform

Cash-cycle and capacity dashboards on Practice CS

WIP aging, realization, AR, staff budget vs. actual, and project deadlines in Power BI, with alerts through Power Automate.

Problem
Practice CS data wasn't surfaced anywhere staff could act on it: no view of WIP aging, realization, capacity, or budget vs. actual hours.
Built
A Power BI suite for client KPIs, AR and unbilled WIP, staff budgets and billable hours, and a project view for capacity and deadlines.
Result
The firm saw its cash cycle for the first time: 58 days from time entry to invoice, plus 44 days to collect.
  • Practice CS
  • Power BI
See how this fits the platform

Capacity dashboard for a small remote firm

Billable vs. non-billable hours, remaining project budgets, and task priority by staff member, on a fixed fee.

Problem
The practice-management platform rolled job hours up weekly, which hid task-level detail and made capacity planning unreliable.
Built
A custom Power BI dashboard, delivered fast on a fixed fee, showing hours, remaining budgets, and task priority per person.
Result
A prioritized work queue per staff member. The firm's target at scoping was about 80% less clutter in that queue.
  • Karbon
  • Power BI
See how this fits the platform

Tax-return workload by staff member

Ready, overdue, and in-progress returns per person, with budget hours and a comparison to last year's pace.

Problem
No view of tax-return workload by staff member, and no way to compare completion pace with the prior year.
Built
A Power BI dashboard of ready tasks by staff, with executive and detail views, budget-hours monitoring, and prior-year comparison, on a fixed budget.
Result
Ready tasks, overdue items, and staff-level realization in one place instead of pieced together by hand.
  • Practice CS
  • Power BI
See how this fits the platform

PTO and overtime reporting for a payroll change

A Power BI payroll report connected to Paylocity that tracks PTO for salaried staff and overtime for hourly staff separately.

Problem
The firm was moving to biweekly payroll and had no reliable way to report PTO and overtime by employee type.
Built
A Power BI payroll reporting system integrated with Paylocity: PTO for salaried staff at a fixed 80 hours per period, overtime for hourly staff.
Result
One accurate report for the new payroll cycle, replacing manual reconciliation across pay types.
  • Power BI
See how this fits the platform

CCH Axcess reports exported to Excel by bot

An RPA bot sets the report parameters and criteria the same way every time, runs the report, and saves it to Excel.

Problem
Setting up a CCH Axcess report meant re-entering parameters and selection criteria by hand, which was slow and easy to get wrong.
Built
An RPA bot that configures the parameters, selects the criteria, runs the report, and exports it to Excel.
Result
Reports come out the same way every run, without anyone rebuilding the settings.
  • CCH Axcess
See how this fits the platform
3 projects

Billing, AR & payables

Practice CS to QuickBooks Online sync

Clients and invoice lines move from Practice CS to QBO automatically, with email-based matching that catches near-duplicate names.

Problem
Invoices and client records were re-keyed into QuickBooks Online by hand and broke whenever names didn't match exactly. Invoice descriptions were stored as old rich-text formatting, so a $2.22 line arrived wrapped in font and colour codes.
Built
An automated client and invoice sync with configurable tax handling, active-client filtering, and email-based matching. A parser strips the rich-text formatting cleanly, and the sync detects whether an invoice is a detailed or a summary layout and adapts.
Result
Roughly 1,700 clients synced in testing, then production. Manual re-entry gone.
  • Practice CS
  • QuickBooks Online
See how this fits the platform

AR reminders and data clean-up

Reminders and card payments triggered by aging, and a clean-up pass that finds the AR your reports are missing.

Problem
Inactive clients with outstanding AR, duplicate metadata, and overlapping staff fields were quietly distorting reporting.
Built
A structured clean-up pass across client, contact, and staff records, with a plan for an AI data-integrity agent to keep it clean.
Result
Identified $53,000–$54,000 in AR tied to inactive clients that reporting had been missing.
  • CCH Axcess
  • QuickBooks Online
  • Power BI
See how this fits the platform

Payables processing by bot, with an approval trail

Invoices read and coded automatically, then approved one by one through a dedicated mailbox, so every approval is on record.

Problem
Each AP batch took 30–45 minutes by hand, approvals were scattered across email, and there was no digital audit trail.
Built
A bot for data extraction and coding, plus a per-invoice email approval workflow, run in parallel with the manual process before cutover.
Result
Payables processing cut from 45 minutes to 15 minutes.
  • SharePoint
See how this fits the platform
3 projects

Time entry

Time-entry monitoring and import

Missing or late entries flagged and chased automatically; external time batches imported into the practice system by bot.

Problem
Time batches from an external system were keyed into CCH Axcess by hand; an earlier automation depended on a fragile SQL database and a manual spreadsheet.
Built
A Power Automate Desktop pipeline: JSON batches arrive over Azure Service Bus, become Excel via Office Scripts, and a bot completes the import, then reports back.
Result
Removed the SQL database and the manual spreadsheet, and closed the loop so the source system knows an import succeeded.
  • Practice CS
  • CCH Axcess
See how this fits the platform

Utilization from three time sources in one view

Time data from the financial system, a screen-time tracker, and payroll combined, so discrepancies per employee are visible.

Problem
Time-tracking data lived in three disconnected spreadsheets, so discrepancies per employee were hard to see or discuss.
Built
First a consolidated pivot view, then an automated Power BI time-entry dashboard with the firm's own realization calculation and plain-English Q&A.
Result
Three siloed spreadsheets replaced by one view for reconciling time entries by employee and date.
  • Power BI
See how this fits the platform

Financial Cents time synced into CCH Axcess Practice

A CAS team keeps Financial Cents for tasks and time while the firm bills from CCH Axcess. Time entries cross every day, reviewed by staff first, with no re-keying.

Problem
The CAS department logged time in Financial Cents while billing, WIP, and realization lived in CCH Axcess Practice, so someone re-entered the week's time by hand. CCH Axcess has no API for time entry import.
Built
A daily run that pulls recent entries through the Financial Cents API, maps clients by ID, staff by email, and service codes and projects to CCH's naming, then emails each person their own entries with errors flagged. Two hours later a Power Automate bot imports the cleaned data through the CCH Axcess screens. The administrator replies "Resync" to rerun a day, and entries already imported are skipped.
Result
CAS hours reach CCH Axcess on a known schedule, earlier on Mondays so partner reports cover the prior week. A daily comparison also flags clients, projects, and service codes that exist in one system and not the other.
  • Financial Cents
  • CCH Axcess
Read the full case study
1 project

AI assistant

AI assistant connected to your practice system

Ask “which clients are missing an email?” or “create the 1040 work item for X” in plain English. Runs through MCP against Karbon or Financial Cents.

Problem
Checking data quality or creating work items meant digging through each platform's UI separately.
Built
An MCP-connected assistant wired into both platforms that runs data-quality audits, creates work items, and pulls documents from SharePoint.
Result
A multi-step lookup across two platforms became one plain-English request.
  • Karbon
  • Financial Cents
  • CCH Axcess
  • SharePoint
See how this fits the platform
3 projects

E-file & status tracking

E-file status and client updates by bot

Status checked on a schedule, written to your tracker, client notified on acceptance. Extensions filed in batch.

Problem
No reliable view of team availability or client status across CCH and ShareFile; client emails were turned into tasks by hand.
Built
An assistant that matches incoming emails against QuickBooks and CCH data and creates the task, plus a daily tax-return status report.
Result
Email-to-task conversion automated; a daily status report instead of ad hoc checks.
  • Drake Tax
  • UltraTax
  • Karbon
See how this fits the platform

Signed SafeSend documents filed into CCH Axcess

When a client signs in SafeSend, the document lands in their CCH Axcess file on its own, with automatic retries.

Problem
Signed documents came back through SafeSend and had to be moved into CCH Axcess by hand.
Built
A service that acknowledges SafeSend's notification immediately, then downloads and files the document in the background through a job queue.
Result
Signed documents reach the client's file without anyone touching them, and a network failure retries instead of losing the document.
  • SafeSend
  • CCH Axcess
See how this fits the platform

Has this client sent their documents? One portal answers it

Client organizer activity, Karbon work items, and file locations across SharePoint and the network drive, in one view.

Problem
Preparers checked three systems to learn whether a client had sent their documents and where the files were. The client organizer portal has no API.
Built
A web portal that reads the organizer with an automated browser, cross-checks every result against a separate export before trusting it, and keeps documents in sync between Karbon, SharePoint, and the network drive. It only reads from Karbon unless a user explicitly writes back.
Result
One screen answers the question. Karbon data is cached and refreshed on demand, so the portal stays fast without hammering Karbon's API.
  • Karbon
  • SharePoint
See how this fits the platform
4 projects

Reconciliation & clean-up

WIP and AR reconciliation after a merger

A monthly reconciliation of WIP and AR across offices and systems, so the balances partners see match the records underneath.

Problem
After a merger, the firm couldn't reconcile WIP and AR balances across offices. The existing reports hid the gaps.
Built
A WIP/AR reconciliation analysis on DAU data and a monthly reconciliation workflow.
Result
Surfaced a $230,000 AR discrepancy and an $868,000-vs-$5 million WIP reporting mismatch that no report had shown.
  • CCH Axcess
  • Power BI
See how this fits the platform

Engagement binder purge by retention rules

Old audit, tax, and accounting binders identified by retention criteria and purged in phases, with a record of what was removed.

Problem
Years of closed engagement binders were eating storage, and the firm had no formal purge process.
Built
A phased purge of audit, tax, and ACS files by retention criteria, plus a bot that adds admin users to client portals.
Result
Phase one alone removed roughly 3,800 audit binders and freed about 380 GB.
  • CCH Axcess
See how this fits the platform

Invoice-to-timesheet reconciliation across vendors

Vendor invoices matched to timesheets automatically, with mismatched contract IDs and names normalized and exceptions flagged.

Problem
Reconciling invoices and timesheets across six staffing subcontractors meant pulling data out of PDFs, with mismatched contract IDs and staff names.
Built
A Python reconciliation workflow fed by a drop folder, with mapping logic across vendors, piloted on one vendor before rollout.
Result
Manual PDF reconciliation replaced by an automated match-and-flag process.
  • Power BI
See how this fits the platform

Bulk client updates in CCH Axcess from Excel

Client, contact, staff, and project data reviewed in a spreadsheet, then written back to CCH Axcess Practice in one pass.

Problem
After years of use, mergers, and setups that no longer fit, client data was cluttered enough that reports were slow and sometimes wrong.
Built
A Python update process that uses Excel as the staging area: the firm reviews and corrects the data in a spreadsheet, and the tool applies the changes to CCH Axcess Practice in bulk.
Result
A clean-up or migration that would take administrators weeks of one-record-at-a-time edits runs as a reviewed batch.
  • CCH Axcess
See how this fits the platform
Steven Duc Tran, CPA, CIA

Have a problem that isn't on this page?

Most projects start as something that isn't on a list. One call is enough to tell you whether we can help and where we'd start.