Automate George account, portfolio, transaction, and payment-file workflows with Playwright.
Browser
raiffeisen-elba
Fetch ELBA balances, transactions, and depot positions as JSON through Playwright automation.
What it does
Fetch current balances, transactions, and securities depot positions from Raiffeisen ELBA in JSON. Playwright handles the banking site, while each login requires manual pushTAN approval. A short-lived Bearer token supports chained account, transaction, and portfolio requests; logout removes the browser profile and cached token.
When to use it
- Exporting account balances as JSON
- Fetching transactions for a date range
- Retrieving securities depot positions
- Chaining banking queries after one pushTAN approval
The skill document
Raiffeisen ELBA Banking Automation
Fetch current account balances, securities depot positions, and transactions for all account types in JSON format for automatic processing. Uses Playwright to automate Raiffeisen ELBA online banking.
⚠️ Security & Data Handling
This skill performs browser automation and requires you to understand its data handling before use:
-
Local Credential File (
config.json): You must create aconfig.jsonfile containing your ELBA user ID and 5-digit PIN. This file is stored locally with strict0600permissions (owner read/write only). The PIN alone cannot access your account — it only initiates the login flow. -
Mandatory 2FA Approval: Every login requires you to manually approve a pushTAN request on your registered mobile device. Without this approval, the skill cannot access any bank data.
-
Ephemeral Bearer Token: After successful 2FA approval, the skill extracts the Bearer token from browser storage (or by observing outgoing API requests within the same browser context). This token enables chaining multiple operations (accounts → transactions → portfolio) without re-authenticating. The token is short-lived (expires within minutes) and is stored in a local cache file with
0600permissions. -
Always Logout: Run
logoutafter completing your operations. This deletes the browser profile and cached token, ensuring no valid session state remains on disk.
If you are not comfortable with browser automation that extracts session tokens, do not use this skill with real credentials.
Setup
See SETUP.md for prerequisites and configuration instructions.
Commands
python3 {baseDir}/scripts/elba.py login # Authenticate (requires pushTAN approval)
python3 {baseDir}/scripts/elba.py accounts # List all accounts
python3 {baseDir}/scripts/elba.py transactions --account --from YYYY-MM-DD --until YYYY-MM-DD
python3 {baseDir}/scripts/elba.py portfolio --depot-id
python3 {baseDir}/scripts/elba.py logout # Clear session and cached token
Recommended Flow
login → accounts → transactions → portfolio → logout
Entry point: {baseDir}/scripts/elba.py
Questions people ask
- What banking data can it retrieve?
- It lists all accounts and returns current account balances, dated transactions for a selected account, and securities positions for a specified depot in JSON format.
- Does login run without user interaction?
- No. Credentials are read from a local config file, but every login requires manual approval of a pushTAN request on the registered mobile device.
- How are credentials and session data handled?
- The config and short-lived token cache use local files with 0600 permissions. The token is extracted from the authenticated browser context, and the documented flow ends with logout to delete the browser profile and cached token.
Related skills
Export Revolut balances, wallet transactions, and investment data as JSON through Playwright.
Build, debug, and migrate Playwright automation with traces, reliable locators, isolation, and MCP control.
Control browser sessions from the CLI using compact snapshots, stable refs, and post-action diffs.
Automate browser interactions, extract page data, and replay saved browser tasks from a CLI.
Automate authorized browser QA with Camoufox, DOM actions, and optional OS-level input in Docker.