SentraMind
← Demonstrations and tools

Country ID validator

Check whether an identifier is structurally valid for Singapore, Malaysia, Indonesia, Thailand or Vietnam. The real checksum arithmetic, running in your browser. Structure only — never identity.

Country ID validator detector pack v2026.08 · deterministic layer Browser demonstration
What this page will not do
  • Send what you type anywhere. There is no request to make one with: this page contacts no origin at all, including ours.
  • Tell you who anyone is. It checks structure — a check digit, a date field, a province code. A structurally valid identifier is not a real person, and we hold no registry to ask.
  • Remember it. Nothing is stored, in this page or anywhere else. Reload, or press Clear, and it is gone.
All samples are synthetic. Nothing you type leaves this page. There is no reason to use anything other than a sample.
1 of 7 validators accepted this candidate.
Structural validators and their result for the current candidate
ValidatorClassResultWhy / what it requires
Singapore NRIC / FINid.sg.nricMATCHprefix-weighted checksum verified
Malaysia MyKadid.my.mykadNO MATCH12 digits, YYMMDD-PB-####G; there is no check digit — validated by date plausibility, the place-of-birth code table, and the trailing gender digit.
Indonesia NIKid.id.nikNO MATCH16 digits: a province code, a DDMMYY date field (+40 added to the day for women), and a four-digit serial; there is no checksum.
Thailand national IDid.th.pidNO MATCH13 digits with a mod-11 weighted check digit: weights 13 down to 2, check = (11 − sum mod 11) mod 10.
Vietnam CCCDid.vn.cccdNO MATCH12-digit số định danh cá nhân; province code, century/gender digit and birth year are structural, and there is no checksum.
Payment cardfinance.panNO MATCH13–19 digits satisfying the Luhn (mod-10) checksum used by payment card networks.
IBANfinance.ibanNO MATCHTwo-letter country code, two check digits and a BBAN, validated against the ISO 13616 mod-97 checksum.
These are the structural checks implemented in the current detector package — the SG prefix-weighted checksum, MyKad's place-of-birth and gender fields (there is no check digit to verify), the NIK +40 day-offset, the Thai mod-11 digit, the Vietnamese province and century/gender structure, Luhn, IBAN mod-97. They establish that a string is shaped like an identifier. They cannot establish that it belongs to anyone, and nothing here is checked against any registry.

What is real here

  • The same detector module the prompt sandbox imports — no second implementation.
  • NRIC prefix-weighted checksum with per-series letter tables
  • MyKad contextual validation — there is no check digit to verify
  • NIK province codes and the +40 day-offset for women
  • Thai mod-11 check digit; Vietnamese province and century/gender structure
  • Luhn and IBAN mod-97

What this is not

  • Identity verification — it checks structure, never against any registry.
  • An identifier generator. A public "make me a valid NRIC" button is a fraud tool.
  • Bulk or batch validation, file upload, or any storage of what you type.
  • Coverage for jurisdictions outside the five packs (SG, MY, ID, TH, VN).