Open source Chrome extension to export broker transactions as CSV.
Supported brokers:
- ✅ Scalable Capital
- ✅ Trade Republic
Most European brokers don't offer a built-in CSV export — or lock it behind a paid plan. BrokerTap runs entirely in your browser: no backend, no accounts, no data ever leaves your device.
No Chrome Web Store listing yet — load it manually in Developer Mode.
- Download or clone this repo
- Open
chrome://extensions/ - Enable Developer mode (top right toggle)
- Click Load unpacked → select the
brokertapfolder
- Log in and navigate to
https://de.scalable.capital/broker/transactions - Click the BrokerTap icon in the toolbar
- (Optional) Set a date range and CSV language
- Click Esporta CSV
The extension fetches all transactions via Scalable's internal GraphQL API (the same one the web app uses), enriches security transactions with fee and tax details, and downloads a CSV file.
- Log in and navigate to
https://app.traderepublic.com/profile/transactions - Click the BrokerTap icon in the toolbar
- (Optional) Set a date range and CSV format
- Click Esporta CSV
Compatible with Portfolio Performance and Wealthfolio.
English columns:
Date, Time, Type, Security Name, ISIN, Value, Shares, Transaction Currency, Fees, Taxes, Gross Amount, Note
German columns:
Datum, Uhrzeit, Typ, Wertpapiername, ISIN, Wert, Stück, Buchungswährung, Gebühren, Steuern, Bruttobetrag, Notiz
Wealthfolio columns:
date,symbol,quantity,activityType,unitPrice,currency,fee,amount
- No backend — everything runs locally in your browser
- No credentials — the extension reuses your existing logged-in session
- Minimal permissions —
activeTab,scripting,storageonly - Open source — read every line of code before installing
brokertap/
├── manifest.json # Chrome Extension Manifest V3
├── content.js # Entry point — broker detection & dispatch
├── popup.html # Extension popup UI
├── popup.js # Popup logic
├── decimal.min.js # Decimal.js (number formatting)
├── brokers/
│ ├── scalable.js # Scalable Capital module
│ └── traderepublic.js # Trade Republic module
├── core/
│ └── csv.js # Shared CSV utilities
└── icons/
├── icon16.png
├── icon48.png
└── icon128.png
PRs are welcome! If you want to add a new broker:
- Create
brokers/yourbroker.jsand export arun({ lang, startDate, endDate, onProgress, isCancelled })function - Add the matching
host_permissionsinmanifest.json - Register the broker in
content.jsdetectBroker() - Open a PR
- Scalable Capital export logic based on scalable-capital-transactions-exporter by Matthes Voß (MIT)
- Third-party notices: THIRD_PARTY_NOTICES.md
- Built by Alberto Rizzi
MIT