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:

  1. Local Credential File (config.json): You must create a config.json file containing your ELBA user ID and 5-digit PIN. This file is stored locally with strict 0600 permissions (owner read/write only). The PIN alone cannot access your account — it only initiates the login flow.

  2. 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.

  3. 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 0600 permissions.

  4. Always Logout: Run logout after 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
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

Automate George account, portfolio, transaction, and payment-file workflows with Playwright.

132 installs1 stars

Export Revolut balances, wallet transactions, and investment data as JSON through Playwright.

66 installs2 stars

Control browser sessions from the CLI using compact snapshots, stable refs, and post-action diffs.

116 installs1 stars

Automate browser interactions, extract page data, and replay saved browser tasks from a CLI.

50 installs4 stars

Automate authorized browser QA with Camoufox, DOM actions, and optional OS-level input in Docker.

136 installs2 stars