Python Fintech Dokumentation
Installation
The PyFintech package is available on PyPI (Python Package Index). If you need a solution for other programming languages, have a look at the XML-RPC server.
Supported Python versions:
- Python 2.7.9+ (up to version 6.*)
- Python 3.4 (up to version 7.4.*)
- Python 3.5 (up to version 7.6.*)
- Python 3.6 (up to version 7.8.*)
- Python 3.7 - 3.14
The Fintech library depends on the following packages:
- cryptography
- lxml
- fpdf2
- certifi
- defusedxml
- websocket-client (optional)
- pillow (optional)
Pillow is only required if you want to scan SEPA mandates for printed barcodes which hold the mandate reference number.
Install it using pip:
pip install fintech [websocket-client] [pillow]
Package registration
import fintech
# Register an unlicensed version
fintech.register()
# Register a licensed version
fintech.register('LICENSEE_NAME', 'KEYCODE', ['EBICS_USER_ID_1', 'EBICS_USER_ID_2', ...])
# Register a licensed version based on subscription
fintech.register('LICENSEE_NAME', 'KEYCODE')
from fintech import ...The Python Fintech package
Index- fintech.register(name=None, keycode=None, users=None)
Registers the Fintech package.
It is required to call this function once before any submodule can be imported. Without a valid license the functionality is restricted.
When calling this function without arguments, the license information will be read from the environment variables FINTECH_LICENSE_NAME, FINTECH_LICENSE_KEYCODE and FINTECH_LICENSE_USERS or alternatively from a license file referenced by FINTECH_LICENSE_PATH or a file available at one of the following locations (new since v7.9):
Unix:
- $XDG_CONFIG_HOME/pyfintech/license.txt
- ~/.config/pyfintech/license.txt
- $XDG_CONFIG_DIRS/pyfintech/license.txt
- /etc/xdg/pyfintech/license.txt
MacOS:
- ~/Library/Application Support/pyfintech/license.txt
- /Library/Application Support/pyfintech/license.txt
Windows:
- %LOCALAPPDATA%/pyfintech/license.txt
- %ALLUSERSPROFILE%/pyfintech/license.txt
- Parameters
- name – The name of the licensee.
- keycode – The keycode of the licensed version.
- users – The licensed EBICS user ids (Teilnehmer-IDs). It must be a string or a list of user ids. Not applicable if a license is based on subscription.
- class fintech.LicenseManager(password)
The LicenseManager class
The LicenseManager is used to dynamically add or remove EBICS users to or from the list of licensed users. Please note that the usage is not enabled by default. It is activated upon request only. Users that are licensed this way are verified remotely on each restricted EBICS request. The transfered data is limited to the information which is required to uniquely identify the user.
Initializes a LicenseManager instance.
- Parameters
- password – The assigned API password.
- add_ebics_user(hostid, partnerid, userid)
Adds a new EBICS user to the license.
- Parameters
- hostid – The HostID of the bank.
- partnerid – The PartnerID (Kunden-ID).
- userid – The UserID (Teilnehmer-ID).
- Returns
- True if created, False if already existent.
- change_password(password)
Changes the password of the LicenseManager API.
- Parameters
- password – The new password.