Privacy Policy
Last updated: [DD/MM/YYYY]
This policy explains what SahiNumber does with information when you use sahinumber.com. We built the site to need as little about you as possible. We never ask for your email address or phone number, we have no user accounts, and we don't store your date of birth, name or numbers.
That does not mean we hold no personal data at all. We keep a few order and payment records, described below, which the law treats as personal data. This page lists all of it.
Who we are
SahiNumber is run by [LEGAL NAME OF PROPRIETOR], a [sole proprietorship] trading as SahiNumber, at [POSTAL ADDRESS]. Under the Digital Personal Data Protection Act, 2023 (DPDP Act) we are the "data fiduciary" for the data described here. You can reach us at support@sahinumber.com, or reach our grievance officer (details at the end of this page).
In short
- Free calculators run in your browser. What you type there is not sent to us.
- A paid comparison sends your inputs to our server so it can work out the ranking. They are used in memory and discarded straight after. They are not written to our database or our logs.
- We keep an order record with an order ID, the payment IDs from Razorpay, amounts, status, timestamps and a keyed "fingerprint" of your inputs. These are pseudonymous personal data. We keep them for 3 years for tax and accounting.
- Your report lives in your private link and on your device. We don't keep a copy.
- Razorpay handles the payment under its own privacy policy. It may ask for your phone number or email. We don't receive or store those.
- Analytics and advertising tools will run only if you agree to them. They are not switched on yet.
What we process, and why
Free calculators
The mobile number, name and vehicle number calculators do all their maths in your browser. Your date of birth, name and numbers stay on your device. If you move from a calculator to Compare, the number you checked is passed along inside the same browser tab (see "On your device" below), not through our server or the web address.
Paid comparison (Compare and Choose)
When you pay for a comparison, your browser sends your date of birth, the numbers you are comparing, your name if you entered one, and your chosen language to our server over an encrypted (HTTPS) connection. Our server uses them, in memory, to:
- work out a fingerprint: a keyed code made from your inputs, so that one payment can only ever unlock one set of inputs (more on this below);
- seal your inputs into an encrypted report link that only you hold;
- create the order with Razorpay.
The inputs themselves are then discarded. They are never written to our database, and our logs on this step are limited to a fixed list of harmless fields (such as the order ID and product), so they can't hold your inputs.
Viewing your report
Each time you open your report, the page sends the encrypted part of your link to our server. The server decrypts it in memory, checks the order is paid and the fingerprint matches, works out your report, sends it back to your browser and discards the inputs again. Nothing about the report is saved on our side.
Recovering a lost report
On Recover my report you enter the same inputs again plus your Razorpay payment ID (it starts with pay_). Our server checks the payment with Razorpay, finds the order, recomputes the fingerprint and compares it. If it matches, you get a fresh report link. The inputs are discarded the same way. To stop guessing, we count failed attempts against the order (a number and a time, nothing else), and lock recovery for 24 hours after 10 failures.
Refund requests
When you ask for a refund on your report page, we record the order ID, a reason picked from a fixed list, and the time. There is no free-text box, so you can't type personal details by mistake. See the Refund and Cancellation Policy.
Emails you send us
If you write to us, we receive your email address and whatever you write. We use it only to reply to you, and delete the conversation 90 days after your question is resolved. Please don't send your date of birth or numbers: the order ID or payment ID is all we need. Our mailbox is hosted by [EMAIL PROVIDER, e.g. Zoho Mail or Google Workspace].
Campaign tags
If you arrived from one of our ads or links, the web address may carry campaign tags (for example utm_source=instagram). We save these five tags with the order so we know which campaigns work. They describe the campaign, not you.
What we keep, and for how long
| What | Where | How long |
|---|---|---|
| Order record: order ID, product, language, amount, currency, status, calculation version, campaign tags, created and paid times | Our database (Cloudflare D1) | 3 years from the order, for tax and accounting |
| Pseudonymous IDs on the order: input fingerprint and its key version, Razorpay order ID, Razorpay payment ID, failed-recovery counter | Our database | 3 years from the order |
| Orders that were never paid | Our database | Deleted automatically after 24 hours |
| Refund requests: order ID, reason category, requested and resolved times, outcome | Our database | 3 years |
| Payment notifications from Razorpay: event ID, type, time received, and a one-way hash of the notification with contact fields removed first | Our database | Deleted automatically after 90 days |
| Database backups (copies of the rows above) | A private Cloudflare R2 storage bucket, plus Cloudflare's 30-day restore history for the database | Deleted automatically after 90 days (restore history: 30 days) |
| Emails you send us | Our mailbox | 90 days after your question is resolved |
| Service logs (see below) | Cloudflare | [CONFIRM: Workers Logs retention for our Cloudflare plan] |
| Your report links | Only on your device | Until you delete them |
| Your name, date of birth, candidate numbers, email, phone | Not kept anywhere on our side | Not applicable |
A daily automatic job deletes unpaid orders and old payment notifications. After 3 years, order records are deleted as part of the same retention procedure.
Service logs
Our hosting records basic technical details of each request: the page or address path, the time, the response status and how long it took. Our own code adds short event lines such as "order created" with the order ID. We never log request bodies, the part of a link after #, the part after ?, payment IDs, fingerprints or IP addresses. [TO BE CONFIRMED WITH LAWYER: whether the CERT-In Directions 2022 require us to keep access logs for 180 days. If they do, we will keep access logs only, with the same exclusions, and update this page.]
Pseudonymous personal data: what that means here
The fingerprint is a code made from your inputs with a secret key that only our server holds (technically, HMAC-SHA-256). It can't be turned back into your date of birth or numbers, and without the key nobody can test guesses against it. We use it only to check that a report or recovery request matches the order that was paid for.
The Razorpay order and payment IDs let Razorpay, and anyone holding your Razorpay receipt, connect an order to a payment.
On their own these don't say who you are. But combined with other information (your inputs, or Razorpay's records) they could relate to you, so we treat them as personal data under the DPDP Act and protect them the same way.
Your report link
Your report link looks like sahinumber.com/r/ORDER-ID#.... The part after # is your inputs, encrypted with a key only our server holds. Browsers never send that part to a server when the page loads, so it doesn't appear in our logs or anyone else's. The report page sends it to us only to show you the report, as described above.
The report page loads no outside scripts at all: no analytics, no advertising pixels. It tells browsers not to pass the address on to other sites, and asks search engines not to list it.
Anyone who has your full link can open your report. Treat it like a private document: share it only with people you trust.
On your device
We store a few small items in your browser. None of them is sent to us, except the language cookie.
| Name | Type | What it holds | How long |
|---|---|---|---|
sn_lang | Cookie (needed for the site to work) | The language you picked, Hindi or English, so pages open in it | 1 year |
sn_my_reports | Browser storage (localStorage) | "My reports": the order ID and link of each report you opened on this device | Until you remove it |
sn:recovery-saved:… | Browser storage (localStorage) | A note that you saved the recovery card for an order, so we stop reminding you | Until you clear site data |
sn:compare-prefill | Tab storage (sessionStorage) | A number you checked in a calculator, passed to Compare | Removed as soon as Compare reads it, or when you close the tab |
sn:name-system | Tab storage (sessionStorage) | Which letter system you picked on the name calculator | Until you close the tab |
The language cookie is sent to our server with each page request so we can show the right language. It holds only hi or en.
To remove report links, open My reports and tap "Remove from this device", or clear this site's data in your browser settings. Clearing site data removes everything in the table. Keep your recovery card or PDF if you want to open the report again later.
Who else receives data
Razorpay (payments)
Payments are handled by Razorpay Software Private Limited. Razorpay acts as an independent party under its own privacy policy. Its checkout may ask for your phone number, email, UPI ID or card details. Those go to Razorpay, not to us.
We don't fill in any contact details for Razorpay. We send it only the amount and our order ID. Razorpay sends us back the payment ID, amount and status. Its payment notifications to our server can include the contact details you gave Razorpay. Our code removes those fields as soon as a notification arrives, before anything is stored or logged.
Cloudflare (hosting and security)
The site runs on Cloudflare (Cloudflare, Inc.): its servers deliver the pages, run our code, and hold our database and backups. Like any web host, Cloudflare sees your IP address and basic request details to deliver pages and protect the site from attacks. Our code uses your IP address only as a short-lived counter to slow down repeated requests (counters last about a minute), and never stores it. Cloudflare processes data under its own privacy policy. Cloudflare's network is global, so data may be processed outside India. [CONFIRM: D1 database location hint chosen at provisioning.]
Cloudflare Turnstile (bot check)
On the pay step of Compare and on the Recover page, Cloudflare Turnstile checks in the background that you are a person and not a bot. It doesn't show a puzzle to normal visitors. To do this it reads technical signals from your browser and sends them to Cloudflare. When our server checks the result with Cloudflare, it also passes your IP address to Cloudflare for that check; we don't store it. Turnstile is the only outside script on the Recover page, and the Recover page has no report link in its address.
Analytics and advertising (only with your consent, not switched on yet)
At the time of writing, none of the tools below is running on the site. We plan to add them with a consent banner, which is still being built. When they are added:
- PostHog or Google Analytics 4 will receive anonymous usage events, such as "calculator used" or "comparison started", with only the calculator type, page type and language. These tools set their own cookies. Recording of what you type and session recordings will be turned off. They will load only if you agree.
- Meta Pixel and Meta Conversions API (for measuring our Facebook and Instagram ads) will receive your IP address, your browser's user agent, Meta's own
fbp/fbccookies and an event ID. For a purchase, our server also tells Meta that a purchase happened. We send no email, phone number or inputs to Meta, and Meta's automatic form matching will be off. They will load only if you agree. - Cloudflare Web Analytics will count page views without cookies and without identifying you.
None of these tools will ever run on the report page or the Recover page, and no analytics event will carry your inputs, report link or payment ID. We will update this section when the consent banner goes live.
Error reporting
If we add an error-reporting service, it will be set up to drop request bodies, cookies, IP addresses and everything after ? or # in addresses before anything leaves our server.
Nobody else
We don't sell, rent or share data with anyone else, except where the law requires us to (for example, a lawful request from a government authority).
Age
The paid service is for people aged 18 or over, and we ask you to confirm this before you pay. We don't knowingly take payments from children. If you enter details about another person, such as a family member, please make sure they are happy for you to do so.
Your rights
Under the DPDP Act you can ask us to:
- tell you what personal data we hold about you and how we use it;
- correct or delete it;
- explain anything in this policy;
- nominate someone to use these rights for you if you die or can't act yourself.
You can also withdraw any consent you have given (for example to analytics, once the consent banner is live) at any time, as easily as you gave it.
How to ask. Email our grievance officer with your order ID or payment ID. We can't identify you any other way, because we don't know your name, email or phone. We will never ask for your date of birth, numbers or name.
What deleting means here. We delete the order record by its order or payment ID. After that your report link and recovery stop working. Where tax or accounting law requires us to keep a record of the payment (amount, date and payment ID), we keep only that, and only for as long as the law requires.
We reply within [FOUNDER: e.g. 7 days] and complete requests within [TO BE CONFIRMED WITH LAWYER: timeline under the DPDP Rules 2025]. If you are not satisfied with our answer, you can complain to the Data Protection Board of India.
How we protect data
- Report links are encrypted with AES-256-GCM. Fingerprints use HMAC-SHA-256. The keys are kept as encrypted secrets in Cloudflare, never in our code.
- The site only works over HTTPS, and a strict content security policy limits which outside scripts can run on each page.
- Only the founder can access the database and the Razorpay dashboard, with two-factor authentication on every account.
- We keep as little as possible, so even in a breach there would be no names, dates of birth, numbers, emails or phone numbers to lose.
If there is a data breach
If we find a breach affecting personal data, we will contain it, work out what was affected, and report it to CERT-In and the Data Protection Board of India within the time limits the law sets [TO BE CONFIRMED WITH LAWYER: CERT-In 6 hours; Data Protection Board without delay, detailed report within 72 hours]. Because we have no contact details for anyone, we will tell affected users through a notice on this website, saying what happened, what data was involved and what you can do.
Changes to this policy
When we change this policy, we update the date at the top. If a change affects what we collect or who receives it, we will also show a notice on the site before it takes effect.
Grievance officer
For any question or complaint about privacy or about this policy:
- Name: [GRIEVANCE OFFICER NAME]
- Email: [GRIEVANCE EMAIL, e.g. support@sahinumber.com]
- Address: [POSTAL ADDRESS]
We acknowledge complaints within [FOUNDER: e.g. 24 hours] and aim to resolve them within [FOUNDER: e.g. 15 days]. More ways to reach us are on the Contact page.