Giter Site home page Giter Site logo

pp-p2p-parser's Introduction

PP-P2P-Parser

Code Status

Build Status Codacy Badge Maintainability Test Coverage

Overview

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!

Requirements

Python 3 (implemented with python 3.6.4)

Dependencies

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

Usage

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

Currently supported formats

  • 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 files

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'

Output

CSV file format compatible with Performance Portfolio (German language setting)

Legal

I'm not a lawyer. This project is in no way affiliated with Portfolio Performance, but intended to be used with it.

pp-p2p-parser's People

Contributors

chrisrbe avatar codacy-badger avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar sh4ke avatar tobi-m avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.