← Back to forvalt

Data Protection Impact Assessment

Conducted: April 3, 2026 · Review due: October 3, 2026

This Data Protection Impact Assessment (DPIA) is conducted in accordance with GDPR Article 35 to evaluate and mitigate risks associated with the processing of personal financial data by forvalt.

1. Project Overview

ItemDetails
Project nameforvalt — Personal Wealth Planning App
Data controllerforvalt (independent operator)
Contact@forvalt_bot → /support
Assessment dateApril 3, 2026
Next reviewOctober 3, 2026 (or upon significant changes)

2. Why This DPIA Is Required

This DPIA is required because the processing involves:

3. Data Processing Activities

3.1 Core financial planning

AspectDetails
Data categoriesDate of birth, income, expenses, savings, goals, assets, investments
Data subjectsApp users (individuals planning personal finances)
PurposeGenerate financial projections and wealth tracking
Processing locationClient-side (browser) — calculations run locally
StoragelocalStorage (device) + encrypted blob in Supabase (EU)
Lawful basisContract (providing the service)

3.2 AI financial advisor

AspectDetails
Data categoriesFinancial snapshot (income, expenses, goals, assets) + user questions
PurposeGenerate personalized financial guidance
ProcessorGroq (United States)
Retention by processorNot retained after processing (per Groq's terms)
Lawful basisConsent (user explicitly initiates each query)

3.3 Payment processing

AspectDetails
Data categoriesTelegram ID, username, subscription plan
PurposeProcess Premium subscription payments
ProcessorStripe (United States)
Lawful basisContract (processing payment for requested service)

3.4 Analytics

AspectDetails
Data categoriesBucketed capital ranges, bucketed savings rates, session IDs, feature counters
PurposeProduct improvement and usage understanding
Processing locationRedis Cloud (EU, Frankfurt)
Retention48 hours (daily counters), 30 minutes (sessions)
Lawful basisLegitimate interest (with opt-out available)

4. Risk Assessment

RiskLikelihoodImpactRisk levelMitigation
Database breach exposing financial data Low High Low (mitigated) All financial data is AES-256-GCM encrypted on the client. Server stores only encrypted ciphertext. Even full database access yields unreadable data.
Encryption key compromise Very low High Low Keys are derived from Telegram ID + salt (or user passphrase) using PBKDF2 with 100K iterations. Keys never leave the client device. Optional passphrase adds zero-knowledge protection.
Unauthorized admin access Low Medium Low Admin access restricted to allowlisted Telegram IDs. All admin actions logged in immutable audit trail. Rate limiting on admin endpoints.
Cross-border transfer to Groq (US) Medium Medium Medium Data sent only on explicit user action. Not retained by Groq after processing. Belarus users require explicit consent. UI discloses the transfer before use.
Stripe payment data exposure Low Medium Low Only Telegram ID and username shared. Stripe handles payment card data directly. Webhook signatures verified cryptographically.
Analytics re-identification Very low Low Low Only bucketed ranges transmitted (not exact values). No PII in analytics. Users can opt out entirely.
localStorage data theft (XSS) Low High Medium Telegram Mini App sandbox limits XSS vectors. No third-party scripts loaded. CSP headers restrict script sources. Optional passphrase encryption protects local data.
Denial of data access/deletion Very low Medium Low Users have self-service export (JSON/CSV) and deletion. No admin intervention required. Rate-limited to prevent abuse.

5. Mitigations Summary

Privacy by Design measures already implemented:

6. Residual Risks

After mitigations, the following residual risks remain at acceptable levels:

7. Conclusion

The overall risk to data subjects is low after implementing the identified mitigations. The client-side encryption architecture ensures that even a complete server-side breach would not expose readable financial data. The processing is proportionate to the legitimate purposes of providing a personal financial planning service.

This DPIA will be reviewed every 6 months or when significant changes are made to data processing activities.

8. Approval

RoleNameDate
Data Controller / Operatorforvalt operatorApril 3, 2026

See also: Privacy Policy · Breach Notification Procedure