SheetLink

Start free with the Chrome extension, or automate with the CLI.

MAX — $10.99/mo

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
Get CLI Access

SheetLink exports 18 columns per transaction — consistent across every bank you connect.

transaction_idUnique ID for deduplication
dateTransaction date (YYYY-MM-DD)
nameRaw transaction name from bank
merchant_nameCleaned merchant name (Plaid)
amountAmount (positive = debit, negative = credit)
iso_currency_codeCurrency (e.g., USD)
categoryPlaid top-level category
subcategoryPlaid subcategory
account_idUnique account identifier
account_nameAccount display name
account_typechecking / savings / credit
institution_nameBank name (e.g., Chase)
pendingtrue / false
payment_channelin store / online / other
location_cityCity of merchant (if available)
location_regionState/region
location_countryCountry code
logo_urlMerchant logo URL (Plaid enriched)

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

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.

Send your bookkeeper a monthly CSV instead of multiple bank statements. One file, all accounts, clean merchant names — saves hours of reconciliation.

Both QuickBooks and Wave support CSV transaction imports. SheetLink's consistent schema and clean merchant names make the import process straightforward.

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.

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.

  • 24 months of history
  • Google Sheets + Excel add-in
  • Unlimited banks
  • Manual sync on demand
Get Pro
  • Everything in Pro
  • CLI direct CSV output
  • Automate with cron
  • Postgres / SQLite / JSON too
Get CLI Access

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.

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.

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.

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.

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>.

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.

Last updated: April 2026