MonitoringReportsMethodologyPricingBlogAboutStart for free
Security and compliance

Taufolio Trust Center

Investors trust us with their portfolios and, when they connect a broker, with read-only access to their accounts. This page explains how we protect that data, which controls we run, who processes data for us, and it publishes the policies we work by.

Compliance

GDPR

Compliant

EU General Data Protection Regulation. Taufolio is operated from Poland and processes personal data under the GDPR, with its primary database in the EU.

ISO/IEC 27001

Ready

Policies and controls are designed against ISO/IEC 27001:2022 Annex A. Taufolio is not certified yet.

SOC 2

Ready

Controls are designed against the AICPA Trust Services Criteria for Security, Availability and Confidentiality. No SOC 2 report has been issued yet.

“Ready” means our controls are built against the framework: the technical ones (encryption, database protection, TLS, isolated processing, retention jobs) are in place, and the procedural ones are documented and run on the schedule each policy sets. It is not a certification: no external audit has taken place yet, and we will publish the reports here when they exist.

How we protect brokerage credentials

When you connect a broker such as tastytrade or Interactive Brokers, we may hold OAuth client credentials, access and refresh tokens or API keys. Even someone with a full copy of our database could not use them.

Encrypted before it reaches the database

OAuth client IDs and secrets, access and refresh tokens and API keys are encrypted by our server with AES-256-GCM before they are stored. Each record has its own random salt and IV.

A key per user and per broker

Each record key is derived with HKDF-SHA-256 and bound to the user and the provider, so a ciphertext cannot be decrypted for another user or replayed against another broker.

The master key is never in the database

It lives only in our hosting provider’s encrypted secret store, readable by server code alone. A full copy of the database, backups included, reveals no credential.

A table no public API can reach

Credentials sit in a dedicated table with Row Level Security forced on and every privilege revoked from the public API roles. We use no anonymous or publishable database keys.

Read-only by design

We request read-only scopes: accounts, positions, balances and transactions. Taufolio never asks for trading, order, withdrawal or transfer permissions.

Never logged, deleted on disconnect

Credentials never reach logs, error reports, analytics or AI prompts, and are never sent back to the browser. Disconnecting a broker or deleting the account erases them at once.

How we protect uploaded broker statements

You can import a portfolio by uploading a statement (CSV, XLSX or XML) or a screenshot. Those files stay private to our server and are deleted on a fixed schedule.

Private store, no public link

Uploaded statements and screenshots go over TLS into a dedicated private store, encrypted at rest. No file has a public URL; every read needs a token that only our server holds.

Not reachable by anyone else

Files are stored under random identifiers. Other users, partners and the internet cannot reach them; only the platform administrator can open a retained file, to resolve a support case.

Parsed in an isolated sandbox

A parser generated for a new statement format runs in a throwaway microVM with no network, no secrets and no database access, under a hard time limit.

Deleted on a schedule

Statement files are deleted automatically 365 days after upload at the latest (we keep them so a misread file can be re-imported with a fixed parser), screenshots right after analysis. Cancelling an import or deleting the account removes them at once.

Controls

Data security

  • Application-layer encryption of customer credentials (AES-256-GCM)
  • Encryption at rest (AES-256) on the managed database and storage
  • Encryption keys held outside the database
  • Automated, provider-managed database backups
  • Data classification with a Restricted tier for credentials
  • Retention schedule and deletion on account closure

Database protection

  • Row Level Security enabled on every table
  • No anonymous or publishable database keys
  • Server-side access only, with a secret key in a secret store
  • Public API roles stripped of table privileges
  • Views run with the caller’s rights (no RLS bypass)

Network security

  • TLS 1.2+ for all traffic, HSTS on taufolio.com
  • Edge network and web application firewall
  • No self-managed servers or office network
  • Database not publicly accessible

Product security

  • Version-controlled changes with review before release
  • Automated checks on every change (lint, types, unit tests)
  • Full test suite and security guard tests on every release
  • Instant rollback to the previous deployment
  • Secrets scan that blocks credentials from the repository
  • Separate development and production credentials

Access control

  • Least privilege and role-based access
  • Multi-factor authentication on production systems
  • Quarterly access reviews
  • Immediate revocation on offboarding
  • No staff access to decrypted credentials

Endpoint security

  • Full-disk encryption on staff devices
  • Automatic operating system updates
  • Screen lock and password manager
  • Lost or stolen device procedure

