Registry / finance / fints
library5.0.0pypypi✓ verified 88d ago

Pure-python implementation of FinTS 3.0 (formerly HBCI) for online banking in Germany. Current version 5.0.0 requires Python >=3.9. Release cadence is irregular, with major updates every few years.

pip install fints
INSTALL
IMPORT
SIG · FINTS
F
fints
financepythonv5.0.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

FinTS3PinTanClient
✓ from fints.client import FinTS3PinTanClient
✗ from fints.client import FinTSClient
FinTSClient no longer exists; use FinTS3PinTanClient.
FinTS3Segment
✓ from fints.segments import FinTS3Segment
✗ from fints.segments import Segment
Segment is a base class; use FinTS3Segment or other specific segment types.

Initialize FinTS client and list accounts.

import os from fints.client import FinTS3PinTanClient BLZ = os.environ.get('BLZ', '12345678') USERNAME = os.environ.get('FINTS_USERNAME', 'test') PIN = os.environ.get('FINTS_PIN', '1234') ENDPOINT = os.environ.get('FINTS_ENDPOINT', 'https://banking.test/fints') client = FinTS3PinTanClient(BLZ, USERNAME, PIN, ENDPOINT) accounts = client.get_accounts() for account in accounts: print(account.iban)
Debug
Known issues
breakingIn v4 -> v5, the package now requires Python >=3.9 and the client class was renamed from FinTSClient to FinTS3PinTanClient. Old code will break.
fix
Update imports: from fints.client import FinTS3PinTanClient.
affects: <5.0.0
deprecatedThe old HBCI (non-Pin/TAN) protocol support is being phased out. FinTS3PinTanClient should be used for all new integrations.
fix
Switch to FinTS3PinTanClient if you were using any other client class.
affects: >=5.0.0
gotchaBank endpoints often require a specific product ID (user-agent). The default may be blocked.
fix
Instantiate client with a custom product ID: FinTS3PinTanClient(..., product_id='MyApp/1.0').
affects: all
gotchaThe client does not automatically handle TAN challenges for some banks. You may need to implement a TAN handler.
fix
Pass a TAN handler (e.g., a callback) during client creation: FinTS3PinTanClient(..., tan_mechanism='...').
affects: all
Errors
Common errors & fixes
fints.client not found
Old import path or outdated version of fints.
fix
Upgrade: pip install --upgrade fints==5.0.0 and use from fints.client import FinTS3PinTanClient.
ModuleNotFoundError: No module named 'fints'
Package not installed.
fix
Run: pip install fints
ValueError: Unknown bank with BLZ ...
Bank not in internal database or wrong BLZ.
fix
Provide the endpoint URL explicitly when creating the client.
Upgrade
Version history
5.0.0latest on PyPI · released Jan 6, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
37 hits · last 30 days
node
36
Resources
fints — pip install fints · libregistry