AALMA
Sécurité & infrastructure

Pas de promesses.
Des choix techniques.

Tu confies à ALMA tes patrimoines, tes actes juridiques, tes correspondances. Voici exactement où ça atterrit, comment c'est chiffré, et qui peut y toucher.

§ 01Hébergement

Tout en Union européenne. Sans exception.

eu-central-1

Postgres · Neon EU

Base de données principale (documents, mémoire, métadonnées) hébergée en région Frankfurt (eu-central-1). Réplication multi-AZ, point-in-time recovery 7 jours. Aucun transfert hors UE.

Luxembourg

pCloud · souverain européen

Stockage objet pour les PDF, actes, pièces jointes. Datacenters Luxembourg. ALMA opère pCloud comme un classeur : tu vois les mêmes fichiers depuis ton client pCloud que depuis l'app.

cache 30j

R2 · Cloudflare (cache LRU)

Cache court terme (30j) pour servir rapidement les blobs. Authoritative copy = pCloud. Les actes signés et exports 2072 restent durables (pas évincés par la lifecycle).

cdg1 Paris

Hosting · Vercel EU

Edge functions et API routes servies depuis Paris (cdg1). Aucun edge US activé. Le code Next.js ne transite que par les régions européennes Vercel.

§ 02Cryptographie

Chiffrement, signature, preuve.

Transit · TLS 1.3 partout

HSTS strict-transport-security activé. Vercel + Cloudflare = certificats automatiques. Aucun fallback HTTP.

Auth · Better Auth (sessions opaques)

Sessions stockées en DB, tokens opaques côté cookie (httpOnly, sameSite=lax, secure). Pas de JWT clairs côté client. Bcrypt sur les mots de passe (passhash format).

Signature · Polygon (ancrage blockchain)

Chaque acte signé est hashé SHA-256, puis ancré on-chain via BumbleBox sur Polygon. Vérifiable publiquement par tx hash. Preuve eIDAS avancée capturée : IP, UA, géolocation approximative, timestamp serveur.

Audit trail · table audit_log

Toutes les opérations critiques (signature, clôture exercice, suppression compte, acceptation disclaimer) sont écrites dans audit_log avec orgId, userId, actorEmail, action, IP, détails JSON. Pas de purge automatique.

§ 03RGPD

Tes droits, exécutables.

Le bouton « Supprimer mon compte » dans Settings n'est pas décoratif. Soft delete immédiat, purge effective dans 30 jours (fenêtre d'annulation), audit_log écrit, sessions révoquées.

Droit d'accès

Export complet de tes données via /api/me/export (JSON + ZIP des PDF).

Droit de rectification

Tu modifies tout directement dans l'app. Pas de ticket support.

Droit à l'effacement

Soft delete 30j puis purge cascade (documents, embeddings, briefs, chat).

Droit à la portabilité

Export JSON + R2 download zip de tous tes PDF + extracted_text.

Droit d'opposition

Désactivation des briefings, du chat, des intégrations dans Settings.

Consentement granulaire

Disclaimer accepté par hash, traçable dans userDisclaimerAcceptances.

§ 04Sous-traitants

Qui touche à tes données ?

Liste exhaustive. Chacun est un sous-traitant au sens RGPD article 28. Tu peux nous demander un DPA signé.

Sous-traitantRôleRégion
NeonBase PostgreSQL principaleFrankfurt, DE
pCloudStockage fichiers (autorité)Luxembourg, LU
Cloudflare R2Cache blobs courte duréeEU only
VercelHébergement edge / API routesParis, FR (cdg1)
Google (Gemini)Modèle IA — OCR, classification, draftEU model serving
ResendEmails transactionnels (fallback briefings)EU
StripePaiements (abonnements)Ireland, IE
BumbleBoxEmail outbound, signature blockchain PolygonFR / Polygon mainnet
Cloudflare Email RoutingIngestion email entrantEU

Pour récupérer le DPA d'un sous-traitant ou nous notifier d'une violation, écris à dpo@icraftnow.com.

§ 05Disponibilité

Tu peux vérifier toi-même.

ALMA expose un endpoint /api/cron/status protégé par token. Chaque cron (briefings, gmail-sync, process-documents…) y écrit son dernier run, sa durée, son statut. Si un cron stagne, on est alertés en moins de 5 min.

SLOs ALMA (engagement)

API uptime

99.5%

mesuré côté Vercel

Briefings livrés

9h ± 5 min

push + email fallback

Ingestion docs

≤ 6 h

upload → done

Une question juridique précise ?

DPA, registre des traitements, certificat ISO en cours, sous-traitant non listé. Écris-nous, on répond avec les vrais documents.

Contacter le DPO