This project streamlines the synchronization of financial transactions from personal bank accounts and credit cards. It uses Plaid to connect and sync account transactions from your financial institutions to your database of choice.
- Sign up for a Plaid Developer Account and apply for the Plaid Production Key.
- Download Plaid's Quickstart App and use it to generate access tokens for each financial institution you would like to link.
- Set up a new database to store your transactions. (I recommend using Planetscale to spin a new one up for free)
- Duplicate the .sample.env file and rename it to .env
- Follow the instructions to fill out the .env file
After setting up the .env file, sync your database with the Prisma schema.
npx prisma db push
Next, initialize the database with your Plaid institutions.
yarn ini
Now you can sync new transactions to your database whenever you want.
yarn sync
Coinbase was not supported by Plaid when I created this project. I later integrated Coinbase support (USA only) for personal use and optionally included it into this project.
You can generate a Coinbase API key by following the instructions here.
Afterwards, simply add the developer key and secret in your .env file.