FINCALC AI

Offline-first financial calculator — legal + support

View the Project on GitHub kmshihab7878/FINCALC-AI

Privacy Policy

Effective date: 2026-09-05

This is the privacy policy for FINCALC AI (“the app”), an offline-first financial calculator with optional AI features. The app is operated by the FINCALC AI team. Contact: privacy@fincalcai.com.


Summary

FINCALC AI is built to compute on your device. The 135-formula calculator engine, calculation history, favorites and exports (XLSX / PDF) all run locally. Nothing about a calculation leaves your device unless you export it, share it, or ask the AI about it.

When you choose to use an AI feature (AI Tutor, AI Assistant, “Explain this result”, or Elite Operator Mode), the app first asks for your permission. With your permission it sends the text of your question — and, when you ask about a calculation, that calculation’s inputs, result and steps — to our server proxy, which forwards them to one of two AI providers: Moonshot AI (Kimi K2.5) or OpenAI (GPT-4.1 Nano). The app removes obvious personal patterns (email addresses, phone numbers, identity-number and card-shaped numbers) on your device before sending, and the proxy applies the same redaction again. You can withdraw the permission at any time in Settings → AI data sharing.

We do not sell your data, do not run advertising, and do not use your prompts to train any model.


Data Stored on Your Device

The app stores the following on your device only, in an SQLite database:

When you sign in, rows created while signed in are tagged with your account and are hidden from a guest or a different account on the same device. Signing out hides them; signing back in shows them again; deleting your account removes them.

This data never leaves your device unless you explicitly export or share it, or ask the AI about a specific calculation.


Data We Collect from You

Data When Why Where it goes
Email address Sign in with Apple / Google Authentication Supabase Auth
Pseudonymous user ID Signed in Identifies your account Supabase, RevenueCat, Sentry
Subscription state (product, period, expiry, renewal flag) Subscribed Deliver the tier you paid for RevenueCat, synced to Supabase user_subscriptions by webhook
Sign in with Apple refresh token Sign in with Apple (when the server is configured for it) Lets us revoke your Apple authorization when you delete your account (Apple requirement) Supabase apple_sign_in_tokens, service-role only
Crash diagnostics (stack trace, device model, OS and app version, user ID) A crash or handled error occurs Fix defects Sentry — email and IP address are stripped before sending
AI question text You use an AI feature, after consent Generate an explanation ai-proxy → Moonshot AI and/or OpenAI
Calculation inputs, result and steps You ask the AI about a specific result or use Operator Mode, after consent Explain or analyse that calculation ai-proxy → Moonshot AI and/or OpenAI
AI content report (the AI text you flag, your reason) You tap “Report” on an AI response Review harmful or wrong AI output Supabase ai_content_reports
Spreadsheet sample (header row and up to 5 rows) Elite Workspace Mode with the Google Sheets extension Let the AI map your sheet to formulas extension-command → AI providers

The calculator, history and exports never require a network connection. No data is transmitted while you compute, save or export — only when you sign in, subscribe, or use an AI feature.


AI Features and External Processing

Before the first AI request the app shows what will be sent and asks you to agree. The choice is stored on your device and can be reversed in Settings → AI data sharing. Declining keeps every non-AI feature working.

What is sent

Numerical results shown to you are never produced by the AI. Operator Mode asks the AI to plan and to narrate; every number is computed by the FinCalc deterministic engine on your device, and anything the AI could not compute is shown as missing rather than filled in.

Where it goes

Our server proxy (a Supabase Edge Function) routes each request to one provider and falls back to the other on failure:

Both providers act as processors on our instructions. They receive only the redacted text and a server-side API key.

How long it is retained

How to avoid AI processing

Do not grant the AI permission, or withdraw it in Settings. Tiers without an AI quota see the offline Tutor, which is a template engine that sends nothing.

Effect of deletion

Deleting your account removes all server-side rows tied to your user ID, including the request log, monthly counters, Operator run history, extension sessions and AI content reports. Provider-side abuse-detection retention follows the provider’s own policy.


Crash Reporting (Sentry)

Sentry receives stack traces, error messages, device model, OS and app version, and your pseudonymous user ID when a crash or handled error occurs. Our beforeSend hook removes the email address and IP address before the event is sent. Sentry does not receive your financial inputs, results or AI prompts. Crash reports are deleted by Sentry after 90 days.

You can disable crash reporting at the OS level (iOS Settings → Privacy & Security → Analytics & Improvements; Android Settings → Google → Usage & diagnostics).


Subscriptions (RevenueCat)

RevenueCat manages purchases and receives a subscriber ID linked to your user ID, purchase status (product, period, expiry) and device platform. It does not receive your financial inputs or AI prompts. RevenueCat notifies our server of subscription changes through an authenticated webhook so your tier stays correct across devices.


Authentication (Supabase)

Supabase Auth handles Sign in with Apple and Sign in with Google and receives your email address (from Apple or Google) and a session token. Tokens are stored in the OS Keychain (iOS) or Keystore (Android). You can use the calculator without an account.


Account Deletion

In-app: Settings → Account → Delete account. The app calls our delete-user function, which deletes your authentication record and every row tied to your user ID (user_subscriptions, ai_monthly_usage, ai_request_log, operator_runs, extension_sessions, ai_content_reports, apple_sign_in_tokens), revokes your Sign in with Apple authorization (when a token is on file), and deletes your RevenueCat subscriber record (when billing is configured). The app then removes your account’s rows from the device and signs you out, and shows you what was and was not completed.

On the web: the account-deletion page linked from the store listing (docs/delete-account.md) explains how to request deletion without the app. By email: privacy@fincalcai.com; we respond within 30 days (GDPR Art. 17).


Data Retention

Data Retention
On-device history, favorites, AI transcripts Until you delete them, delete your account, or remove the app
Supabase user record, user_subscriptions, apple_sign_in_tokens Until account deletion
ai_request_log (rate-limit window) 7 days
ai_monthly_usage (quota counters) Current month + 12 months
operator_runs, ai_content_reports 1 year
extension_sessions 1 day after expiry
RevenueCat webhook receipts 90 days
Sentry crash reports 90 days
RevenueCat subscriber record Until account deletion (or per RevenueCat’s policy if billing deletion is not configured)
AI provider prompt logs Per provider terms (abuse detection only; no training)

Server-side purges run daily.


Children and Student Use

FINCALC AI is built for students and professionals studying finance and accounting. The app does not knowingly collect personal information from children under 13. If a parent or guardian believes a child under 13 has provided personal information, contact privacy@fincalcai.com and we will delete the account.


Your Rights (GDPR / UK GDPR)

If you are in the EEA or UK, you have the right to access, correct, erase, restrict, port, or object to processing of your personal data. To exercise any right, email privacy@fincalcai.com. We will respond within 30 days.

Legal basis: contract (authentication, subscription delivery), consent (AI features), legitimate interests (crash diagnostics, abuse prevention).


Security

You are responsible for the physical security of your device and any files you choose to export or share.


Changes to This Policy

We may update this policy. Material changes will be reflected in the “Effective date” above and in the app changelog. Continued use after a change constitutes acceptance.


Contact


Terms of Use Support Back to Legal & Support