Convert financial transactions in CSV format to QIF files.
Project description
csv2qif
Usage
CSV to QIF
usage: csv2qif -a ACCOUNT -t ACCOUNT_TYPE
[-i INPUT_FILE] [-o OUTPUT_DIR] [-f OUTPUT_FORMAT] [-c COL_SPEC]
[-b] [-s]
[--help] [--verbose] [--version]
Convert financial transactions in CSV format to QIF files.
options:
-a ACCOUNT, --account ACCOUNT
The full hierarchical name of the account in GnuCash.
(default: None)
-t ACCOUNT_TYPE, --account-type ACCOUNT_TYPE
One of "Bank", "Cash", "CCard", or "Invst"
(default: None)
-i INPUT_FILE, --input-file INPUT_FILE
Input file in CSV format; define location of required fields using "col-spec"
(default: stdin)
-o OUTPUT_DIR, --output-dir OUTPUT_DIR
Directory to write output
(default: stdout)
-f OUTPUT_FORMAT, --output-format OUTPUT_FORMAT
Format of output, either "qif" or "json"
(default: qif)
-c COL_SPEC, --col-spec COL_SPEC
Specify column of required fields (date, name, amount, check_number)
(default: {"date": 1, "name": 2, "amount": 3, "check_number": 6})
-b, --backup-input Save a copy of input CSV alongside the QIF file, with same filename.
(default: False)
-s, --strip-headers Assume first row of input has headers, and remove it.
(default: True)
--verbose Debug-level logging
-v, --version Show program's version number and exit
-h, --help Show this help message and exit
MIT License: ©2023 Edward Q. Bridges
Development
- It is recommended to use
pyenv
to ensure correct python version is in use. Cf.:.python-version
- Set up virtualenv:
python -m venv venv
- Activate virtualenv:
source ./venv/bin/activate
- Update pip:
pip install --upgrade pip
Release process
- Format code using:
black .
- Commit/push all final code.
- Increment version in
csv2qif/__init__.py
and commit/push. - Tag release in format
x.y.z
, using same version string as incsv2qif/__init__.py
. Push tag to remote. - Publish a new release version; doing so will trigger an upload to PyPI.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
csv2qif-0.6.0.tar.gz
(6.7 kB
view details)
Built Distribution
File details
Details for the file csv2qif-0.6.0.tar.gz
.
File metadata
- Download URL: csv2qif-0.6.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7657f279aa616e18e2054e4cbc95ba9493d40f9f5f653565bc84d62e48196ad |
|
MD5 | 81c2e49126d4655d512e0577630b4383 |
|
BLAKE2b-256 | a95d9c7382ff017bd0f3a6531638215478500612cadfbe59a0fa00dd90688bc7 |
File details
Details for the file csv2qif-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: csv2qif-0.6.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3affe931101e167c6af15559d8a1abb17b489d80d11e6ff818555f3cee479117 |
|
MD5 | 93c8f9ce483f05f840d603ea4b6e401f |
|
BLAKE2b-256 | 30f1f4091708b33699d143cb3dda41d125a1c5d287ff46001eee61a6558f96ba |