Design a Mint-like personal finance system that links a user's external bank and card accounts, periodically pulls transaction data, categorizes spending, tracks monthly budgets, and generates spending reports. The product is strictly read-only: money movement, ACH, transfers, and bill pay are out of scope.
The main system constraint is the external bank aggregator. Each linked account may…