Datenspeicherung

Übersicht aller gespeicherten Daten, Speicherorte und Drittanbieter – für Datenschutzkonformität und Transparenz.

14
DB-Tabellen
4
Storage Buckets
5
Drittanbieter
10
Sensible Datensätze

Datenbanktabellen (Supabase PostgreSQL)

profiles Sensibel
🗓 Bis zur Kontolöschung

Nutzerprofile – alle persönlichen Angaben

full_namegenderbirth_datecitynationalityheight_cmmarital_statushas_childrenwants_childrensectpracticing_levelpray_frequencyeducation_levelprofessionbioprofile_photo_urladditional_photosmbti_typepersonality_traitsis_premiumis_verifiedid_verifiedis_hiddenis_bannedpush_notifications_tokendaily_requests_usedwali_namewali_phonewali_relationshipwali_verification_status
match_requests
🗓 Bis zur Kontolöschung

Gesendete und empfangene Kontaktanfragen

sender_idreceiver_idstatus (pending/accepted/declined/withdrawn/expired/unmatched)created_at
chats
🗓 Bis zur Kontolöschung oder manueller Trennung

Chat-Verbindungen zwischen gematchten Nutzern

user1_iduser2_idstatus (active/closed)last_message_previewlast_message_at
messages Sensibel
🗓 Bis zur Kontolöschung

Chatnachrichten (Text, Audio, System)

chat_idsender_idcontentis_readmetadata (type, audio_url, photo_request_status, wali_info, etc.)created_at
aisha_conversations Sensibel
🗓 Bis zur Kontolöschung

KI-Onboarding-Chatverläufe mit Aisha

user_idcontextmessages (JSONB: role + content)updated_at
question_games
🗓 Bis zur Kontolöschung

Kompatibilitätsspiel-Daten zwischen Matches

match_request_iduser1_iduser2_idselected_questionsanswersicebreaker_answersphasescores
push_tokens Sensibel
🗓 Bis zur Kontolöschung oder Token-Erneuerung

Expo Push Tokens für App-Benachrichtigungen

user_idtokenplatform (ios/android)created_at
user_warnings
🗓 Bis zur Kontolöschung

Chat-Verstöße und Strikes

user_idwarning_countlast_violation_typeupdated_at
chat_violations Sensibel
🗓 90 Tage nach Abschluss

Gemeldete Nachrichten zur Überprüfung

user_idchat_idcontentviolation_typecreated_at
reports
🗓 2 Jahre (Compliance)

Meldungen von Nutzern gegen andere Nutzer

reporter_idreported_idreasondetailsstatuscreated_at
blocks
🗓 Bis zur manuellen Aufhebung oder Kontolöschung

Gegenseitige Blockierungen

blocker_idblocked_idcreated_at
referral_codes
🗓 Dauerhaft (Archiv)

Einladungscodes für Marketing

codetypecreated_byused_countmax_usesexpires_atis_active
app_settings
🗓 Dauerhaft

Admin-konfigurierbare App-Parameter

keyvalueupdated_at
admin_users Sensibel
🗓 Bis zur manuellen Löschung

Admin-Konten für das Dashboard

emailrolecreated_at

Storage Buckets (Supabase Storage)

profile-photos Sensibel

Profilfotos der Nutzer

Inhalt: Haupt-Profilbild + bis zu 5 Zusatzfotos
Zugriff: Public (URL-basiert, Blur clientseitig)
id-documents Sensibel

Ausweisfotos für ID-Verifizierung

Inhalt: Vorder- und Rückseite des Ausweises
Zugriff: Private (nur Service Role)
verification-photos Sensibel

Selfie-Fotos für Foto-Verifizierung

Inhalt: Selfie mit Geste/Pose
Zugriff: Private (nur Service Role)
voice-messages Sensibel

Audio-Sprachnachrichten im Chat

Inhalt: M4A/AAC Audio-Dateien
Zugriff: Private (nur authentifizierte Nutzer)

Drittanbieter & Datenübermittlung

AnbieterZweckÜbermittelte DatenSpeicherort
Supabase (PostgreSQL)Datenbank, Auth, Storage, RealtimeAlle Nutzer- und App-DatenEU (Frankfurt, AWS eu-central-1)
OpenAI (GPT-4o-mini)Aisha KI-AssistentinOnboarding-Antworten, Chat-Kontext (anonymisiert)USA (mit EU-Standardvertragsklauseln)
StripePremium-ZahlungsabwicklungE-Mail, Checkout-Daten (keine Kartendaten bei uns)USA / EU (mit Standardvertragsklauseln)
ResendTransaktionale E-MailsE-Mail-Adresse, Name, E-Mail-InhaltUSA (mit EU-Standardvertragsklauseln)
Expo (EAS)App-Build und Push NotificationsPush Tokens, GeräteinformationenUSA (mit EU-Standardvertragsklauseln)

Nutzerrechte & Löschprozess

Recht auf Löschung

Nutzer können ihr Konto in der App unter Einstellungen → Account löschen deaktivieren. Alle persönlichen Daten (Profil, Nachrichten, Fotos) werden dabei aus den Systemen entfernt.

Recht auf Auskunft

Auf Anfrage an support@ruhin.io werden alle gespeicherten Daten zu einem Nutzer in maschinenlesbarem Format (JSON) bereitgestellt.

Recht auf Widerspruch

Nutzer können Push-Benachrichtigungen, Profil-Sichtbarkeit und Datenverarbeitung für KI-Matching in den App-Einstellungen steuern.

Was wir NICHT speichern

  • Keine Zahlungsdaten (Kreditkartennummern, Bankdaten) – alles über Stripe
  • Keine Klartextpasswörter – nur Supabase Auth Hashes
  • Keine GPS/Standortdaten – nur manuell eingegebene Stadt
  • Keine biometrischen Daten – Ausweisfotos werden nur zur manuellen Prüfung gespeichert
  • Kein Tracking / Werbecookies
  • Keine Verkäufe von Nutzerdaten an Dritte