La confidentialité en langage clair

La confidentialité chez RingMatcher

Découvrez ce que RingMatcher envoie pour analyse, ce qu’il enregistre volontairement et ce qui est inclus lorsque vous partagez un Ringprint.

Les réponses que vous envoyez

Le parcours gratuit traite les réponses de style et d’achat que vous choisissez, ainsi qu’une note facultative. Elles ne sont envoyées au serveur RingMatcher que lorsque vous demandez un résultat et servent à le créer et à le valider.

Sur le site comme dans l’application native, le serveur RingMatcher transmet ces réponses et la note facultative à OpenRouter, qui les achemine vers un fournisseur de modèles d’IA chargé de rédiger le résultat. Des paramètres de non-conservation et de refus de collecte sont demandés. Le serveur vérifie ensuite que le résultat respecte vos choix ; si le service d’IA est indisponible ou si le résultat ne passe pas cette vérification, un résultat fondé sur des règles est créé à la place.

Images facultatives et traitement par l’IA

Les photos sont facultatives et une photo du visage n’est jamais requise. Jusqu’à trois images sont redimensionnées dans votre navigateur et peuvent transiter par le serveur RingMatcher vers le fournisseur d’IA configuré pour cette demande. RingMatcher n’enregistre pas volontairement les fichiers importés. Des paramètres de non-conservation et de refus de collecte sont demandés, mais l’infrastructure, les conditions et les obligations légales du fournisseur s’appliquent toujours.

Les instructions n’autorisent que les indices visuels de design et interdisent l’identification ou l’inférence de caractéristiques sensibles. Le texte ou les instructions présents dans une image sont ignorés.

Liens partagés

Un lien partagé contient dans son fragment d’URL le résultat visible, le parcours de diamant choisi, la tranche de budget et la langue du contenu. Il ne contient jamais les images importées. Toute personne disposant du lien peut lire les informations encodées ; vérifiez-les avant l’envoi.

Un fragment limité peut transférer les champs visibles du Ringprint vers l’outil de détaillants. Il n’est pas envoyé avec la requête HTTP de la page et disparaît de la barre d’adresse après import, mais le détenteur du lien non importé peut toujours le lire.

Native app data, purchases, and recovery (authoritative English disclosure)

This native-app section is the authoritative English disclosure. The surrounding translated text may not yet describe every native-app behavior.

Creating a Ringprint in the native app sends the questionnaire answers, the content locale, and a random installation identifier to RingMatcher for AI matching, including when no photos are attached. If you add up to three photos, the app re-encodes them and includes the device-resized images and their context labels in that request. If AI matching is unavailable, the app can generate a rules-based result on the device. Cookies are omitted. RingMatcher then sends the answers and images to OpenRouter, the configured AI gateway, with zero-data-retention and data-collection-denial settings requested. RingMatcher does not intentionally persist the match request body or uploaded image files, and saved Ringprints never contain a photo file or image payload. OpenRouter, any routed model provider, and their infrastructure, terms, and legal obligations still apply.

The app stores saved Ringprints in AsyncStorage, including the questionnaire answers, optional note, generated result, locale, source, timestamps, and image-analysis counts. Paid-plan snapshots, generated guidance, setup inputs, saved candidate specifications and quote notes, comparison results, and tool activity are also stored in AsyncStorage; source snapshots omit the free-form Ringprint note. These records are app-local but are not encrypted by AsyncStorage. Photo files are excluded. A random installation UUID and purchase capabilities—including draft and access tokens, obfuscated purchase-binding identifiers, and a Google Play purchase token after billing—are stored separately with device-only SecureStore settings.

On Android, RingMatcher disables app backup and excludes its app files, databases, preferences, and device-to-device transfer domains from backup rules. This is intended to keep local Ringprints, plans, and purchase capabilities off Android backup and migration services. Other operating-system, device-administration, forensic, or user-initiated copying behavior is outside RingMatcher's control.

If you choose Report this result, the app sends RingMatcher the result identifier, visible result title, summary and rationale, the selected report reason, an optional note, the content locale, and the random installation identifier in a request header. The service uses the installation identifier and network address to enforce an hourly report limit. It writes the report content, reason, optional note, locale, a generated report identifier, and the receipt time to structured deployment logs so the report can be reviewed. Those report logs do not intentionally include the raw installation identifier or network address; their retention follows the deployment logging configuration. Reporting is optional and does not affect saved Ringprints or paid access.

The app sends limited plan-use events to RingMatcher to measure whether the offers help people buy and use a plan. These events cover quiz progress, visible offers or previews, checkout and price-loading outcomes, resuming purchases, opening or receiving a paid plan, exporting a report, saving a candidate, and refining a plan. Each event contains only its event name, plan type, locale, and Android or iOS platform; a fresh random event-delivery ID may accompany the request to suppress duplicate delivery, and the server adds a receipt timestamp. Events contain no installation or purchase identifiers, answers, photos, notes, candidate details, or report content. Cookies are omitted, and the app does not queue or retry these events. The server uses the network address for temporary rate limiting but does not include it in the structured analytics record. Records follow deployment-log retention. Fixed-label daily totals and hashed event-delivery references are also retained on the server for 90 days and pruned on the next event. Verified payment outcomes are counted separately using hashed payment references to prevent replay; test-provider payments are excluded. Event totals are not unique customer counts. Collection happens automatically during these actions and has no separate in-app opt-out.

