Skip to content

kircher-sw/expenses-report

Repository files navigation

expenses-report

Keeps track of your personal expenses.

  • visualizes your expenses by self defined categories
  • automatically categorizes transactions imported form CSV files
  • outputs an interactive html report

Table of Contents

  1. Requirements
  2. Example
  3. Usage

Requirements

  • Python 3 (3.6 or later)
  • install dependent packages with
    pip install -r requirements.txt
    

Example

Interactive demo report: sample/sample-report.html

Monthly expenses

Categories by month

Annual expenses

Categories by year Pie chart

Accumulated expenses

Categories cumulated

All expenses

All expenses

Usage

  1. Clone repository
  2. Adapt the file expenses_report/config.py
    • define the path to the folder which contains your CSV files (either absolute or relative to the project directory)
      CSV_FILES_PATH = 'sample'
    • specify column names of the CSV files in the import-mapping dictionary
      import_mapping = {
        DATE_COL: ['Date', 'Valuta'],
        ...
      }
    • define categories of interest and add keywords as they occur in your transactions
      categories = {
        ...
        'Fixed costs': {
          'Dwelling': ['Rent'],
          'Insurances': ['Insurance', 'Allianz', 'HUK']
        },
        ...
      }
  3. execute run.py
    • the script outputs a list of all uncategorized transactions on the command line for further refinement of the keywords