home / skills / phrazzld / claude-config / moneta-ingest
/skills/moneta-ingest
This skill parses new financial documents into Moneta, validating outputs and producing reconciliation summaries to highlight deltas.
npx playbooks add skill phrazzld/claude-config --skill moneta-ingestReview the files below or copy the command above to add this skill to your agents.
---
name: moneta-ingest
description: |
Parse new financial documents into Moneta. Detect type, run parser, validate output, summarize reconciliation.
user-invocable: true
effort: high
---
# /moneta-ingest
Parse new financial documents into Moneta.
## Steps
1. Scan `source/` for new files and record expected sources and date ranges.
2. Detect document type from filename prefix. If unclear, sniff content headers or PDF table titles.
3. Map type to parser and run it.
4. Validate parser outputs: count, totals, date range, no duplicate IDs.
5. Update aggregates and lots.
6. Emit reconciliation summary with deltas and any warnings.
Type map:
```
bofa -> pnpm parse:bofa
river -> pnpm parse:river
strike -> pnpm parse:strike
cashapp -> pnpm parse:all (includes cashapp PDF parsing)
robinhood -> pnpm parse:all
w2 -> pnpm parse:all
charitable -> pnpm parse:all
```
## Examples
```bash
# Parse everything and rebuild aggregates
pnpm parse:all
```
```bash
# Parse only BofA CSVs
pnpm parse:bofa
```
## References
- `source/`
- `normalized/transactions.json`
- `normalized/cost-basis.json`
- `normalized/accounts.json`
- `scripts/parse-all.ts`
- `scripts/parse-bofa.ts`
- `scripts/parse-river.ts`
- `scripts/parse-strike.ts`
- `scripts/parse-cashapp.ts`
- `scripts/parse-robinhood.ts`
- `scripts/parse-w2.ts`
- `scripts/parse-charitable.ts`
This skill ingests new financial documents and parses them into Moneta for downstream reconciliation and reporting. It detects document types, runs the appropriate parser, validates outputs, updates aggregates, and emits a concise reconciliation summary with any warnings. The result is normalized transactions, cost basis, and account data ready for analysis.
The skill scans a configured source directory for new files and records expected sources and date ranges. It identifies document type from filename prefixes or, when needed, by inspecting content headers and PDF table titles, then maps that type to a specific parser and executes it. After parsing, it validates outputs by checking record counts, totals, date ranges, and duplicate IDs, updates aggregate and lot data, and produces a reconciliation summary showing deltas and warnings.
How does the skill decide which parser to run?
It uses filename prefixes first; if unclear it sniffs file headers or PDF table titles and maps the detected type to a parser command.
What validation checks are performed after parsing?
It checks record counts, sum totals, date ranges, and for duplicate transaction or lot IDs, then reports any mismatches in the reconciliation summary.