Starting a Google Play checkout sends RingMatcher the selected pack, random installation UUID, local Ringprint identifier, and a SHA-256 digest of the Ringprint—not the questionnaire answers, uploaded photos, or generated plan. The server persists a digest of the installation identifier, the Ringprint identifier and digest, generated draft/access identifiers, product and pack identifiers, obfuscated Google Play binding identifiers, capability hashes, and timestamps. Claiming a purchase sends the raw Google Play purchase token to RingMatcher so it can be verified with Google Play. The server persists a digest of that token, and may persist an order-ID digest and purchase-completion timestamp; it does not write the raw purchase or order token to its purchase-state file.

The Android app also initializes Google's Play Billing library when it starts, even if you do not make a purchase. That library sends operational billing diagnostics to Google, including billing results and error details with app and Android-version metadata, to support billing functionality and diagnostics. Its transport can queue events on the device before sending them, so this is not limited to request-lifetime processing. There is no separate in-app opt-out for the billing library's diagnostics. Google's terms, privacy practices, and retention rules apply; RingMatcher does not control Google's retention period. Questions-only Ringprints also use the matching request described above; a local fallback is available when AI matching cannot finish.

The protected Google Play app-review path sends the reviewer access code and random installation UUID to RingMatcher. The server compares a one-way code digest, enforces network and installation limits, and persists only the code digest, installation digest, synthetic draft/claim/access identifiers, pack and product identifiers, and timestamps—not the plaintext review code. It returns signed, expiring plan capabilities to device-only SecureStore. This review path does not open billing or create a charge.

An unclaimed purchase draft expires after 7 days. Retrying an unclaimed, unreserved draft near expiry can renew its 7-day window while preserving the same purchase binding. One prior capability hash may be retained alongside the current hash so an in-flight request can still use its original token until that token expires. After a successful claim, its draft and claim digest mapping are retained through the paid access window so refunds and voided purchases can be reconciled. The draft capability still expires after 7 days. Paid access expires after 30 days for Shortlist or Complete Plan and after 90 days for Together Plan. Refunded grants are marked revoked and retained only through their original access expiry to prevent replay. The enabled production refund worker checks Google at server startup and is scheduled hourly; it receives raw voided purchase tokens transiently and matches their keyed digests without saving the raw tokens. Expired eligible rows are pruned atomically during this maintenance and subsequent purchase-state changes. Unexpired drafts and access records are not evicted to make room for newer records.

Saved Ringprints and completed paid plans remain on the device until you remove them, the bounded local history replaces older Ringprints, app storage is cleared, or the operating system removes the app data. Removing a completed paid plan also asks SecureStore to delete its associated capability. A plan with an unfinished purchase is protected from ordinary removal because the local draft may still be needed for Google Play recovery. RingMatcher has no user account or cross-device plan library: clearing local app data, removing protected credentials, changing devices, or uninstalling can make a consumed one-time purchase or its generated plan impossible to recover. You can choose to export completed reports as PDF in supported languages or portable HTML in every language, including after the editing window ends. Exporting uses the report already on your device and does not grant editing access on another device. Shared Together exports contain the shared alignment; exporting an individual report requires its owner’s permission. Copies you choose to save or share are controlled by their selected destination and are not removed when you delete the app’s local plan. Contact contact@ringmatcher.com for privacy or server-record deletion questions.

Limites de requêtes, mesure propriétaire et journaux techniques

Le serveur peut dériver d’une adresse réseau une clé temporaire de limitation conservée uniquement en mémoire. RingMatcher consigne des étapes propriétaires du parcours sur la page d’accueil, lors de la création du Ringprint, du partage et du téléchargement, du paiement facultatif et des packs payants, ainsi que dans l’outil de recherche de vendeurs. Le contrat n’autorise que le nom de l’événement, des slugs de guide autorisés, des valeurs fixes de source, canal, pack, état, destination du CTA, emplacement du CTA ou langue régionale, des booléens et des nombres ou scores plafonnés. Il exclut les réponses, budgets, notes, textes de direction générés, URL ou chemins de page arbitraires, destinations en texte libre, identifiants de paiement, messages ou piles d’erreur, données personnelles et tout texte libre.

Les événements de recherche de vendeurs peuvent aussi inclure un type d’achat fixe et l’identifiant d’un vendeur du catalogue vérifié par RingMatcher.

Après un clic d’un guide vers le questionnaire, le stockage de session du navigateur peut conserver uniquement ces valeurs d’attribution : le slug autorisé du guide, la langue régionale et l’emplacement du CTA, ainsi que des métadonnées techniques de version et d’expiration. L’attribution est acceptée pendant 30 minutes au maximum et consommée une seule fois lors d’une demande de Ringprint attribuée. Un enregistrement expiré est ignoré et supprimé au prochain accès ; le stockage de session prend aussi fin avec l’onglet ou la session du navigateur. Ces données ne contiennent ni réponses, ni budgets, ni photos, ni coordonnées, ni identifiant de compte ou d’utilisateur.

