SEA Test ID Generator

Generate checksum-valid synthetic national IDs for Singapore, Indonesia, Malaysia, Thailand, and Vietnam — pin gender, birth date, and region, then batch-export. Test fixtures only, 100% in your browser.

Synthetic test data only. These IDs are checksum-/structure-valid but not real — they match no government registry and will not pass an identity or KYC check. Use for software testing and development only, never to impersonate a person.
Country
16 digits: PP·KK·SS·DDMMYY·#### (e.g. 3171015708950001)
About

About SEA Test ID Generator

QA engineers and developers across Southeast Asia constantly need format- and checksum-valid national-ID numbers as test fixtures — to seed databases, exercise validation logic, and build KYC/onboarding flows without touching real personal data. Single-country generators exist, but none unifies all five major SEA formats and lets you pin demographic fields so the generated ID is structurally correct for a chosen profile. This tool does: pick a country, optionally fix gender, birth date, and region, and it emits IDs whose check digits and encoded fields are internally consistent.

Each country is handled with its real structure. Singapore NRIC/FIN uses the weighted mod-11 check letter (with the correct S/T/F/G and the 2022 M-series rule). Indonesia's 16-digit NIK encodes the province/regency/district, a birth date where the day is offset by 40 for females, and a serial. Malaysia's MyKad encodes birth date, place-of-birth state, and a gender parity digit. Thailand's 13-digit ID carries the weighted mod-11 check digit. Vietnam's 12-digit CCCD encodes a province code plus a combined gender-and-century digit. The Validate tab runs the same logic in reverse to check and decode any ID you paste.

Everything runs locally in your browser — nothing is uploaded. Critically, these are synthetic fixtures: a checksum-valid ID is not a real, issued identity, matches no government registry, and will not pass a real identity check. Use them only for software testing and development, never to impersonate a person or defeat a KYC/verification process.

How to use SEA Test ID Generator

  1. Choose a country

    Select Singapore, Indonesia, Malaysia, Thailand, or Vietnam. The controls adjust to what that country's ID actually encodes.

  2. Pin demographics (optional)

    Set gender, birth date/year, and region where the format supports them. Leave any field on Any/random to let the generator fill it.

  3. Generate a batch

    Pick a count (1–100) and generate. Copy any ID, copy all, or export the batch as CSV or JSON.

  4. Validate an existing ID

    Switch to the Validate tab, paste an ID for the selected country, and see whether its checksum/structure is valid and what it decodes to.

Frequently asked questions