Fio Bank API in Python
Switch branches/tags
Nothing to show
Clone or download
semantic-release Travis CI User
semantic-release and Travis CI User 2.0.0
Latest commit cdfc8be Mar 18, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests chore: Drop Python 2 support Mar 18, 2018
.editorconfig
.gitignore
.travis.yml
LICENSE
MANIFEST.in fix: Include README to the package Mar 18, 2018
README.rst
fiobank.py
setup.cfg
setup.py 2.0.0 Mar 18, 2018

README.rst

fiobank

PyPI version Build Status Test Coverage

Fio Bank API in Python.

Installation

$ pip install fiobank

Usage

First, get your API token. Initialization of the client:

>>> from fiobank import FioBank
>>> client = FioBank(token='...')

Account information:

>>> client.info()
{
  'currency': 'CZK',
  'account_number_full': 'XXXXXXXXXX/2010',
  'balance': 42.00,
  'account_number': 'XXXXXXXXXX',
  'bank_code': '2010'
}

Listing transactions within a time period:

>>> gen = client.period('2013-01-20', '2013-03-20')
>>> list(gen)[0]
{
  'comment': 'N\xe1kup: IKEA CR, BRNO, CZ, dne 17.1.2013, \u010d\xe1stka  2769.00 CZK',
  'recipient_message': 'N\xe1kup: IKEA CR, BRNO, CZ, dne 17.1.2013, \u010d\xe1stka  2769.00 CZK',
  'user_identifiaction': 'N\xe1kup: IKEA CR, BRNO, CZ, dne 17.1.2013, \u010d\xe1stka  2769.00 CZK',
  'currency': 'CZK',
  'amount': -2769.0,
  'instruction_id': 'XXXXXXXXXX',
  'executor': 'Vilém Fusek',
  'date': datetime.date(2013, 1, 20),
  'type': 'Platba kartou',
  'transaction_id': 'XXXXXXXXXX'
}

Listing transactions from a single account statement:

>>> client.statement(2013, 1)  # 1 is January only by coincidence - arguments mean 'first statement of 2013'

Listing latest transactions:

>>> client.last()  # return transactions added from last listing
>>> client.last(from_id='...')  # sets cursor to given transaction_id and returns following transactions
>>> client.last(from_date='2013-03-01')  # sets cursor to given date and returns following transactions

Conflict Error

Fio API documentation (Section 8.2) states that a single token should be used only once per 30s. Otherwise a HTTP 409 Conflict will be returned and fiobank.ThrottlingError will be raised.

Contributing

$ pip install -e .[tests]
$ pytest

Changelog

See GitHub Releases.

License: ISC

© 2013 Honza Javorek mail@honzajavorek.cz

This work is licensed under ISC license.