## Summary - **Store `invested_amount` in user's currency** (e.g. EUR) instead of the account's currency (e.g. BTC), since it represents "how much of my money did I put in" — a concept tied to the user's home currency. - **Flip `display_invested_amount`** in API responses: now converts from user currency → account currency (previously account → user), for the chart's account-currency toggle mode. - **Remove redundant conversions** in `AccountMetricsService` since invested amounts are already in user currency after sync. ## Changes ### Backend (5 files) - **BinanceBalanceSyncService** — convert to `$account->user->currency_code` instead of `$account->currency_code` - **BitpandaBalanceSyncService** — same currency target change - **IndexaCapitalBalanceSyncService** — inject `CurrencyConversionService`, convert invested amount float to user currency before storing as cents - **DashboardAnalyticsController** — flip `display_invested_amount` conversion direction (user→account) in both monthly and daily endpoints - **AccountMetricsService** — remove 4 now-redundant invested_amount conversion spots (values already in user currency) ### Frontend (6 files) - **update-balance-dialog.tsx** — invested amount input uses user currency - **balances-modal.tsx** — invested amount display and edit uses user currency - **account-balance-chart.tsx** — currency toggle: user-currency mode keeps invested_amount as-is; account-currency mode swaps to `display_invested_amount` - **import-balances-drawer.tsx** — passes `investedAmountCurrencyCode` (user currency) to sub-components - **import-balance-step-mapping.tsx** / **import-balance-step-preview.tsx** — format invested amounts in user currency ### Tests (2 files) - **IndexaCapitalBalanceSyncTest** — use `app()` instead of `new` (constructor now has DI), pin account currency to USD for deterministic assertions - **DashboardAnalyticsTest** — add EUR-based exchange rate, flip assertion from `/ 0.90` to `* 0.90` |
||
|---|---|---|
| .. | ||
| Drip | ||
| AssignHistoricalTransactionsToBudget.php | ||
| ReEvaluateTransactionRulesJob.php | ||
| SendUpdateEmailJob.php | ||
| SyncAllBankingConnectionsJob.php | ||
| SyncBankingConnectionJob.php | ||
| SyncBinanceHistoricalBalancesJob.php | ||