-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1febdcc
commit 495e677
Showing
4 changed files
with
114 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,38 @@ | ||
# BEPP | ||
<div align='center'> | ||
<h1>🏦 Bepp 🧮</h1> | ||
<p>A tiny tool to manage, clean, and merge transaction exports from <a href='https://bancaetica.it'>Banca Etica</a> and <a href='https://paypal.com'>PayPal</a>.</p> | ||
<img alt='PyPI, Status – Shields.io badge' src='https://img.shields.io/pypi/status/bepp?style=flat'> | ||
<img alt='PyPI, Version – Shields.io badge' src='https://img.shields.io/pypi/v/bepp?style=flat&logo=pypi'> | ||
<img alt='PyPI, Python Version – Shields.io badge' src='https://img.shields.io/pypi/pyversions/bepp?style=flat&logo=python'> | ||
<img alt='PyPI, License – Shields.io badge' src='https://img.shields.io/pypi/l/bepp?style=flat'> | ||
</div> | ||
|
||
A specific and opinionated helper to merge and clean transactions summaries from [Banca Etica](https://bancaetica.it) and [PayPal](https://paypal.com). | ||
## ℹ️ About | ||
|
||
## Notes | ||
I wrote this script to learn and practice with Python and [pandas](https://pandas.pydata.org/), while also getting something I really needed out of it. | ||
|
||
- bepp assumes that inside the specified directory all Excel files are Banca Etica’s “estratto conto” files, and all CSV files are PayPal’s transaction summaries. | ||
## ⏬ Install | ||
|
||
1. [Install uv](https://docs.astral.sh/uv/getting-started/installation/ 'Installing uv') | ||
2. [Start a virtual environment](https://docs.astral.sh/uv/pip/environments/ 'Python environments – uv documentation'): `uv venv` | ||
2. Install the package: `uv pip install bepp` | ||
- append `-U` to install at the user level | ||
- append `--system` to install system-wide | ||
|
||
## 📊 Usage | ||
|
||
| argument | type | default | description | | ||
|---|---|---|---| | ||
| **`input/path/`** | string | **Required** | Input directory, containing the source CSV and Excel files. | | ||
| `-d`, `--dry_run` | boolean | False | Run the script without changing or printing anything. | | ||
| `-b`, `--backup` | boolean | False | Save one CSV backup per kind containing all the original transactions, with no modification. | | ||
| `-c`, `--convert_to_eur` | boolean | False | Convert transactions in other currencies to €. **Note**: This *heavily* slows down the process! | | ||
| `-m`, `--merge` | boolean | False | Merge the PayPal’s and Banca Etica’s transaction summaries in one unique CSV. | | ||
| `-o`, `--output_dir` | string | `input/path/`<br>+<br>`bepp_export/` | Specify an output directory. | | ||
| `-p`, `--keep_pp_dupes` | boolean | False | Prevent from removing PayPal transactions in Banca Etica’s logs. | | ||
|
||
**Note**: Bepp assumes that inside the specified directory all Excel files are Banca Etica’s “estratto conto” files, and all CSV files are PayPal transaction summaries. | ||
|
||
## ♻️ License | ||
|
||
Everything inside this repository is licensed under the [GNU Affero General Public License, version 3](https://www.gnu.org/licenses/agpl-3.0.txt). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,50 @@ | ||
[project] | ||
name = 'bepp' | ||
version = '0.0.1' | ||
version = '0.0.2' | ||
description = 'An opinionated script to gather, clean up and merge transactions from Banca Etica and PayPal.' | ||
authors = [{ name = 'Tommi', email = 'surfing@tommi.space' }] | ||
readme = 'README.md' | ||
license = { file = 'LICENSE' } | ||
requires-python = '>=3.13' | ||
dependencies = [ | ||
'currencyconverter>=0.17.34', | ||
'pandas>=2.2.3', | ||
'rich-argparse>=1.6.0', | ||
'rich>=13.9.4', | ||
'xlrd>=2.0.1' | ||
'xlrd>=2.0.1', | ||
] | ||
keywords = [ | ||
'Banca Etica', | ||
'PayPal', | ||
'Accounting', | ||
'Personal Finance Management', | ||
'Bank transfers', | ||
'Bank', | ||
] | ||
classifiers = [ | ||
'License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)', | ||
'Development Status :: 4 - Beta', | ||
'Environment :: Console', | ||
'Natural Language :: English', | ||
'Natural Language :: Italian', | ||
'Operating System :: OS Independent', | ||
'Programming Language :: Python :: 3', | ||
'Programming Language :: Python :: 3.13', | ||
'Topic :: Database', | ||
'Topic :: Office/Business :: Financial :: Accounting', | ||
'Topic :: Office/Business :: Financial :: Spreadsheet', | ||
'Topic :: Scientific/Engineering :: Information Analysis', | ||
'Topic :: Utilities', | ||
] | ||
|
||
[project.urls] | ||
Repository = 'https://codeberg.org/tommi/bepp' | ||
Issues = 'https://codeberg.org/tommi/bepp/issues' | ||
Changelog = 'https://codeberg.org/tommi/bepp/commits/branch/main' | ||
|
||
[project.scripts] | ||
bepp = 'bepp:main' | ||
|
||
[build-system] | ||
requires = ['hatchling'] | ||
build-backend = 'hatchling.build' |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters