csb43.homebank

Note

license: GNU Lesser General Public License v3.0 (see LICENSE)

Homebank CSV format

class csb43.homebank.Transaction(record: Optional[str] = None)

Hombebank CSV transaction

  • Creating a record:

    >>> from csb43.homebank import Transaction
    >>> t = Transaction()
    >>> t.amount = 12.45
    >>> import datetime
    >>> t.date = datetime.date(year=2013, month=3, day=19)
    >>> print(t)
    19-03-13;;;;;12.45;
    
  • Parsing a record:

    >>> t = Transaction("19-03-13;;;;;12.45;")
    >>> t.amount
    Decimal('12.45')
    >>> t.date
    datetime.date(2013, 3, 19)
    
__init__(record: Optional[str] = None)
Parameters

record (str) – a Homebank csv record

Raises

csb43.utils.Csb43Exception

__str__()
Return type

str representation of this record as a row of a Homebank CSV file

__weakref__

list of weak references to the object (if defined)

property amount

amount of the transaction

property category

transaction category, according to HomeBank

property date: Optional[datetime.date]

date of transaction (datetime.date)

property description: Optional[str]

description of the transaction

property info: Optional[str]

transaction’s info

property mode

mode of transaction

property payee: Optional[str]

payee of the transaction

Converter

csb43.homebank.converter.convertFromCsb(csb: csb43.csb43.csb_file.File)Sequence[csb43.homebank.Transaction]

Convert a CSB43 file into a HomeBank CSV file.

Only first account is converted.

Parameters

csb (csb43.csb43.File) – a CSB43 file

Return type

list of Transaction

>>> # Homebank
>>> from csb43 import csb43
>>> #
>>> csbFile = csb43.File(open("movimientos.csb"), strict=False) 
>>> #
>>> # print to stdout
>>> for line in convertFromCsb(csbFile): 
...    print(line)
...
converter.PAYMODES = {'01': '2', '02': '2', '04': '3', '12': '5'}