Skip to main content
Security

Your questions are answered by a French company.

Generation runs at Mistral in France, a company with no parent outside the European Economic Area. Documents are stored in Ireland and Nuremberg. Every provider, its country of incorporation and its parent are listed in our sub-processor register.

Data Isolation

Tenant isolation enforced at the database layer via Row-Level Security. Every query is scoped to the authenticated user. Cross-tenant data access is architecturally impossible.

Role-Based Access Control

Granular permissions scoped by team, data type, and action. Admins control who can view audit logs, manage members, delete documents, and access billing.

Immutable Audit Trail

Every AI query, data access, and administrative action is logged in an append-only trail. Who accessed what, from where, and when, queryable and separate from application data.

Data Protection

Your data stays yours.

Your data is only used to serve your team. It is never shared, sold, or repurposed. Your documents, queries, and responses are yours alone.

Where it runs, and who can reach it

Jurisdiction, not just region

Residency says where data sits. Jurisdiction says who can compel access to it. Generation, document storage and outbound mail are handled by companies incorporated in the EEA with no non-EEA parent. Our request path, cache and error monitoring still run on US-incorporated providers while we migrate to our own EU infrastructure. Our sub-processor register flags each one per row, including a provider that is EU-based but has a non-EEA parent.

EU data residency

Generation runs in France and embeddings run in Berlin. Documents are stored in Ireland and Nuremberg. Some of our providers are incorporated outside the European Economic Area, so their remote access counts as a transfer under GDPR Chapter V. Our sub-processor register names every provider and the transfer basis that applies to it.

Who at Nordvec can see your data

The product has no impersonation, support-login or staff-admin mode. There is no path for us to open your documents or conversations through the application, and a test fails the build if one is ever added. Two founders hold infrastructure-level database access, which is standing access we cannot remove while we run on managed infrastructure, and it does not appear in your audit log. Everything done through the product does, and you can export the whole log as CSV filtered by date and action. Named, time-limited access with notification to you arrives with our own EU hardware.

How it is protected, and what that covers

Encrypted at rest and in transit

All data is encrypted at rest (AES-256) and in transit (TLS 1.3). OAuth tokens use an additional application-level encryption layer.

Key custody

Our platform provider holds the encryption keys today, not us and not you. We state that plainly because it decides what the encryption above is worth: it protects a decommissioned or stolen disk, not a compromised credential on a running system. We do not offer customer-managed keys yet. Key custody becomes ours at our move to EU hardware, with an EU-resident key and a stated rotation policy.

Why the search index is not separately encrypted

Encrypting the text and vector columns individually would break the index that makes vector search possible, and on managed infrastructure the key would still sit with the provider. We would rather tell you where the boundary is than describe an encryption layer that does not do what the name suggests.

Backup scope

Backups cover the database daily, with a 24-hour recovery point. Document blobs are not included, so a deletion is final rather than something a restore can undo. Any restore replays recorded erasures before the service returns, so it cannot bring back data you asked us to delete.

How the code is tested

Every change is scanned before it lands: static analysis (semgrep) for code-level flaws, dependency vulnerability and licence auditing, secret scanning on every commit, and a seven-day release cooldown that blocks freshly published packages from entering the build. We do not hold an independent penetration test, and we would rather say so here than let a list of controls imply one.

What we do with it

Zero AI training data retention

Nordvec never uses your data to train, fine-tune, or improve any AI model. Only the 5-15 document chunks relevant to your question are sent per query, never entire documents.

No third-party data sharing

Your data is never sold or shared for anyone else's purposes. Model providers receive only the minimum context needed to answer your query, and every provider we use is named in our sub-processor register.

Instant physical deletion

When you disconnect an integration, all synced data, embeddings, and file references are permanently deleted immediately. Storage blobs are purged within minutes. No soft deletes.

Infrastructure

Access control at every layer.

Authentication at the edge, row-level security in the database, and an append-only audit trail.

Edge-layer authentication

JWT verification happens at the edge before requests reach application servers. Invalid tokens are rejected with zero backend load.

Database-level access control

Row-Level Security (RLS) policies enforce tenant isolation directly in PostgreSQL. Even internal queries cannot bypass access controls.

Immutable audit trail

Every AI query, data access, and administrative action is logged in an append-only audit trail with precise timestamps.

Rate limiting and abuse prevention

API endpoints are rate-limited per user and per IP. Automated abuse prevention protects against credential stuffing and enumeration attacks.

See every access-control obligation and its code evidence on our trust board
Certifications & Standards

What we hold, and what we do not.

GDPR

Full compliance with the General Data Protection Regulation. Self-service data subject rights (Art. 15, 17, 20), privacy by design (Art. 25), immutable processing records (Art. 30), and security of processing (Art. 32).

Implemented

EU AI Act

Automatic decision logging, transparency controls and human oversight, mapped to Articles 12-14. Article 50 transparency via exportable AI interaction history, with each obligation's status published on the trust board.

Implemented

SOC 2 Type II

Not held. The Trust Services Criteria our architecture already meets are published individually on the trust board, each linked to the code that implements it. An external audit is a funding decision, and we will not describe it as scheduled until it is booked.

Not held

ISO 27001

Not held. Our information-security controls are published and source-verified rather than asserted as alignment, and exported as OSCAL so you can load them into your own tooling. We would rather publish what you can check than a claim you cannot.

Not held
Responsible disclosure

Safe harbour

Report a vulnerability to security@nordvec.com. We acknowledge within 72 hours, give you a triage severity within 5 business days, and keep you updated until it is resolved.

Safe harbour

We will not pursue or support legal action against researchers who act in good faith, follow this policy, avoid privacy violations and service degradation, and give us a reasonable opportunity to remediate before disclosure. If you are unsure whether an action is authorised, ask us first.

Before you test

Only interact with accounts you own or have permission to use. Do not access other tenants' data, run scanning that degrades the service, or disclose an unfixed issue publicly. We ask for a coordination window of up to 90 days before public disclosure, and we credit reporters who want to be named. If you used a generative AI tool at any stage, tell us how; it helps us triage and does not count against your report.

Our process follows ISO/IEC 29147 (disclosure) and ISO/IEC 30111 (handling), and the coordinated-disclosure duty of the EU Cyber Resilience Act (Regulation (EU) 2024/2847, Art. 13). Remediation targets and full scope are published in the SECURITY.md file in our source repository.

We do not run a paid bug-bounty programme. We recognise good-faith reports with public credit, not payment.

Get in touch.

Security Contact
security@nordvec.com

Security inquiries

Questions about our security architecture, data handling, or compliance posture. We are happy to provide detailed documentation for your review.

Responsible disclosure

Report a vulnerability to security@nordvec.com. We acknowledge within 72 hours, give you a triage severity within 5 business days, and keep you updated until it is resolved.