Intelligent Transaction Classification¶
Status: Shipped¶
Domain: Categorization Linear Projects: Categorization: Revamp UI & Bulk updates, Prompt optimization improvements
What It Does¶
Time-consuming, manual transaction tagging and fragile rule engines belong to the past. Palm automatically classifies and explains every transaction, so you always know where money is coming from and where it's going, without endless rule maintenance.
Palm analyzes transaction descriptions together with your business context to assign the right categories for every inflow and outflow. Each classification comes with a clear, explainable reason, giving you confidence in the output while keeping you in control. When you make a change, Palm learns automatically, improving accuracy and adapting to your business over time.
Capabilities¶
| Capability | Status | Notes |
|---|---|---|
| Automatic classification of operational flows | Shipped | Payroll, vendor payments, customer receipts, tax, FX |
| Automatic classification of intercompany flows | Shipped | Identifies IC transactions across entities/accounts |
| Explainable results | Shipped | Natural-language explanation for each decision |
| Continuous learning | Shipped | Recategorize → Palm learns automatically |
| Business-context aware | Shipped | Uses your category definitions and historical data |
| Bulk reclassification | Shipped | Fix multiple transactions at once |
| Historical reclassification | Shipped | Fix past errors without support tickets |
| Prompt optimization | Shipped | Evolutionary algorithm improves classification accuracy over time |
Jobs Fulfilled¶
1. Classify bank transactions into budget categories for variance analysis¶
Desired Outcomes Addressed: - [x] Minimize the time spent on manual transaction classification - [x] Reduce the frequency of classification errors that pollute category reporting - [x] Increase the ability to reclassify historical transactions without support tickets - [x] Reduce reliance on inconsistent free-form memo text for categorization
How Palm Addresses This: - ML-based auto-classification removes manual work - Explainable results let you catch and fix errors - Self-serve bulk reclassification (no support tickets needed) - Uses transaction metadata, not just memo text
2. Support downstream teams (AR, AP) with granular transaction identification¶
Desired Outcomes Addressed: - [x] Minimize the time AR/accounting team spends identifying specific transactions - [x] Increase accuracy of journal entries created from Treasury reports - [ ] Reduce the frequency of questions about where to allocate transactions (partial)
How Palm Addresses This: - Granular categorization at transaction level - Consistent, auditable classification logic - Exportable data for downstream systems
Pain Points Addressed¶
| Pain Point | Addressed? | Notes |
|---|---|---|
| Manual classification is time-consuming and error-prone | Yes | Auto-classification |
| Rule-based allocation is not smart | Yes | ML-based, not rule-based |
| Many transactions fall through the cracks | Yes | ML handles edge cases better |
| Can't easily reclassify historical transactions | Yes | Self-serve bulk reclassification |
| Classification errors lead to "pollution of other categories" | Partial | Explainable results help catch errors |
| Distinguishing IC from intra-company | Yes | Dedicated IC detection |
What's NOT Included (Yet)¶
- GL-level prediction for accounting journal entries
- Real-time classification (currently batch)
- Integration with AR/AP systems (HighRadius, etc.)
How It Works (Technical)¶
| Component | Technology | Notes |
|---|---|---|
| Classification engine | Vertex AI (Gemini) + OpenAI | LLM-based with structured output |
| Prompt optimization | Evolutionary algorithm | Mini-batch training, USER errors weighted 2x |
| Context caching | Vertex AI | 2-hour TTL for system prompts |
| Data storage | PostgreSQL | categorization schema with task queues |
| Experiment tracking | MLflow | Checkpoint persistence for optimization |
| Task orchestration | Airflow | Batch categorization DAGs |
Key files/services:
- /backend/agents/categorization/ - Categorization agent
- /backend/agents/categorization/prompt_optimization/ - Learning engine
- /db_schemas/categorization_schema.sql - Data model
- Worker types: LLMWorker, DualCategoryWorker, CategoryMapWorker
Related¶
- Domain knowledge: docs/knowledge/categorization/
- Roadmap: None currently planned
Last updated: 2026-02-17