One-time importsBring in existing account historyStart with files you already have. Re-importing newer exports is safe because Astroledger de-duplicates transactions.
Upload
CSV import
Most banks export a CSV with Date, Description, Amount (or Debit/Credit). Works for checking, savings, credit cards, PayPal, Venmo. Duplicates are deduped by hash.
Upload · LLM
PDF bank statement
Local Ollama
Drop in any bank's monthly PDF statement. The local LLM extracts a structured transaction list - no per-bank parser required. Stays on this machine. Image-only/scanned PDFs need OCR (coming later).
Quicken family
.OFX / .QFX / .QBO / .QIF
Most banks offer "Download for Quicken/QuickBooks" - that's an OFX-family file (.qfx, .ofx, or QuickBooks Web Connect .qbo) Astroledger parses directly. Quicken Desktop users: File → Export → QIF (include all accounts). A multi-account QIF brings over every account at once - checking, savings, credit, loans, AND investment accounts (securities, share lots, dividends, price history → holdings with FIFO cost basis). Quicken's .QDF binary itself isn't readable; export to QIF first.
Automatic connectionsKeep accounts currentUse a live provider when you want new transactions to arrive automatically. SimpleFIN is the recommended self-hoster-friendly option.
SimpleFIN
Bank link ($1.50/mo or $15/yr)
Recommended
Personal-use bank aggregator covering most US banks. Cheapest real-bank option. No API keys needed - just paste a Setup Token from the SimpleFIN Bridge.
Plaid
Bank Link (free dev tier)
Not configured
Set PLAID_CLIENT_ID and PLAID_SECRET in .env to enable. Free at dashboard.plaid.com (use development env for free real banks).
Gmail
Receipt sync
Opt-in
Scans for order confirmations (Amazon, DoorDash, Uber, Apple, Lyft, Instacart, Etsy, Stripe-powered services). Sign-in does NOT request Gmail access - you have to opt in here.
Not connectedReceipt scanning is off until you authorize Gmail read access.
Re-authorizes your Google account with the additional gmail.readonly scope. Astroledger only reads - never modifies - your inbox, and only fetches messages matching receipt-shaped queries.
PayPal
REST API
Business only
Receipts and ordersExplain what each charge purchasedAdd item-level context from retailer exports or email without changing the bank ledger underneath.
Amazon
Order history
Request your data at amazon.com/gp/privacycentral → "Your Orders". Upload the Retail.OrderHistory CSV here to tie items to charges.
Email archive
Upload .eml / .mbox / .zip
Bring your own email archive - works with Outlook, Proton, Fastmail, Apple Mail, Google Takeout, etc. without granting any provider live read access. Parses receipts the same way Gmail sync does.
Live connections
Connected institutions
Plaid and SimpleFIN can pull new transactions on a schedule. Click Refreshto pull now, or wire up automatic syncs by pointing a scheduler (Task Scheduler, cron, GitHub Actions) at POST /api/cron/sync with your CRON_SECRET. The badge on each row shows when it last synced and whether credentials are still good.
No live connections yet - link a bank via Plaid or paste a SimpleFIN setup token above.
One-time · file imports
Imported files
CSV, QIF, and PDF imports are snapshots - they don't sync. To pick up new activity, import a fresh export, or migrate the account to a live source (Plaid / SimpleFIN) above.
Demo Bank
4 accounts · 770 transactions
manual
Everyday Checking, High-Yield Savings, Cashback Card, Index Brokerage