Corporate security

  • Information security policy approved by the owner
  • Annual risk assessment and risk register
  • Incident response and breach notification (72 h to the supervisory authority)
  • Business continuity and disaster recovery plan
  • Vendor and subprocessor due diligence
  • Code of business conduct and acceptable use policy

Policies and procedures

36 documents, approved by Jacek Janczura and reviewed at least once a year. Each opens as a PDF.

Infrastructure and operations

Subprocessors

Service providers that process personal data on our behalf. Market data suppliers receive no personal data and are not listed. Brokers you connect are data sources you authorize, not our subprocessors.

ProviderPurposeData location
VercelHosting, serverless compute, CDN and edge firewallGlobal edge network
SupabasePrimary database and file storageEU (Ireland)
ClerkAuthentication and session managementProvider-managed, SCCs outside the EEA
StripePayments and subscriptions (no card data stored by Taufolio)Provider-managed, SCCs outside the EEA
ResendTransactional and broadcast emailProvider-managed, SCCs outside the EEA
PostHogProduct analytics, only after cookie consentEU
SentryError and performance monitoringEU (Germany)
SnapTrade (Passiv Inc.)Read-only brokerage connectionsCanada, may also process in the US
Amazon Web Services (AWS Bedrock)AI models for reports, summaries and document processingTreated as outside the EEA
AnthropicAI models for reports, summaries and document processingTreated as outside the EEA
Google Cloud Vertex AIAI models for reports, summaries and document processingTreated as outside the EEA
Microsoft Azure AI FoundryAI models for reports, summaries and document processingTreated as outside the EEA
Microsoft Azure OpenAIAI models for reports, summaries and document processingTreated as outside the EEA
Microsoft Azure Document IntelligenceAI models for reports, summaries and document processingTreated as outside the EEA
OpenAIAI models for reports, summaries and document processingTreated as outside the EEA
OpenRouterAI models for reports, summaries and document processingTreated as outside the EEA

Frequently asked questions

How do you store the OAuth tokens and API keys of a connected brokerage account?

Encrypted with AES-256-GCM by our server before storage, with a per-record key derived from a master key that is kept outside the database. The table that holds them is unreachable through the database’s public API. See the Encryption Policy for details.

Can Taufolio place trades or move money in my brokerage account?

No. Taufolio requests read-only access only (accounts, positions, balances and transactions) and never requests trading, order, withdrawal or transfer permissions.

Who can see the broker statements I upload?

Nobody but our server, which reads them to import your portfolio. Files sit in a private, encrypted store with no public link. Only the platform administrator can open a retained file, through an administrator-only route, to resolve a support case or a parsing error. Statement files are deleted automatically 365 days after upload at the latest, and at once when you cancel the import or delete your account.

Is data encrypted in transit and at rest?

Yes. All traffic uses TLS 1.2 or higher with HSTS, the database and storage are encrypted at rest with AES-256, and customer credentials carry a second, application-level layer of encryption.

Where do you store data?

Our primary database and file storage run in the EU (Ireland). Analytics and error monitoring are stored in the EU. AI model providers may process data outside the EEA, as our Privacy Policy explains; credentials are never sent to them.

Do you train AI models on customer data?

Taufolio does not train AI models. Model providers process our requests under business API terms, which vary by provider; our Privacy Policy states what each may do with the data. Brokerage credentials never reach any AI model.

Are you ISO 27001 or SOC 2 certified?

Not yet. Our controls and policies are designed against ISO/IEC 27001:2022 and the SOC 2 Trust Services Criteria, and we describe ourselves as ready for both audits. We will publish the reports here once they exist.

What happens to my credentials when I disconnect a broker or delete my account?

They are hard-deleted immediately. Deleting the account also removes the user at our brokerage-connection provider.

How do I report a security issue?

Email support@taufolio.com with “Security” in the subject. We acknowledge every report and keep you informed until it is resolved.

Contact

Security questions, partner due diligence and vulnerability reports: support@taufolio.com.

Taufolio · Jacek Janczura · Adama Mickiewicza 73, 01-625 Warszawa, Poland · EU VAT: PL5253008276

Last updated 18 October 2026. See also our Privacy Policy and security overview.

Cookies and analytics

Essential cookies keep you signed in. Analytics runs only if you agree.