Nous mesurons les visites de pages publiques autorisées, le début et la fin des étapes du quiz, ainsi que le type de résultat, personnalisé ou de secours. Le stockage de session du navigateur peut conserver pendant 30 minutes des catégories fixes de page d’entrée, langue, canal, campagne et étapes ; les données expirées sont supprimées au prochain accès. Les URL de provenance sont classées localement : ni URL complète, ni terme de recherche, ni identifiant personnel n’est envoyé. Ces totaux décrivent l’activité d’un onglet, pas des personnes uniques. Le site conserve vos choix et votre résultat gratuit dans le stockage local de ce navigateur pendant 7 jours au maximum après utilisation pour permettre la reprise. Les fichiers photo et le champ de notes sont exclus, mais le résultat peut refléter une note. Recommencer supprime cette session gratuite ; effacer les données du navigateur aussi. Les plans payants sont stockés séparément.

Les événements peuvent figurer dans les journaux de déploiement selon la durée de conservation de l’hébergeur. Nous conservons aussi sur notre serveur des totaux quotidiens à catégories fixes pendant 90 jours calendaires UTC ; les plus anciens sont supprimés au prochain événement. Aucun service d’analyse tiers ne les reçoit. Ces données ne contiennent ni réponses, photos, coordonnées, ni identifiants de compte ou d’utilisateur. Nous comptons aussi les offres, les résultats du paiement et les actions utiles du plan, séparément pour le site et l’application. Les totaux vérifiés de paiements, de livraisons et de remboursements proviennent des prestataires de paiement ; les paiements de test sont exclus. Des identifiants aléatoires d’événements et des références de paiement hachées évitent les doublons et sont supprimés au terme des 90 jours de conservation analytique. Ces totaux ne représentent ni des clients uniques ni une preuve de hausse des ventes.

Packs payants et Stripe

Les packs payants facultatifs utilisent Stripe pour traiter un paiement unique. RingMatcher transmet à Stripe l’adresse e-mail du reçu, le pack choisi, le montant et la devise fixés par le serveur, ainsi que des identifiants de demande et de PaymentIntent générés. Le Payment Element de Stripe recueille les informations de paiement ; RingMatcher ne reçoit ni ne conserve le numéro complet de la carte ou le cryptogramme de sécurité. Après un achat vérifié, RingMatcher envoie à cette adresse un lien vers votre plan via Resend, notre prestataire d’envoi d’e-mails ; vous pouvez aussi envoyer le lien depuis le plan à l’adresse de votre choix. Resend reçoit l’adresse et le lien, qui contient le plan lui-même (pour Couple’s Edition, la page d’alignement commune). Les conditions et la durée de conservation de Resend s’appliquent.

Les métadonnées Stripe contiennent uniquement des identifiants générés, l’état du paiement et de l’exécution, et un hachage à sens unique lié à l’accès du navigateur, jamais les réponses au questionnaire, les photos, les notes privées ou le contenu du plan. Les cookies HttpOnly et SameSite propres à chaque pack peuvent durer jusqu’à 100 jours, et un enregistrement de paiement en attente jusqu’à 30 jours dans le stockage local de ce navigateur. Les conditions et la politique de confidentialité de Stripe s’appliquent.

Sur le site de production, les sessions de plans payants sont conservées sur un volume serveur protégé et restaurées après les redémarrages et déploiements courants. Les sessions Shortlist et Complete Plan expirent après 30 jours ; celles de Couple’s Edition après 90 jours. RingMatcher peut supprimer une session plus tôt lorsqu’une demande de suppression est exécutée. Les détails et évaluations des finalistes sont conservés avec la session du plan. Une modification remplace un finaliste existant sans prolonger l’accès. La création de PDF sur le serveur nécessite un accès actif. Si le plan reste enregistré dans ce navigateur, une copie HTML locale peut être exportée après expiration ; effacer les données du navigateur peut la supprimer. Le plan téléchargé ne rétablit pas les outils payants. Pour Complete Plan et Couple’s Edition achetés sur le site, RingMatcher envoie à OpenRouter et au fournisseur de modèles d’IA vers lequel il achemine la demande les réponses et le Ringprint du plan (sans la note facultative), vos demandes d’ajustement et les détails des finalistes que vous saisissez, y compris les notes de devis, afin de rédiger le plan, avec des paramètres de non-conservation et de refus de collecte demandés. Si ce service est indisponible, un plan fondé sur des règles est utilisé à la place.

Ce que RingMatcher ne vend pas

RingMatcher ne vend ni bagues ni données personnelles. Si les comptes, le paiement, l’analytique, le stockage ou les fournisseurs de modèles changent, cette page doit être revue avant la mise à disposition du service modifié. Écrivez à contact@ringmatcher.com pour toute question de confidentialité.