Configure live sync credentials
Live sync is optional. Finance Guru works with broker CSV exports alone. Configure these credentials only when you want the read-only SnapTrade brokerage sync or the SimpleFIN bank and card sync.
Keep credentials in a local .env file or process environment. .env and the local SQLite database are gitignored. That is a safeguard, not permission to print or commit their contents.
Prepare the environment file
Section titled “Prepare the environment file”Create the environment file from the checked-in sample if you have not already.
cp .env.example .envAn instance created by the initializer already has a .env scaffolded from the same sample. Do not leave placeholder text in numeric settings you do not use, because some configuration loaders parse values at import time.
SnapTrade
Section titled “SnapTrade”The read-only SnapTrade integration requires these private values before it can contact the provider.
| Variable | Purpose |
|---|---|
SNAPTRADE_CLIENT_ID |
SnapTrade application client identifier. |
SNAPTRADE_CONSUMER_KEY |
SnapTrade consumer key. |
SNAPTRADE_USER_ID |
Linked user identifier. |
SNAPTRADE_USER_SECRET |
Linked user secret. |
Account roles and enabled-state are stored separately in a local account-routing file after account discovery. In an instance this file lives at snaptrade-accounts.yaml under the instance root. Do not commit it when it contains personal routing information.
SimpleFIN
Section titled “SimpleFIN”SimpleFIN credentials are consumed by the Bun workspace under apps/simplefin-sync/.
| Variable | Purpose |
|---|---|
SIMPLEFIN_SETUP_TOKEN |
One-time token used by the claim command. |
SIMPLEFIN_ACCESS_URL |
Long-lived access URL used for account reads. |
SIMPLEFIN_TRIGGER_INTERVAL_MS |
Optional poll interval for the local deposit-trigger process. |
Before claiming a setup token, initialize the workspace environment file, add the token there, and run the workspace claim command.
cd apps/simplefin-synccp .env.example .env# Set SIMPLEFIN_SETUP_TOKEN in apps/simplefin-sync/.env before continuing.bun run claimThe claim command refuses to overwrite an existing access URL. Treat both the setup token and the access URL as credentials and redact them from error reports.
Verify
Section titled “Verify”Run the all-source refresh and confirm it reaches your providers.
uv run python -m src.integrations.refresh_all --showSee Run the data syncs for the individual sync commands, and Troubleshoot common failures when a refresh fails.
This page is built from docs/setup/api-keys.md and .env.example in the repository.