Developer Tools

A Valid Check Digit Is Not an Identity

A checksum rules out typos. It does not say a number was ever issued, and it says nothing about who holds it - so a system that reports "verified" on the strength of one is reporting something it did not check. Most implementations go further in the wrong direction and check only that there are thirteen digits: change 5009 to 5109 inside 8001015009087 and a format check accepts it, while the check digit catches it immediately. And 8002305009084 passes the checksum with a date of 30 February, which is why validity here needs all three of length, check digit and a possible date. The date itself is six digits, so 800101 is 1980 or 2080 and nothing in the number decides - both readings are shown rather than one being guessed.

← All products
Developer Tools

Developers validating identifiers at the edge of a form, and teams building test fixtures who need numbers that are internally consistent without pretending to be anyone's.

How it works

  1. Paste a number to check; the table says which of the three conditions it meets.
  2. Read the row detail: what failed, both possible dates, and what the number discloses.
  3. Enter twelve digits to get the check digit that makes them consistent, for test data.
  4. Compare the thirteen-digit count with the fully-valid count - the gap is what a format check waves through.

What you gain

  • Tells you when a number that passes every format check is still impossible — a consistent checksum with a birth date that cannot exist — before you rely on it as someone's identity.

Screenshot

Technical details

Standard10.99 USD · 1500 requests · 31-day license · one-time payment · 31-day access
Pro21.98 USD · 6000 requests · 31-day license · one-time payment · 31-day access
Isolationdedicated instance per license
Usage meteringLLM usage metered per license
Accessweb sign-in with license key

How to set up & use

  1. Buy the license — your key (lic_...) appears on the order page and in your email.
  2. Sign in at app.synoriaai.com with your license key.
  3. No installation — the product runs in your browser, on your own isolated instance.
  4. 1. Open the tool page and enter a 13-digit number in the input field.
  5. 2. Click the 'Check' button to see if the check digit matches and the date is valid.
  6. 3. Review the result: it will show whether the number is 'consistent' (checksum passes) and whether the date exists, including both century readings.
  7. 4. If you want to test a custom number, use the 'Add number' section to label and submit it for validation.
  8. 5. Use the 'Compute check digit' field to generate a check digit for a 12-digit prefix, and note the result is labeled 'consistent', not 'valid'.

Frequently asked questions

Does this tool verify if a number belongs to a real person?

No. It only checks internal consistency—the check digit and date plausibility. It does not access any registry or database, so it cannot confirm issuance or identity.

What does it mean when a number passes the checksum but has an impossible date?

The tool will flag it as inconsistent overall. A passing checksum only means the digits agree with each other; the date check is separate, and both must hold for a 'valid' result.

Is my input data stored or shared?

No. All processing happens locally in your browser; numbers you enter are not sent to a server or stored. The tool only performs arithmetic on the digits you provide.

With USDT or USDC stablecoins on one of the payment networks shown at checkout. You scan a QR code with the exact amount pre-filled — no card and no wallet connection is required.
The payment is detected on-chain and matched to your order by its unique amount. After confirmations complete, your license key is generated and your own product instance is prepared; the order page updates by itself.
No. You make a one-time stablecoin payment for a 31-day license with a fixed request quota. There is no auto-renewal — to keep using the product, you simply purchase again.
Each plan includes a fixed number of requests for the license period. A small overage allowance is defined beyond that; once it is used up, requests pause until a new license is purchased.
Yes. Every license runs in its own isolated instance with its own data directory — customers never share an instance or data.
On-chain payments are never lost. Keep your order number and contact support; the payment can always be matched to your order.
Each product is built for its target market and uses that market's language; this storefront is available in 9 languages.

Related products