Brokerage data sync (Trading 212, Schwab, Fidelity, IMAP-CSV) → Wealthfolio. Image is published as viktor/wealthfolio-sync per the wealthfolio stack convention.
Find a file
Viktor Barzin e83c5a0a8f ibkr: add Flex provider — Trade/Cash mapping + OpenPositions snapshot
Maps Trades (BUY/SELL) and CashTransactions (DIVIDEND, TAX, INTEREST, FEE,
DEPOSIT, WITHDRAWAL) from an IBKR Flex Activity Query to broker-sync
Activity objects. Adds canonical_symbol helper (LSE → .L suffix when
exchange=LSE* or currency=GBP). Exposes OpenPositions for the
reconciliation step that runs at the CLI layer.

Guards against wrong-account writes by checking
stmt.accountId == IBKR_ACCOUNT_ID_UPSTREAM before yielding any activities.

13 unit tests cover all the mappings + the mismatch guard.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 22:28:35 +00:00
.github/workflows CI: build image from phase-0-scaffold branch too (bootstrap) 2026-04-17 19:51:09 +00:00
.woodpecker [ci] deploy.yml: manual-only — push events don't set IMAGE_TAG 2026-05-07 23:25:28 +00:00
broker_sync ibkr: add Flex provider — Trade/Cash mapping + OpenPositions snapshot 2026-05-26 22:28:35 +00:00
docs docs: add IBKR Flex ingestion implementation plan 2026-05-26 22:19:54 +00:00
tests ibkr: add Flex provider — Trade/Cash mapping + OpenPositions snapshot 2026-05-26 22:28:35 +00:00
.gitignore Initial scaffold + canonical Activity model 2026-04-17 19:16:11 +00:00
Dockerfile fidelity-planviewer: bake Chromium into the image for headless Playwright 2026-04-18 18:50:54 +00:00
poetry.lock deps: add ibflex with web extras for IBKR Flex Web Service ingestion 2026-05-26 22:21:54 +00:00
pyproject.toml deps: add ibflex with web extras for IBKR Flex Web Service ingestion 2026-05-26 22:21:54 +00:00