This project aims to collect all bank outbound transactions that notify from e-mails with IMAP protocol since most of the banks doesn't provide public API to retrieve transactions in real-time manner instead they mostly provide alerts service via e-mails.
Notion is one of the best tools to do expense sheet, so it's used in this project to aggregate all the expenses.
This is optional. To tidy things up, creating 2 folders for incoming jobs as Pending Folder (FOLDER_PENDING
) and processed jobs as Done Folder (FOLDER_DONE
) would be recommended.
For Gmail, App Password must be setup in order to use IMAP Client for reading e-mails.
If database isn't created, create one. Notion API key (NOTION_KEY
) can be generated from this My Integrations Page. Also, The integration must be enabled in the database in order to create children pages.
Notion database id can be retrieved from page url as uuid.
- Setup configs in .env
- Run
python src/main.py
- Document.
- Make it run as server.
- Add more parsers.
- Research credit card provider that can send e-mail notifications without minimum amount filter.