Add recurring transaction detection, subscriptions page, and UK tax reporting
- Recurring service: auto-detects direct debits/subscriptions from CSV imports using frequency analysis; manual toggle in transaction detail drawer - Subscriptions page (/subscriptions): groups recurring payments with monthly cost equivalents, next-payment badges, and re-scan trigger - UK Tax page (/tax): payslips/P60 entry, income tax + NI + CGT + dividend tax calculations, configurable rate tables per tax year (pre-seeded 2024/25 and 2025/26), editable in-app so Budget changes need no rebuild - Migration 0006: tax_rate_configs, tax_profiles, payslips, manual_cgt_disposals with RLS; seeds 2025/2026 rate configs for existing users - Chart tooltip fix: all Recharts tooltips now use TOOLTIP_STYLE constant so they render correctly across all dark/light themes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
0b326cbd87
commit
afb5e99bb2
48 changed files with 6238 additions and 39 deletions
|
|
@ -35,6 +35,8 @@ class TransactionUpdate(BaseModel):
|
|||
merchant: str | None = None
|
||||
notes: str | None = None
|
||||
tags: list[str] | None = None
|
||||
is_recurring: bool | None = None
|
||||
recurring_rule: dict | None = None
|
||||
|
||||
|
||||
class TransactionFilter(BaseModel):
|
||||
|
|
@ -71,6 +73,7 @@ class TransactionResponse(BaseModel):
|
|||
notes: str | None
|
||||
tags: list[str]
|
||||
is_recurring: bool
|
||||
recurring_rule: dict | None = None
|
||||
attachment_refs: list[dict] = []
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue