Your Bank Account, Your API
You automate your deploys, your tests, your dotfiles. Your bank account is the last thing in your life that still makes you export a CSV. Shim.Finance fixes that — your own transactions, balances, and account data, available via a clean API in minutes.
Connect your bank accounts once. Then query your transactions in a for loop, pipe your spending into Notion, set up balance alerts in Slack, or build the personal finance dashboard you've always wanted — exactly the way you want it. No Plaid account, no OAuth setup, no infrastructure.
How It Works
Get access to your financial data in three simple steps.
Sign Up
Create your account.
Link
Connect your bank accounts securely through Plaid.
Use
Access your data via API, direct download, or integrate with our SDK.
What You Can Build in an Afternoon
Three real things developers ship the day they get an API key. All written against the actual SDK.
Daily Spending Digest
A Slack bot that posts yesterday's total spending every morning. Run it as a cron job.
const { data } = await transactionsList({
query: { startDate: '2026-04-29', endDate: '2026-04-29' }
})
const total = data.data.reduce((s, t) => s + t.amount, 0)
await slack.send(`Yesterday: $${total.toFixed(2)}`) Spending Dashboard
A personal dashboard that shows your monthly spending by category — built exactly how you want it, not how an app vendor decided.
const { data } = await transactionsList({
query: { startDate: '2026-04-01' }
})
const byCategory = Object.groupBy(
data.data, t => t.category?.primary ?? 'OTHER'
) Notion / Obsidian Sync
Auto-populate a Notion database with every new transaction. Sync hourly via cron — only fetch what changed.
const { data } = await transactionsSync({
query: { cursor: lastCursor }
})
for (const tx of data.added) await notion.pages.create(formatTx(tx))
saveCursor(data.cursor) Built for Developers
Everything you need to make your own financial data programmable — without the plumbing.
Unified API
One consistent interface for thousands of financial institutions. Query Chase the same way you query a credit union — no bank-specific adapter code.
Powered by Plaid
Built on top of Plaid's infrastructure — so you get access to 10,000+ institutions without needing a Plaid developer account, app approval, or OAuth implementation. We handle all of that. You just get the data.
Real-Time Sync
Webhooks push transaction data the moment it happens. No polling, no delays, no stale data.
Your Data, Encrypted to You
Your financial data is encrypted with a key that only you control. It is never stored in plaintext. Nobody at Shim.Finance can read your transactions — only you can.
Type-Safe SDKs
First-class TypeScript support with auto-generated types. Catch errors at compile time, not runtime.
Download Anytime
Export your complete transaction history whenever you want. CSV, JSON—your data belongs to you.
Ready to Try It?
Shim.Finance is in early beta. It's free, it works, and we're actively building. Spots are limited while we scale.
Create Free AccountSimple, Powerful Integration
Get up and running in minutes. Our SDK handles authentication, pagination, and error handling so you can focus on building.
import { client, transactionsList } from '@shim-finance/typescript-sdk' client.setConfig({ headers: { Authorization: `Bearer ${process.env.SHIM_KEY}` } }) // How much did I spend on food this month? const { data } = await transactionsList({ query: { startDate: '2026-04-01' } }) const dining = data.data.filter( (t) => t.category?.primary === 'FOOD_AND_DRINK' ) const total = dining.reduce((sum, t) => sum + t.amount, 0) console.log(`Spent $${total.toFixed(2)} dining out this month`) // → Spent $340.82 dining out this month
Works With Your Stack
Public OpenAPI spec to generate a client in your stack of choice. We provide a TypeScript SDK to get started fast.
Simple Pricing
Free while in beta. No credit card required.
Free while we build
- Up to 3 linked accounts
- 24 months transaction history
- Full API access
- CSV & JSON exports
- Per-user AES-256 encryption
Limited beta spots. Need more accounts? Contact us.
Beta users get founding-member pricing when we launch paid plans.
Frequently Asked Questions
Common questions about security, data, and how Shim.Finance works.
Who sees my banking password?
Does Shim.Finance store my financial data?
Can Shim.Finance move money or make transactions?
Can Shim.Finance employees see my transactions?
How is my data encrypted?
What is Shim.Finance?
What banks and institutions are supported?
What data can I access through the API?
Is there a free tier?
Can I export or download my data?
What happens to my data if I cancel?
Why not just use Plaid directly?
Do I need to be a developer to use Shim.Finance?
Get Started for Free
We're in beta — free while we build, limited spots available. Sign up and start using the API today.
Create Free Account