Home/Case Studies/Transaction Categorization

Case Study · Transaction Categorization

How we helped a consulting firm cut transaction categorization time from 3 weeks to 4 hrs

Small consulting firm · 4 bank accounts · 1,750+ annual transactions · 350+ paper receipts

97.6%

reduction in time spent on reconciliations

4 hrs

current process duration with Rima

99.7%

transaction categorization coverage

About the company

The client is a small consulting firm operating across multiple business lines with mixed personal and business expenditures. Their financial activity spans four bank accounts, over 1,750 annual bank transactions, and hundreds of paper receipts collected throughout the year.

As the business grew, the year-end bookkeeping reconciliation became an increasingly painful bottleneck, consuming weeks of professional accounting time and delaying tax filings.

The challenge

The annual reconciliation required processing approximately 1,750 transactions spanning fragmented data sources — bank statements, credit card statements, paper receipts, emailed invoices, and handwritten notes.

  • Over 350 paper receipts in PDF format, many faded, crumpled, or partially illegible
  • 1,750+ bank and credit card transactions across four accounts (personal checking, business checking, operating, and credit card)
  • Receipts from 80+ unique vendors across multiple locations, each with different tax rates
  • Mixed business, personal, and mixed-use items requiring careful classification
  • Charge accounts with monthly bulk payments, e-Transfers, cash, and split transactions

The team needed a system that could:

  • Extract financial data from receipts of varying quality and format
  • Categorize every transaction to the correct Chart of Accounts code
  • Match receipts to bank transactions with high accuracy
  • Flag items requiring accountant review (capital assets, personal expenses, etc.)
  • Produce an ERP (Xero)-ready upload Excel with separate sheets per bank account

The solution

Rima implemented a multi-step Blueprint structured as five sequential agents, each with quality gates requiring explicit approval before proceeding.

1

Agent 1Bank Statement Extraction

Automated extraction of all transactions from bank statement PDFs across four accounts, with penny-perfect validation against statement totals.

2

Agent 2Receipt OCR & Data Extraction

Vision-based reading of 356 paper receipts — extracting vendor name, date, line items, subtotal, tax, total, and payment method. Receipts were classified by data quality and deduplicated automatically.

3

Agent 3Transaction Categorization

Every transaction was mapped to one of 10 Chart of Accounts codes using vendor-keyword rules with business vs. personal classification. Restaurant receipts were categorized by guest count (3+ guests = entertainment at 50% deductibility). Hardware purchases flagged as mixed-use for accountant determination.

4

Agent 4Receipt-to-Bank Matching

An 8-priority waterfall matched receipts to bank transactions using exact amounts, date proximity, vendor keywords, tip-difference matching for restaurants, and loyalty-points-adjusted matching. Non-bank payment methods (cash, charge accounts, e-Transfers) were categorized separately rather than marked as unmatched.

5

Agent 5Workpaper Generation

A complete Excel workbook was produced with reconciliation details, one upload sheet per bank account, excluded items with reasons, and an accountant flags sheet identifying capital assets, personal expenses, and items requiring professional judgment.

The results

Reduction in time

Reconciliation and categorization went from 3 weeks to under 4 hours of supervised AI processing.

Volume processed

1,752 bank transactions categorized and matched against 356 receipts, mapped to 10 Chart of Accounts codes.

Match accuracy

236 of 267 matchable receipts (88.4%) correctly matched on first automated pass. After quality review, zero false positives in the final deliverable.

Categorization coverage

298 of 299 financially meaningful receipts (99.7%) successfully categorized to Chart of Accounts codes with zero unmatched vendors.

Accountant efficiency

72 items were pre-flagged for accountant review (capital assets, personal expenses, billing anomalies), eliminating the need to manually scan all 1,752 transactions.

Tax compliance

Tax rates correctly applied by vendor location, with tax only recorded when explicitly printed on the receipt — never reverse-calculated.

Why Rima outperformed general-purpose LLMs

Earlier attempts using general-purpose LLMs produced inconsistent outputs requiring full re-verification. Common failure modes included hallucinated bank matches, incorrectly computed tax amounts, and receipts matched to transactions from completely different vendors.

Rima built a Blueprint with multi-step agents tailored to this specific workflow, incorporating lessons learned during the initial reconciliation:

  • Vendor-specific matching rules (loyalty point redemptions, tip-adjusted restaurant matching, monthly charge account bulk payments)
  • Tax rate tables applied by vendor location, not client location
  • Deduplication logic for terminal-plus-itemized receipt pairs, multiple scans, and packing-slip vs. invoice disambiguation
  • Quality gates between agents requiring explicit approval before proceeding
  • State persistence across sessions — the workflow resumes after interruption without data loss

The Takeaway

Accountants and bookkeepers often spend significant time on work that lives outside their ERP: matching paper receipts to bank feeds, categorizing ambiguous transactions, chasing missing documentation, and building reconciliation workpapers in spreadsheets. This work is too complex for simple rules-based automation but too repetitive for skilled professionals to spend weeks on. By leveraging an AI-forward workspace like Rima, teams can codify their domain expertise into Blueprints that execute in minutes what previously took days or weeks.

Ready to see results like this at your firm?