As respostas que você envia
O fluxo gratuito processa as respostas de estilo e compra escolhidas por você e uma observação opcional. Elas são enviadas ao servidor da RingMatcher somente quando você solicita um resultado e são usadas para criar e validar esse resultado.
No site e no app nativo, o servidor da RingMatcher encaminha essas respostas e a observação opcional à OpenRouter, que as direciona a um provedor de modelos de IA para redigir o resultado. Configurações de retenção zero e recusa de coleta são solicitadas. Em seguida, o servidor verifica se o resultado respeita suas escolhas; se o serviço de IA estiver indisponível ou o resultado não passar nessa verificação, um resultado baseado em regras é criado no lugar.
Imagens opcionais e processamento por IA
As fotos são opcionais e uma foto do rosto nunca é exigida. Até três imagens são reduzidas no navegador e podem passar pelo servidor da RingMatcher para o provedor de IA configurado naquela solicitação. A RingMatcher não salva intencionalmente os arquivos enviados. Configurações de retenção zero e recusa de coleta são solicitadas, mas a infraestrutura, os termos e as obrigações legais do provedor continuam aplicáveis.
As instruções permitem apenas pistas visuais de design e proíbem identificação ou inferência de características sensíveis. Textos ou instruções dentro da imagem são ignorados.
Links compartilhados
Um link compartilhado contém no fragmento da URL o resultado visível, a rota de diamante escolhida, a faixa de orçamento e o idioma do conteúdo. Nunca contém os arquivos de imagem enviados. Qualquer pessoa com o link pode ler as informações codificadas; revise antes de enviar.
Um fragmento limitado pode transferir os campos visíveis do Ringprint para o buscador de varejistas. Ele não é enviado com a requisição HTTP da página e é retirado da barra de endereço após a importação, mas quem possuir o link ainda não importado poderá lê-lo.
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 solicitações, medição própria e logs técnicos
O servidor pode derivar de um endereço de rede uma chave temporária de limitação mantida apenas na memória. A RingMatcher registra marcos próprios do funil na página inicial, na criação do Ringprint, em compartilhamentos e downloads, no checkout opcional e nos fluxos dos pacotes pagos e no localizador de varejistas. O contrato permite somente o nome do evento, slugs de guia permitidos, valores fixos de origem, canal, pacote, status, destino do CTA, posicionamento do CTA ou localidade, booleanos e contagens ou pontuações limitadas. Exclui respostas do questionário, orçamentos, notas, texto de direção gerado, URLs ou caminhos de página arbitrários, destinos em texto livre, identificadores de pagamento, mensagens ou pilhas de erro, dados pessoais e texto arbitrário.
Os eventos do localizador de varejistas também podem incluir um tipo fixo de compra e o ID de um varejista do catálogo revisado pela RingMatcher.
Após um clique de um guia para o questionário, o armazenamento da sessão do navegador pode manter somente estes valores de atribuição: o slug permitido do guia, a localidade e o posicionamento do CTA, além de metadados técnicos de versão e expiração. A atribuição é aceita por até 30 minutos e consumida uma única vez em uma solicitação de Ringprint atribuída. Um registro expirado é ignorado e removido no próximo acesso; o armazenamento da sessão também termina com a aba ou sessão do navegador. Esses dados não contêm respostas do questionário, orçamentos, fotos, dados de contato nem identificadores de conta ou usuário.
Medimos visitas a páginas públicas permitidas, início e conclusão de etapas do quiz e resultados personalizados ou alternativos. O armazenamento da sessão pode manter categorias fixas de página de entrada, idioma, canal, campanha e etapas por até 30 minutos; dados vencidos são removidos no próximo acesso. URLs de origem são classificadas localmente; não enviamos URLs completas, termos de busca ou identificadores pessoais. São contagens de atividade de abas, não de pessoas únicas. O site salva suas escolhas e o resultado gratuito no armazenamento local deste navegador por até 7 dias após o uso, para você retomar. Fotos e o campo de notas não são salvos, mas o resultado pode refletir informações de uma nota. Começar de novo ou limpar os dados do navegador remove essa sessão gratuita. Os planos pagos são salvos separadamente.
Os eventos podem aparecer nos logs de implantação conforme a retenção da hospedagem. Também guardamos totais diários com categorias fixas no servidor por 90 dias de calendário UTC, removendo os anteriores no próximo evento. Não são enviados a serviços de análise de terceiros. Não contêm respostas, fotos, contatos nem identificadores de conta ou usuário. Também contamos ofertas, resultados do checkout e ações úteis do plano, separadamente no site e no app. Totais verificados de pagamentos, entregas e reembolsos vêm dos provedores de pagamento; excluímos pagamentos de teste. IDs aleatórios de eventos e referências de pagamento em hash evitam duplicidades e são excluídos após os 90 dias de retenção analítica. São totais de eventos, não clientes únicos nem prova de aumento nas vendas.
Pacotes pagos e Stripe
Os pacotes pagos opcionais usam a Stripe para processar um pagamento único. A RingMatcher envia à Stripe o e-mail do recibo, o pacote escolhido, o valor e a moeda definidos pelo servidor e identificadores gerados da solicitação e do PaymentIntent. O Payment Element da Stripe coleta os dados de pagamento; a RingMatcher não recebe nem armazena o número completo do cartão ou o código de segurança. Após uma compra verificada, a RingMatcher envia a esse endereço um link para o seu plano por meio da Resend, nosso provedor de envio de e-mails; você também pode enviar o link a partir do plano para o endereço que escolher. A Resend recebe o endereço e o link, que carrega o próprio plano (na Couple’s Edition, a página de alinhamento compartilhada). Os termos e a retenção da Resend se aplicam.
Os metadados da Stripe contêm apenas identificadores gerados, o estado do pagamento e do cumprimento e um hash unidirecional vinculado ao acesso do navegador, nunca respostas do questionário, fotos, notas privadas ou conteúdo do plano. Cookies HttpOnly e SameSite de cada pacote podem durar até 100 dias, e um registro de pagamento pendente pode permanecer por até 30 dias no armazenamento local desse navegador. Os termos e a política de privacidade da Stripe se aplicam.
No site de produção, as sessões de planos pagos são mantidas em um volume protegido do servidor e restauradas após reinicializações e implantações rotineiras. As sessões de Shortlist e Complete Plan expiram após 30 dias; as de Couple’s Edition, após 90 dias. A RingMatcher pode excluir uma sessão antes ao concluir uma solicitação de exclusão. Os detalhes e as análises dos finalistas ficam na sessão do plano. Editar substitui um finalista existente sem estender o acesso. Gerar PDF no servidor exige acesso ativo. Se o plano continuar salvo neste navegador, você pode exportar uma cópia HTML local após o prazo; limpar os dados do navegador pode apagá-la. O plano baixado não restaura as ferramentas pagas. Para Complete Plan e Couple’s Edition comprados no site, a RingMatcher envia à OpenRouter e ao provedor de modelos de IA escolhido por ela as respostas e o Ringprint do plano (sem a observação opcional), suas solicitações de ajuste e os detalhes dos finalistas que você informar, incluindo notas de orçamento, para redigir o plano, com configurações de retenção zero e recusa de coleta solicitadas. Se esse serviço estiver indisponível, é usado um plano baseado em regras.
O que a RingMatcher não vende
A RingMatcher não vende anéis nem dados pessoais. Se contas, pagamento, análise, armazenamento ou provedores de modelos mudarem, esta página deverá ser revista antes da oferta pública do serviço alterado. Envie dúvidas de privacidade para contact@ringmatcher.com.