Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Parse and store transactions from bank statements, enable querying and adding personal finance data in JSON format within a local workspace.
Parse and store transactions from bank statements, enable querying and adding personal finance data in JSON format within a local workspace.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Personal finance memory layer. Parse statements, store transactions, query spending.
Transactions: ~/.openclaw/workspace/finance/transactions.json Raw statements: ~/.openclaw/workspace/finance/statements/ Storage convention: OpenClaw workspace (~/.openclaw/workspace/) is the standard location for persistent user data. This matches where session-memory and other hooks store agent data. Credentials/config would go in ~/.config/finance/ if needed.
When user shares a statement (image or PDF): โ ๏ธ IMPORTANT: Telegram/channel previews truncate PDFs! Always extract with pypdf first to get ALL pages: python3 -c " import pypdf reader = pypdf.PdfReader('/path/to/statement.pdf') for i, page in enumerate(reader.pages): print(f'=== PAGE {i+1} ===') print(page.extract_text()) " Then parse the full text output: Extract transactions from ALL pages Return JSON array: [{date, merchant, amount, category}, ...] Run scripts/add-transactions.sh to append to store Verify total matches statement (sum of expenses should equal "Total purchases") Extraction format: Each transaction: {"date": "YYYY-MM-DD", "merchant": "name", "amount": -XX.XX, "category": "food|transport|shopping|bills|entertainment|health|travel|other"} Negative = expense, positive = income/refund. Categories: food: restaurants, groceries, coffee, fast food transport: Waymo, Uber, gas, public transit shopping: retail, online purchases bills: utilities, subscriptions entertainment: movies, concerts, theme parks health: pharmacy, doctors travel: hotels, flights
User asks about spending โ read transactions.json โ filter/aggregate โ answer Example queries: "How much did I spend last month?" โ sum all negative amounts in date range "What did I spend on food?" โ filter by category "Show my biggest expenses" โ sort by amount
User says "I spent $X at Y" โ append to transactions.json
{ "transactions": [ { "id": "uuid", "date": "2026-02-01", "merchant": "Whole Foods", "amount": -87.32, "category": "food", "source": "statement-2026-01.pdf", "added": "2026-02-09T19:48:00Z" } ], "accounts": [ { "id": "uuid", "name": "Coinbase Card", "type": "credit", "lastUpdated": "2026-02-09T19:48:00Z" } ] }
User: shares statement image Agent: extracts transactions via vision, confirms count Agent: runs add script to store User: "how much did I spend on food?" Agent: reads store, filters, answers
jq โ for JSON transaction storage and querying (apt install jq / brew install jq) pypdf โ for full PDF text extraction (pip3 install pypdf)
Telegram truncates PDF previews โ always use pypdf to get all pages Verify totals โ sum extracted expenses and compare to statement total before importing Coinbase Card โ no Plaid support, statement upload only
Add finance_connect tool for Plaid OAuth flow Auto-sync transactions from connected banks Same query interface, different data source
Workflow acceleration for inboxes, docs, calendars, planning, and execution loops.
Largest current source with strong distribution and engagement signals.