Name | bankinter-converter JSON |
Version |
0.1.0
JSON |
| download |
home_page | None |
Summary | A CLI tool to convert Bankinter bank statements (checking accounts and credit cards) from Excel to CSV |
upload_time | 2025-08-13 10:33:55 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | MIT |
keywords |
banking
bankinter
converter
csv
excel
finance
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Bankinter Converter
A CLI tool to convert Bankinter bank statements (checking accounts and credit cards) from Excel to CSV format.
## Features
- **Checking Account Conversion**: Convert checking account statements by removing specified rows and selecting columns
- **Credit Card Conversion**: Convert credit card statements with automatic column detection and clean output
- **Language Agnostic**: Works with statements in different languages
- **Flexible Column Selection**: Automatically detects transaction structure
## Installation
### Using uvx (Recommended)
```bash
# Install and run directly
uvx bankinter-converter --help
# Or install globally
uvx install bankinter-converter
```
### Using uv
```bash
# Install globally as a tool
uv tool install bankinter-converter
# Or install in development mode
uv sync
```
### Alternative: Using pip
```bash
pip install bankinter-converter
```
## Usage
### Checking Account Conversion
```bash
bankinter-converter checking input.xls output.csv
```
**Options:**
- `--skip-rows N`: Number of rows to skip at the beginning (default: 3)
- `--columns A-E`: Columns to include (default: A-E)
- `--sheet SHEET`: Sheet name or index (default: 0)
- `--verbose`: Show detailed processing information
**Example:**
```bash
bankinter-converter checking statement.xls transactions.csv --skip-rows 5 --columns A-D
```
### Credit Card Conversion
```bash
bankinter-converter credit input.xls output.csv
```
**Options:**
- `--verbose`: Show detailed processing information
**Example:**
```bash
bankinter-converter credit credit_statement.xls credit_transactions.csv
```
## Credit Card Converter Logic
The credit card converter automatically:
1. **Removes metadata**: Card number, available balance, arranged balance, and blank lines
2. **Detects transaction structure**:
- If Column D contains transaction types → Output: Date, Description, Type, Amount (A-D)
- If Column D is empty → Output: Date, Description, Amount (A-C)
3. **Removes totals**: Total credit/debit sections and pending transactions
4. **Outputs clean CSV**: Only transaction data with proper headers
The detection is language-agnostic and relies on data content rather than header names.
## Development
### Setup with uv (Recommended)
```bash
# Clone the repository
git clone https://github.com/barbarity/bankinter-converter.git
cd bankinter-converter
# Create virtual environment and install dependencies (uses Python 3.13)
uv sync --extra dev
```
### Alternative Setup with pip
```bash
# Clone the repository
git clone https://github.com/barbarity/bankinter-converter.git
cd bankinter-converter
# Create virtual environment (Python 3.8+ required)
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -e ".[dev]"
```
### Running Tests
```bash
# With uv
uv run pytest
# With pip (after activating virtual environment)
pytest
```
### Code Quality
```bash
# Check code with ruff
uv run ruff check .
# Format code with ruff
uv run ruff format .
# Fix issues automatically
uv run ruff check --fix .
```
### Testing the Tool
```bash
# With uv
uv run bankinter-converter --help
# With pip (after activating virtual environment)
bankinter-converter --help
```
## Project Structure
```
bankinter-converter/
├── src/
│ └── bankinter_converter/
│ ├── __init__.py
│ ├── cli.py # Command-line interface
│ ├── checking_account.py # Checking account conversion logic
│ └── credit_card.py # Credit card conversion logic
├── tests/
│ ├── test_checking_account.py
│ └── test_credit_card.py
├── pyproject.toml # Project configuration
├── README.md # This file
├── LICENSE # MIT License
└── .gitignore
```
## License
This project is licensed under the MIT License.
Raw data
{
"_id": null,
"home_page": null,
"name": "bankinter-converter",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "banking, bankinter, converter, csv, excel, finance",
"author": null,
"author_email": "Joan Perez Guerrero <joanperezguerrero@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/dc/d6/a2e822ab7d741957b55b7e12fa8c1f2d82c0e56c35db8c65eaa3bd07bdfb/bankinter_converter-0.1.0.tar.gz",
"platform": null,
"description": "# Bankinter Converter\n\nA CLI tool to convert Bankinter bank statements (checking accounts and credit cards) from Excel to CSV format.\n\n## Features\n\n- **Checking Account Conversion**: Convert checking account statements by removing specified rows and selecting columns\n- **Credit Card Conversion**: Convert credit card statements with automatic column detection and clean output\n- **Language Agnostic**: Works with statements in different languages\n- **Flexible Column Selection**: Automatically detects transaction structure\n\n## Installation\n\n### Using uvx (Recommended)\n\n```bash\n# Install and run directly\nuvx bankinter-converter --help\n\n# Or install globally\nuvx install bankinter-converter\n```\n\n### Using uv\n\n```bash\n# Install globally as a tool\nuv tool install bankinter-converter\n\n# Or install in development mode\nuv sync\n```\n\n### Alternative: Using pip\n\n```bash\npip install bankinter-converter\n```\n\n## Usage\n\n### Checking Account Conversion\n\n```bash\nbankinter-converter checking input.xls output.csv\n```\n\n**Options:**\n- `--skip-rows N`: Number of rows to skip at the beginning (default: 3)\n- `--columns A-E`: Columns to include (default: A-E)\n- `--sheet SHEET`: Sheet name or index (default: 0)\n- `--verbose`: Show detailed processing information\n\n**Example:**\n```bash\nbankinter-converter checking statement.xls transactions.csv --skip-rows 5 --columns A-D\n```\n\n### Credit Card Conversion\n\n```bash\nbankinter-converter credit input.xls output.csv\n```\n\n**Options:**\n- `--verbose`: Show detailed processing information\n\n**Example:**\n```bash\nbankinter-converter credit credit_statement.xls credit_transactions.csv\n```\n\n## Credit Card Converter Logic\n\nThe credit card converter automatically:\n\n1. **Removes metadata**: Card number, available balance, arranged balance, and blank lines\n2. **Detects transaction structure**: \n - If Column D contains transaction types \u2192 Output: Date, Description, Type, Amount (A-D)\n - If Column D is empty \u2192 Output: Date, Description, Amount (A-C)\n3. **Removes totals**: Total credit/debit sections and pending transactions\n4. **Outputs clean CSV**: Only transaction data with proper headers\n\nThe detection is language-agnostic and relies on data content rather than header names.\n\n## Development\n\n### Setup with uv (Recommended)\n\n```bash\n# Clone the repository\ngit clone https://github.com/barbarity/bankinter-converter.git\ncd bankinter-converter\n\n# Create virtual environment and install dependencies (uses Python 3.13)\nuv sync --extra dev\n```\n\n### Alternative Setup with pip\n\n```bash\n# Clone the repository\ngit clone https://github.com/barbarity/bankinter-converter.git\ncd bankinter-converter\n\n# Create virtual environment (Python 3.8+ required)\npython -m venv .venv\nsource .venv/bin/activate # On Windows: .venv\\Scripts\\activate\n\n# Install dependencies\npip install -e \".[dev]\"\n```\n\n### Running Tests\n\n```bash\n# With uv\nuv run pytest\n\n# With pip (after activating virtual environment)\npytest\n```\n\n### Code Quality\n\n```bash\n# Check code with ruff\nuv run ruff check .\n\n# Format code with ruff\nuv run ruff format .\n\n# Fix issues automatically\nuv run ruff check --fix .\n```\n\n### Testing the Tool\n\n```bash\n# With uv\nuv run bankinter-converter --help\n\n# With pip (after activating virtual environment)\nbankinter-converter --help\n```\n\n## Project Structure\n\n```\nbankinter-converter/\n\u251c\u2500\u2500 src/\n\u2502 \u2514\u2500\u2500 bankinter_converter/\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 cli.py # Command-line interface\n\u2502 \u251c\u2500\u2500 checking_account.py # Checking account conversion logic\n\u2502 \u2514\u2500\u2500 credit_card.py # Credit card conversion logic\n\u251c\u2500\u2500 tests/\n\u2502 \u251c\u2500\u2500 test_checking_account.py\n\u2502 \u2514\u2500\u2500 test_credit_card.py\n\u251c\u2500\u2500 pyproject.toml # Project configuration\n\u251c\u2500\u2500 README.md # This file\n\u251c\u2500\u2500 LICENSE # MIT License\n\u2514\u2500\u2500 .gitignore\n```\n\n## License\n\nThis project is licensed under the MIT License.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A CLI tool to convert Bankinter bank statements (checking accounts and credit cards) from Excel to CSV",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/barbarity/bankinter-converter",
"Issues": "https://github.com/barbarity/bankinter-converter/issues",
"Repository": "https://github.com/barbarity/bankinter-converter"
},
"split_keywords": [
"banking",
" bankinter",
" converter",
" csv",
" excel",
" finance"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "df60d575886ae7f9861d054532f865cbb45997f11287fa7da919137d8134f87c",
"md5": "ed41b7c6144f57e6c1c71e5d1e2845d7",
"sha256": "22ff670402b229d1b3a1794bc725e23fd0cf851b4119beca891e62e31fb3362d"
},
"downloads": -1,
"filename": "bankinter_converter-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ed41b7c6144f57e6c1c71e5d1e2845d7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 9253,
"upload_time": "2025-08-13T10:33:53",
"upload_time_iso_8601": "2025-08-13T10:33:53.625091Z",
"url": "https://files.pythonhosted.org/packages/df/60/d575886ae7f9861d054532f865cbb45997f11287fa7da919137d8134f87c/bankinter_converter-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "dcd6a2e822ab7d741957b55b7e12fa8c1f2d82c0e56c35db8c65eaa3bd07bdfb",
"md5": "96ca3b132e40ffefc9831ab58d095b37",
"sha256": "4648138d62995100bf33297d4d82a2ae0054895427483434c3c47a6502f386e1"
},
"downloads": -1,
"filename": "bankinter_converter-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "96ca3b132e40ffefc9831ab58d095b37",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 48467,
"upload_time": "2025-08-13T10:33:55",
"upload_time_iso_8601": "2025-08-13T10:33:55.009661Z",
"url": "https://files.pythonhosted.org/packages/dc/d6/a2e822ab7d741957b55b7e12fa8c1f2d82c0e56c35db8c65eaa3bd07bdfb/bankinter_converter-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-13 10:33:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "barbarity",
"github_project": "bankinter-converter",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "bankinter-converter"
}