Home
Softono
i

ivallesp

Professional software vendor delivering innovative solutions on the Softono platform. Specialized in both open-source and proprietary software development.

Total Products
2

Software by ivallesp

YNAB-reporter
Open Source

YNAB-reporter

# YNAB reporter: a simple YNAB monthly reporting system This repository implements a small system for generating reports summarising You Need A Budged monthly movements and historical positions. The data is obtained using the YNAB API and the reports are generated using LaTeX. ## Changelog __July 4th, 2021__ - Feat: add example Dockerfile - Feat: add YoY column - Several minor bugfixes __December 3rd, 2020__ - Feat: add multi-budget functionality, with possibility of different currencies - Feat: add possibility to exclude categories of the calculations ## Getting started Follow the next steps to have the project running in your system: 1. Install [pyenv](https://github.com/pyenv/pyenv) and [poetry](https://python-poetry.org/) in your system following the linked official guides. 2. Open a terminal, clone this repository and `cd` to the cloned folder. 3. Run `pyenv install $(cat .python-version)` in your terminal for installing the required python. version. 4. Configure poetry with `poetry config virtualenvs.in-project true`. 5. Create the virtual environment with `poetry install`. 6. Make sure you have LaTeX installed in your system (or install it with `sudo apt-get install texlive-full`) with the needed dependencies. 7. Create the `config/ynab.toml` file following the example in the same folder and fill-in your budget name and API key. 8. Do the same with the `config/email.toml` file. The example contained in this repository has the settings for gmail pre-filled in. 9. Activate the environment with `source .venv/bin/activate`. 10. Run `python main.py -y <report-year> -m <report-month>` to generate a report for the specified date. It might be useful to set up a crontab to run the system every month. In my case, I run it the 5th day of every month, for calculating the report corresponding with the previous month. The crontab entry is shown below as an example. ``` 0 9 5 * * cd ~/projects/ynab-reporter && .venv/bin/python main.py -m `date +\%-m --date="1 month ago"` -y `date +\%Y --date="1 month ago"` -e [email protected] [email protected] ``` ## Example The following image shows how the report looks like. Notice that all the data shown in it has been randomly generated. ![](assets/report-example.png) ## Contribution Pull requests and issues will be tackled upon availability. ## License This repository is licensed under MIT license. More info in the LICENSE file. Copyright (c) 2020 Iván Vallés Pérez

Analytics & BI Personal Finance
41 Github Stars
N26-to-YNAB
Open Source

N26-to-YNAB

# N26 to YNAB automation bridge This is a minimalistic implementation of a process that bulks the transactions of a given N26 account to You Need A Budget; all through APIs. The current implementation handles duplication through the YNAB internal functionality. Its way of working consists of calling the main module with an argument specifying an account name (previously configured). After that call, the system will retrieved all the N26 transactions, and it will push them to the YNAB budget and account specified in the configuration files. Please keep in mind that this is a personal project meant to satisfy a personal necessity. It may not totally apply to your use-case. Feel free to fork the project or suggest any extra functionality. ## Getting started Follow the next steps to have the project running in your system: 1. Install [pyenv](https://github.com/pyenv/pyenv) and [poetry](https://python-poetry.org/) in your system following the linked official guides. 2. Open a terminal, clone this repository and `cd` to the cloned folder. 3. Run `pyenv install 3.6.1` in your terminal for installing the required python. version 4. Configure poetry with `poetry config virtualenvs.in-project true` 5. Create the virtual environment with `poetry install` 6. Create the `config/ynab.toml` file following the example in the same folder 7. Create the `config/n26.toml` file following the example in the same folder. Make sure you establish the links from each account configured here to the desired YNAB account name 8. Activate the environment with `source .venv/bin/activate` 9. Run `python main.py -a <n26-account-name>` to send the transactions from the n26 account specified to the YNAB account ## Contribution Pull requests and issues will be tackled upon availability. ## License This repository is licensed under MIT license. More info in the LICENSE file. Copyright (c) 2020 Iván Vallés Pérez

RPA Personal Finance
19 Github Stars