Cash Pooling¶
Status: Shipped¶
Domain: IC Activity Linear Projects: Cash Pooling
What It Does¶
Palm provides visibility into cash pool structures and intercompany cash movements. For organizations that use cash pooling (where subsidiary accounts sweep into a master account), Palm helps distinguish between "real" balances and pool-adjusted positions, and tracks the resulting intercompany positions.
The platform supports multiple pool types (Physical, Notional, Account Groups) and properly handles the complexity of pooled account reporting - distinguishing header accounts from participants and showing consolidated pool positions.
Capabilities¶
| Capability | Status | Notes |
|---|---|---|
| Pool account identification | Shipped | Mark accounts as part of pool via Admin Portal |
| Pool type support | Shipped | Physical, Notional, Account Group types |
| Header/participant roles | Shipped | Distinguish pool header from participants |
| Master account balance | Shipped | Consolidated pool balance |
| IC position tracking | Shipped | is_intercompany flag on categories |
| Pool-aware forecasting | Shipped | Forecast filters by pool, pool context in models |
| Pool-aware position service | Shipped | Proper grouping: ZBA_POOLS, NOTIONAL_POOLS, STANDALONE |
Jobs Fulfilled¶
From ic-activity/jobs.md
1. Determine daily/weekly funding needs across cash pool (Emerging)¶
Desired Outcomes Addressed: - [x] Minimize time spent identifying which pooled accounts need funding - [x] Reduce false alarms from negative balances on pooled accounts - [x] Increase accuracy of cash position view by showing sweeps correctly
How Palm Addresses This: - Pool accounts properly grouped (ZBA_POOLS, NOTIONAL_POOLS, STANDALONE) - Position service fetches ALL pooled accounts for complete picture - Header vs participant roles clearly identified - Pool-aware balance forecasting
2. Differentiate automatic pool sweeps from intentional IC payments¶
Desired Outcomes Addressed: - [x] Minimize confusion between automatic cash pooling and liability settlements - [x] Increase clarity in transaction history about why money moved - [ ] Reduce time spent investigating IC transactions (partial - no automatic sweep classification)
How Palm Addresses This: - IC category flag identifies intercompany transactions - Pool structure metadata helps interpret transactions - Transaction categorization can mark IC vs operational
3. Optimize working capital through internal cash pooling (Emerging)¶
Desired Outcomes Addressed: - [ ] Minimize the use of expensive external debt facilities (not direct) - [x] Increase the efficiency of internal cash pooling - [x] Reduce the time between identifying surplus and deploying to deficit
How Palm Addresses This: - Consolidated pool visibility shows surplus/deficit - Pool-aware forecasting helps plan funding - Centralized view enables better deployment decisions
Pain Points Addressed¶
| Pain Point | Addressed? | Notes |
|---|---|---|
| Cash pool accounts show misleading negative balances | Yes | Pool grouping shows context |
| No indication whether negative is real overdraft | Yes | Header/participant roles clarify |
| Forecasts don't reflect sweep activity | Yes | Pool-aware forecasting implemented |
| No category for cash pool classification | Yes | Pool types and roles in data model |
| Can't distinguish automatic sweeps from IC settlements | Partial | IC flag exists, no auto-classification |
What's NOT Included (Yet)¶
- Automatic sweep transaction classification
- IC loan interest calculations
- Pool structure visualization (graphical)
- Sweep threshold configuration
- Pool optimization recommendations
How It Works (Technical)¶
| Component | Technology | Notes |
|---|---|---|
| Pool configuration | Admin Portal | Full CRUD for pool setup |
| Data storage | PostgreSQL | palm.cash_pools table |
| Pool types | PHYSICAL, NOTIONAL, ACCOUNT_GROUP | Different pooling structures |
| Position service | Go (treasury-api) | Pool-aware grouping and fetching |
| IC tracking | Category flag | is_intercompany boolean |
| Analytics | DBT | Silver/gold models with pool context |
Key files/services:
- /backend/admin_portal/customer_operations/cash_pools.py - Admin UI
- /treasury-api/position-service/ - Pool-aware positions
- /db_schemas/palm_schema.sql - cash_pools table
- /backend/palm_dbt/models/silver/dim_bank_accounts.sql - Pool fields
Related¶
- Domain knowledge: docs/knowledge/ic-activity/
- Roadmap: Cash Pooling enhancements in progress
Last updated: 2026-02-17