Security
How E-ARI protects your data
This page describes what is implemented today, and what is not. We sell auditability, so we hold our own claims to the standard we ask of yours — nothing here is aspirational.
Implemented
- Application compute
- Frankfurt (fra1)
- Database
- Supabase · AWS eu-central-2 (Zurich, Switzerland)
- Default model provider
- DeepSeek · China
- Error monitoring
- Sentry · EU data region (Germany)
- Passwords
- bcrypt, cost factor 12
- Sessions
- JWE (A256GCM), 24 hours of inactivity
Not claimed
- EU-only data residency
- See the register
- Not claimed
- SOC 2 · ISO 27001
- No formal audit completed
- Not certified
- Penetration test
- Third-party, to date
- Not conducted
Controls, as implemented
Application compute is pinned to Frankfurt (fra1) for application functions. Your data is stored in a PostgreSQL database hosted on Supabase (AWS eu-central-2, Zurich), encrypted at rest. Switzerland is not an EU member state; the European Commission recognises it as providing an adequate level of data protection. Neither location means that model processing or every sub-processor runs in Europe: the default model provider processes data in China, and the register below gives each provider’s region. We do not claim EU-only data residency.
All traffic is served over TLS, with HTTP Strict Transport Security enforced for six months. Some sub-processors listed below operate globally; international transfers and their safeguards are described in our Privacy Policy.
Passwords are hashed with bcrypt at cost factor 12 and are never stored or logged in readable form. Sessions are encrypted JSON Web Tokens (JWE, A256GCM) in an HTTP-only cookie, expiring after 24 hours of inactivity — the encryption is NextAuth’s implementation, not ours. Google sign-in is supported. Enterprise SSO (OIDC) is configured by the E-ARI platform operator. Enforcement rejects password sign-in while the configured OIDC provider is registered; the password path is available when it is not registered. This is not per-workspace customer-managed SSO or SCIM provisioning. IP allowlisting, custom session policies and additional controls must be agreed and verified separately; they are not implied by the Enterprise plan.
Sign-in attempts are rate limited to eight per fifteen minutes against a given account, counted before the password is checked. The limit is keyed to the account rather than the network address, because the realistic attack is a sustained run against one known address by someone who can change addresses at will.
Page and portal responses carry HSTS, X-Frame-Options: DENY, MIME-sniffing protection, a restrictive Referrer-Policy, a Permissions-Policy disabling camera, microphone, geolocation and sensors, and a Content-Security-Policy blocking framing, base-tag injection, off-site form submission and legacy plugin embedding. The auth, webhook and cron endpoints are deliberately excluded from that middleware, as are static assets.
Expensive operations are rate limited per account through a database-backed counter shared across all instances. Two limits worth stating plainly: if the database is unreachable the check falls back to a per-instance in-memory window rather than failing closed, and an operator can disable rate limiting platform-wide from the admin console. Authentication failures return a generic message; internal error details are logged server-side and never returned to the caller.
Your readiness score is not generated by a language model. It is computed by a deterministic, versioned engine — the same answers always produce the same score, and every score records the methodology version that produced it.
EU AI Act risk classification is likewise decided by rules matched against the enumerated provisions of the Regulation, not by a model. Each determination reports which provision was matched and on what wording, and is marked provisional where the Act requires a human judgement the text cannot supply. Language models write the explanatory narrative around these findings; they cannot alter a score or a risk tier, and any legal citation they produce that the rules engine did not apply is discarded before it reaches you.
Operator actions — tier and role changes, account deletion, unlocks, settings changes, refunds — are written to an admin audit log with the actor, the target and a timestamp. That log covers what we do to an account; it is not a full record of everything you do inside the product. You can export your organisation’s data at any time from Account & billing, as a single JSON file covering your assessments and answers, registered AI systems, classifications, evidence metadata, obligation gaps and training records. Deletion is by request to support rather than a button: mail support@e-ari.com and we remove the account, its records and the files themselves.
The release build runs automated checks. Passing checks does not establish that every production dependency or client workflow has been independently verified.
06 · Register
Sub-processors
These providers are used by the default platform configuration. Deployment regions and contractual safeguards must be confirmed during procurement.
| Provider | Purpose | Region |
|---|---|---|
| Vercel | Application hosting and serverless functions | Frankfurt (fra1) configured for application functions; edge services may operate elsewhere |
| Supabase | PostgreSQL database | AWS eu-central-2 (Zurich, Switzerland) |
| Vercel Blob | Private uploaded evidence objects | Storage region requires operator confirmation; no EU-only residency claim |
| DeepSeek | Default model provider: narrative, extraction, drafting and enrichment | China |
| Tavily | Web search for organisation enrichment and discovery | United States |
| Sentry | Application error monitoring | EU data region (Germany) |
| Google Analytics | Consented public-site analytics | International processing |
| Stripe | Payment processing | International processing |
| Resend | Transactional email | International processing |
The platform’s default model provider is DeepSeek, which processes data in China. China is not covered by a European Commission adequacy decision. Transfer safeguards must be established and assessed; this page does not assert that an agreement alone resolves the transfer assessment. Model-assisted features include narrative generation, clause extraction from uploaded evidence, compliance drafting and organisation enrichment. Configurable endpoints can change routing; the operator must confirm the active providers and update disclosures before using an alternative. Readiness scoring and rule-based risk classification do not use a language model. Provider retention and model-training conditions depend on the applicable API terms; E-ARI does not assert negotiated zero-retention or no-training commitments.
07 · Procurement
For your procurement team — capability by tier
One table, no sales call required. Every cell below is enforced server-side at the API it describes — the same gates the product runs, quoted here so a vendor questionnaire can be answered without asking us.
| Capability | Free | Pro | Enterprise |
|---|---|---|---|
| SSO (OIDC — Okta, Entra ID, Google Workspace, Keycloak) | Not included | Not included | Included |
| Users who sign in (owner / member / view-only roles) | 2 | 10 | Unlimited |
| AI systems in the register | 3 | 25 | Unlimited |
| Deterministic classification with rule trace | Included | Included | Included |
| Evidence vault with SHA-256 integrity + audit trail | 10 files | Included | Included |
| Sealed, verifiable exports | Not included | Included | Included |
| API access — read- and write-scoped keys | Not included | Not included | Included |
| DOCX/PDF report generations per month | 1 | Unlimited | Unlimited |
| Shadow-AI discovery scans per month | Not included | Unlimited | Unlimited |
| Article 4 literacy training seats | 5 | 250 | Unlimited |
| Vendor questionnaires (TPRM) | Not included | 25 | Unlimited |
| Application functions configured for Frankfurt (fra1) | Included | Included | Included |
| Data export (JSON, self-serve) | Included | Included | Included |
Seats and quotas are enforced atomically per calendar month (UTC); tier gates are checked in the route handlers, not only hidden in the interface. If your questionnaire needs something this table does not answer, ask us directly — we answer in writing rather than pointing at a badge.
08 · Boundary
What we do not have yet
E-ARI is an early-stage product and we would rather you learn this here than discover it in a vendor questionnaire:
- Not certified
No SOC 2 or ISO 27001 certification. We have not completed a formal audit. We do not claim compliance with either standard.
- Not conducted
No third-party penetration test has been conducted to date.
- Enterprise agreements only
No contractual uptime or incident-response SLA outside Enterprise agreements.
If your procurement process requires any of these, contact us — we would rather scope that conversation honestly than have you discover the gap late.
09 · Disclosure
Reporting a vulnerability
If you believe you have found a security issue, email security@e-ari.com with enough detail to reproduce it. We will acknowledge within three business days.
Please do not run automated scanning against production, access data that is not yours, or degrade service for other users while testing. We will not pursue legal action against researchers who report in good faith and follow that.
Questions from your security team?
We will answer a questionnaire directly rather than pointing you at a badge.
Contact usLast reviewed 4 September 2026