Application to read account statement files from different peer to peer lending sites, e.g. Mintos.com and produce a Portfolio Performance readable csv file. Input format needs to be csv!
Python 3 (implemented with python 3.6.4)
The configuration for this application is stored in yaml files. The module used for loading yaml files is ruamel.yaml. Install via:
pip install ruamel.yaml
parse-account-statements.py --help
usage: parse-account-statements.py [-h] [--type TYPE] [--debug] infile
positional arguments:
infile CSV file containing the downloaded data from the P2P site
optional arguments:
-h, --help show this help message and exit
--type TYPE Specifies the p2p lending operator
--debug enables debug level logging if set
parse-account-statements.py --type mintos src/test/testdata/mintos.csv
- mintos - Supports current account-statement.csv file format
- estateguru - Supports current German layout account statement csv file format
- robocash - Supports current account statement format (as of 2018-05-01) exported to csv
- swaper - Supports current account statement format (as of 2018-05-01) exported to csv
- bondora - Supports current account statement format (as of 2019-10-12); exported to csv
- bondora go & grow - Supports current account statement format (as of 2019-10-12); exported to csv
Configuration for this script is stored in yaml files located under the config subdirectory. The content directly reflects the format of the source account statement files.
Example:
---
type_regex: !!map
deposit: "^Incoming client.*"
withdraw: "^Withdraw application.*"
interest: "(^Delayed interest.*)|(^Late payment.*)|(^Interest income.*)|(^Cashback.*)"
csv_fieldnames:
booking_date: 'Date'
booking_date_format: '%Y-%m-%d %H:%M:%S'
booking_details: 'Details'
booking_id: 'Transaction ID'
booking_type: 'Details'
booking_value: 'Turnover'
CSV file format compatible with Performance Portfolio (German language setting)
I'm not a lawyer. This project is in no way affiliated with Portfolio Performance, but intended to be used with it.