Welcome user. Please right-click and select Download Blocks as PNG to download high-quality images of your blocks. Your blocks are blurry and not readable.
My initial approach wasn't totally wrong but resulted in nesting and behavior with lots and lots of ((()))
I could have just got rid of storing the transactions history, as the balance bit was working just fine, but I don't like cutting features just because I met a problem.
Yeah, I found out what the issue was and fixed it.
Regarding the buttons. I could have used 2 procedures - for adding expense and adding income - but I wanted to use a single procedure; thus, I needed an if-else block and a condition.