Privacy policy
Last updated: April 25, 2026
Lalla Kenza is a wedding planning platform operated for the Moroccan market. This policy describes how we collect, use and protect your personal data, in accordance with the General Data Protection Regulation (GDPR) and Moroccan law 09-08.
1. Data controller
The platform is currently operated as an individual undertaking by its founder. A formal declaration to the CNDP (Morocco) will be made when a dedicated legal entity is created, at the latest before the public opening of the service to non-beta couples. For any question: hello@lallakenza.co.
2. Data collected
Three major categories of data:
- Account data: email + password (hashed). Required to create your space.
- Wedding data: couple's first names, date, city, estimated budget, enabled ceremonies, guest list (you enter), photos uploaded to the public portal, seating plan, guestbook messages left by your guests.
- Technical data: IP address (anti-brute-force, ≤ 1 hour), error logs (no identifying content — see §4), anonymised analytics events (only if you accept analytics cookies).
3. Purposes
- Allow you to plan your wedding with the platform's tools.
- Authenticate you and secure your account.
- Receive and route your guests' RSVPs to your dashboard (with no signup on their side).
- Detect and fix bugs (Sentry, without personal data).
- Understand how the tool is used to improve it (PostHog, only with your explicit consent via the cookie banner).
We never sell your data. We also do not use it for targeted advertising.
4. Sub-processors
To run the platform, we use the following sub-processors. Each has signed a Data Processing Agreement (DPA) that commits them to the same level of confidentiality as us.
| Sub-processor | Purpose | Hosting | Retention |
|---|---|---|---|
| Supabase Inc. | Hébergement de la base de données, authentification, stockage des photos. | AWS Europe (eu-west-3 / Paris) | Tant que votre compte existe + 30 jours après suppression (purge des sauvegardes). |
| Vercel Inc. | Hébergement de l'application web (rendu, edge, logs courts). | AWS / Vercel global edge (cache statique CDN). Données serveur en eu-west-1. | Logs : 24 heures (Hobby) → 30 jours (Pro). Aucun PII stocké côté Vercel. |
| Sentry (Functional Software, Inc.) | Suivi des erreurs applicatives pour corriger les bugs. | AWS Europe (Frankfurt). | 30 jours (free) → 90 jours (Pro). |
| PostHog (PostHog, Inc.) | Analytique produit (parcours utilisateur, fonctionnalités utilisées). Activé uniquement si vous acceptez les cookies analytiques. | PostHog EU Cloud (Francfort). | 12 mois. |
| Resend, Inc. | Envoi des emails transactionnels (confirmation d'inscription, réinitialisation de mot de passe). Pas encore activé en prod. | AWS US-East. SCC + DPA en place. | 90 jours pour les statuts de remise. Contenu email non archivé. |
| Upstash, Inc. | Limitation de débit sur les endpoints d'authentification (anti-brute-force). | AWS Europe (Frankfurt). | ≤ 1 heure (clés Redis avec TTL). |
Per-sub-processor data category breakdown: src/data/subprocessors.ts.
5. Retention period
Your data remains available as long as your account exists. If you delete your account (from Settings → My data), we purge all your tables within 24 hours and our backups within 30 days. This purge is irreversible.
6. Your rights
In accordance with GDPR and law 09-08, at any time you have the right to:
- Access and portability (Art. 15 + 20 GDPR) — Download a complete JSON export from Settings → My data.
- Rectification (Art. 16 GDPR) — Edit your information directly from your profile.
- Erasure (Art. 17 GDPR) — Delete your account from the same page. Immediate, irreversible.
- Object to processing for analytics — Decline analytics cookies in the banner (you can change your mind any time). The service stays fully functional.
- Lodge a complaint with the CNDP in Morocco or the CNIL in France.
7. Cookies
| Name | Type | Purpose | Retention |
|---|---|---|---|
| sb-* (Supabase Auth) | Essential | Maintien de votre session authentifiée. | Jusqu'à déconnexion ou expiration (1 semaine). |
| lk_locale | Essential | Mémorise votre langue d'interface (FR / EN). | 1 an. |
| lk_consent | Essential | Mémorise votre choix sur les cookies analytiques (accepté / refusé) — sans cela, la bannière reviendrait à chaque visite. | 1 an. |
| ph_* | Analytics | PostHog — analyse produit anonymisée. Posé uniquement si vous avez accepté les cookies analytiques. | 12 mois. |
8. Security
All communications are encrypted (HTTPS/TLS). Databases are protected by Row Level Security rules that prevent one user from seeing another's data, even in case of an application bug. Authentication attempts are rate-limited (10/min/IP) to block brute-force attacks. We run an RLS coverage audit on every pull request.
9. Changes
This policy may evolve to reflect new practices (sub-processor change, new feature). In case of material change, you'll be notified by email to your account address. The current version is always available at /legal/privacy.
10. Contact
To exercise your rights, request more information, or ask a question about this policy: hello@lallakenza.co. We commit to replying within 30 days.