Export Bank Transactions
to CSV with Plaid
SheetLink connects to 10,000+ banks via Plaid and gives you clean, consistent CSV exports — all banks in one file, same columns every time. Free via Chrome extension, automated via CLI.
Chrome extension is free. CLI automation requires MAX ($10.99/mo).
Two Ways to Get a Bank CSV
Start free with the Chrome extension, or automate with the CLI.
Chrome Extension
Install SheetLink for Chrome, connect your bank via Plaid, and sync to Google Sheets. From there, export the sheet as CSV in one click: File → Download → CSV.
- ✓Free to install — no credit card
- ✓7 days of history on free tier
- ✓All banks sync to one Google Sheet
- ✓Export CSV from Google Sheets anytime
CLI Automation
Use the SheetLink CLI to write a .csv file directly from your terminal. Scriptable, automatable, and schedulable with cron.
sheetlink sync --output csv
- ✓Direct .csv file output — no Google Sheets
- ✓Automate with cron or CI pipeline
- ✓Same schema every run
- ✓24 months of history
CSV Columns You Get
SheetLink exports 18 columns per transaction — consistent across every bank you connect.
transaction_idUnique ID for deduplicationdateTransaction date (YYYY-MM-DD)nameRaw transaction name from bankmerchant_nameCleaned merchant name (Plaid)amountAmount (positive = debit, negative = credit)iso_currency_codeCurrency (e.g., USD)categoryPlaid top-level categorysubcategoryPlaid subcategoryaccount_idUnique account identifieraccount_nameAccount display nameaccount_typechecking / savings / creditinstitution_nameBank name (e.g., Chase)pendingtrue / falsepayment_channelin store / online / otherlocation_cityCity of merchant (if available)location_regionState/regionlocation_countryCountry codelogo_urlMerchant logo URL (Plaid enriched)Why SheetLink CSV Beats Your Bank's CSV Export
Bank's Own CSV Export
- ✗Different column names per institution
- ✗Different date formats (MM/DD vs YYYY-MM-DD)
- ✗One file per bank — manual merging required
- ✗No merchant name enrichment
- ✗No category data
- ✗No deduplication key
- ✗Logging into each bank every time
SheetLink CSV
- ✓Same 18 columns every time, every bank
- ✓Consistent ISO date format (YYYY-MM-DD)
- ✓All banks in one file
- ✓Clean merchant names via Plaid enrichment
- ✓Category + subcategory included
- ✓transaction_id as unique dedup key
- ✓One sync covers all connected accounts
What People Use SheetLink CSV For
Tax Preparation
Export a full year of transactions in one CSV. Hand it off to your accountant or import it into your tax software. Consistent columns mean no reformatting.
Accountant Handoff
Send your bookkeeper a monthly CSV instead of multiple bank statements. One file, all accounts, clean merchant names — saves hours of reconciliation.
Import to QuickBooks or Wave
Both QuickBooks and Wave support CSV transaction imports. SheetLink's consistent schema and clean merchant names make the import process straightforward.
Spreadsheet Analysis
Open in Excel or Google Sheets, filter by category, pivot by month, or build a budget tracker — all from a clean, pre-formatted CSV that requires no cleanup.
Automate CSV Export with Cron + CLI
With the MAX tier CLI, add a cron job to generate a fresh CSV on your own schedule.
# Generate a daily bank CSV and upload to S3 # Add to your crontab: crontab -e 0 7 * * * sheetlink sync --output csv && aws s3 cp transactions.csv s3://my-bucket/bank-data/$(date +\%Y-\%m-\%d).csv
Note: SheetLink uses manual sync for privacy — no background bank access. For cron automation, combine sheetlink sync with sheetlink auth --api-key <key> for headless authentication without interactive Google OAuth.
Pricing
Free
- ✓7 days of history
- ✓Google Sheets sync
- ✓Export CSV from Sheets
- ✓1 bank connection
Pro
- ✓24 months of history
- ✓Google Sheets + Excel add-in
- ✓Unlimited banks
- ✓Manual sync on demand
MAX
- ✓Everything in Pro
- ✓CLI direct CSV output
- ✓Automate with cron
- ✓Postgres / SQLite / JSON too
Frequently Asked Questions
How do I export bank transactions to CSV using Plaid?
Install the SheetLink Chrome extension (free), connect your bank via Plaid, and sync to Google Sheets. From there, export as CSV via File → Download → CSV. For direct CSV output, use the SheetLink CLI (MAX): sheetlink sync --output csv.
Is CSV export free with SheetLink?
The Chrome extension is free and syncs to Google Sheets, which you can export as CSV. Direct CSV file output via the CLI requires MAX at $10.99/mo.
What columns are in the SheetLink CSV?
SheetLink CSV includes 18 columns: transaction_id, date, name, merchant_name, amount, iso_currency_code, category, subcategory, account_id, account_name, account_type, institution_name, pending, payment_channel, location_city, location_region, location_country, and logo_url.
Why is SheetLink CSV better than my bank's own CSV export?
Bank CSV exports vary by institution — different column names, different date formats, no category data. SheetLink produces a consistent schema across all your banks in a single CSV, with clean merchant names and a deduplication key.
Can I automate the CSV export?
Yes. With the SheetLink CLI (MAX tier), use sheetlink sync --output csv in a cron job. For headless/CI use, authenticate with an API key: sheetlink auth --api-key <key>.
What banks are supported?
SheetLink uses Plaid, which supports 10,000+ U.S. financial institutions including Chase, Bank of America, Wells Fargo, Citi, Capital One, and most credit unions.
Get Clean Bank CSVs in Minutes
Install free and sync your first bank in under 5 minutes. Upgrade to MAX when you need CLI automation.