Tool to sync SBanken accounts with YNAB.
The application consists of 4 parts:
- Scheduler - enqueues sidekiq jobs at a specified interval
- Worker - consumes sidekiq jobs and performs the heavy lifting
- Web UI - to debug the jobs
- Redis
You need direnv
, docker
and docker-compose
to run the application.
Copy .envrc.example
to .envrc
and setup the environment variables:
Environment variable | Description |
---|---|
SBANKEN_APP_ID |
The client ID from SBanken Developer Portal |
SBANKEN_SECRET |
The secret key/password from SBanken Developer Portal (please note that this key must be rotated every 3 months) |
CUSTOMER_ID |
Your personal number (personnummer) for identification with the SBanken API |
ACCOUNT_ID |
The account ID from SBanken API for the account you'd like to monitor. |
YNAB_ACCESS_TOKEN |
Personal YNAB access token (generated here) |
YNAB_BUDGET_ID |
The budget ID from YNAB |
YNAB_ACCOUNT_ID |
The account ID from YNAB |
KEMAL_PASSWORD |
Password to access the web ui |
- Run
docker-compose up
- Open http://localhost:3000/ to see the queue status
TODO: Write development instructions here
- Fork it (https://github.com/theodorton/ynabsync/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
- theodorton Theodor Tonum - creator, maintainer