Skip to main content

Transactions Chile

A command-line tool for converting bank statements from Excel to CSV format with support for several Chilean banks.

Features

  • Convert bank statements from Excel (.xlsx, .xls) files to CSV format
  • Support for multiple banks:
    • Santander (Checking Account)
    • Itau (Checking Account, Credit Card - Billed and Unbilled)
    • Banco de Chile (Checking Account, Credit Card - Billed and Unbilled)
  • Account type selection:
    • Checking accounts
    • Credit card billed transactions
    • Credit card unbilled (pending) transactions
  • Standardized output format with common fields across all banks
  • Validation of transaction data
  • Customizable delimiter and encoding
  • Rich command-line interface with progress indicators
  • Force overwrite option

Installation

From PyPI

pip install transactions-chile

From Source

Clone the repository and install in development mode:

git clone https://github.com/yourusername/transactions-chile.git
cd transactions-chile
pip install -e .

Usage

Once installed, you can use the tool in the following ways:

Convert bank statements

Convert a bank statement from Excel to CSV:

transactions-chile convert path/to/your/bank-statement.xlsx --bank bchile

List supported banks

View all supported banks and their supported account types:

transactions-chile supported-banks

Command Line Options

Usage: transactions-chile convert [OPTIONS] INPUT_FILE

  Convert an Excel file to CSV format using specific bank transaction processors.

  INPUT_FILE: Path to the Excel file to convert.

Options:
  -o, --output-file PATH        Output CSV file path. If not specified, will use
                                the input filename with .csv extension.
  -s, --sheet-name TEXT         Sheet name or index (0-based) to convert.
                                Defaults to first sheet.
  -d, --delimiter TEXT          Delimiter to use in the CSV file. Defaults to
                                comma.
  -e, --encoding TEXT           Encoding for the output CSV file. Defaults to
                                utf-8.
  -f, --force                   Overwrite output file if it already exists.
  -b, --bank [santander|itau|bchile]
                                Bank type (required)
  -a, --account-type [checking|credit-billed|credit-unbilled]
                                Account type (checking for 'Cuenta Corriente',
                                credit-billed for 'Tarjeta de Crédito Facturada',
                                credit-unbilled for 'Tarjeta de Crédito No Facturada').
                                If not specified, defaults to the most common type for the selected bank.
  --validate / --no-validate    Validate output against schema before saving
                                (default: validate)
  --help                        Show this message and exit.

Examples

Convert a Santander bank statement (only supports checking account):

transactions-chile convert santander-checking.xlsx --bank santander

Convert a Banco de Chile credit card billed statement (default account type):

transactions-chile convert bchile-credit-billed.xls --bank bchile

Convert a Banco de Chile checking account statement:

transactions-chile convert bchile-checking.xls --bank bchile --account-type checking

Convert a Banco de Chile unbilled credit card statement:

transactions-chile convert bchile-credit-unbilled.xls --bank bchile --account-type credit-unbilled

Convert an Itau credit card statement with a specific output file:

transactions-chile convert itau-credit-billed.xls --bank itau --output-file itau-credit-processed.csv

Convert an Itau statement with a specific sheet:

transactions-chile convert itau-checking.xlsx --bank itau --sheet-name "Movimientos" --account-type checking

Use a different delimiter:

transactions-chile convert santander-checking.xlsx --bank santander --delimiter ";" --output-file santander_semicolon.csv

Force overwrite of existing file:

transactions-chile convert itau-credit-billed.xlsx --bank itau -f

Skip validation:

transactions-chile convert bchile-checking.xlsx --bank bchile --no-validate

Output Format

The converted CSV files will have the following standardized columns:

  • date: Transaction date
  • payee: Name of the transaction payee
  • description: Transaction description
  • amount: Transaction amount (positive for credits, negative for debits)
  • city: Location or branch where transaction occurred (when available)
  • balance: Account balance after transaction (when available, 0 for credit cards)

Development

Setting up development environment

  1. Clone the repository
  2. Create and activate a virtual environment
  3. Install development dependencies:
    pip install -e ".[dev]"
    

Running tests

pytest

Building the package

python -m build

License

MIT

Metadata

Release files for transactions-chile 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for transactions-chile 0.4.0
File Size Uploaded
transactions_chile-0.4.0.tar.gz 68.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for transactions-chile 0.4.0
File Interpreter ABI Platform
transactions_chile-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 78.9 kB

Release files / transactions_chile-0.4.0.tar.gz

Download URL transactions_chile-0.4.0.tar.gz
Size 68.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b65710adfe336fb6f71b4a0c0d8024b7118faf3898ee1c557b170a57dbfcd572
BLAKE2b-256 checksum
How to use checksums
ac6427ed3f62ded57f904575346d6e499ea9a773fdc30a39da57411a8ca312a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 27, 2025.

Transparency log

Release files / transactions_chile-0.4.0-py3-none-any.whl

Download URL transactions_chile-0.4.0-py3-none-any.whl
Size 10.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
676d235a138f704a6ad9f7c037867126978ce2599d97554e96a65df1e1e9f93e
BLAKE2b-256 checksum
How to use checksums
65c9c03620af5e93289f3198b99211f210c04d34ef655db345740e41884336fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 27, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page