Back to learn

How AI categorizes transactions

AI as a suggestion layer, rules as the source of truth. The pattern that keeps categorization accurate and auditable.

Transaction categorization looks like a classification problem, and it is, but it is not a good fit for pure machine learning. The reason is auditability. A category assignment needs to be reproducible, explainable, and stable over time. A probabilistic model changes its answers as it retrains; that is fine for suggestions and bad for the system of record.

Where AI genuinely helps

New merchants. When a transaction description shows up that no rule matches, a language model can suggest the likely category based on the merchant name and the amount. The human accepts, and the acceptance becomes a rule. Over time the rules cover 95 percent of transactions and the AI only sees the residual.

Where AI does not help

Bulk categorization. Running a language model over every transaction on every statement is slow, expensive, and non-reproducible. A rules engine does the same job in milliseconds with a persistent explanation.

The hybrid pattern

  1. Rules run first, deterministically, on every transaction.
  2. Anything that matches a rule inherits its category and stops.
  3. Anything that does not match goes to a review queue.
  4. An AI suggestion appears next to each queued transaction.
  5. The human accepts (creates a rule) or overrides (creates a rule with a different category).

The result is a system that is deterministic in production, aided by AI at the edges, and gets more comprehensive over time as new rules accumulate. Karchu is built on this pattern.

Why deterministic wins on auditability

If your accountant asks why a transaction landed in a specific category, you show the rule ID, the rule pattern, and the date it was created. If an AI made the call, you have to reproduce the model version, the prompt, and the inputs to explain the answer. The first is trivial; the second is a research project.