/moneta-ingest
Parse new financial documents into Moneta.
Steps
-
Scan source/ for new files and record expected sources and date ranges.
-
Detect document type from filename prefix. If unclear, sniff content headers or PDF table titles.
-
Map type to parser and run it.
-
Validate parser outputs: count, totals, date range, no duplicate IDs.
-
Update aggregates and lots.
-
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
Parse everything and rebuild aggregates
pnpm parse:all
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