Free telecom & identity tools · runs in your browser
Free tool
South African ID Number Generator & Validator
Generate valid test South African ID numbers with scannable barcodes — by age or exact date of birth, gender and citizenship — or paste an ID number to check its date, gender and Luhn check digit.
SA ID Generator
Choose a date of birth and gender. The date, gender sequence and citizenship digits are set from your inputs; the check digit is calculated with Luhn.
SA ID Validator
Paste a 13-digit ID number to check the date of birth, gender, citizenship and Luhn check digit.
How a South African ID number is structured
An SA ID number is 13 digits and every one of them means something. Taking 800101 5009 0 8 7 as an example:
| Digits | Segment | Meaning |
|---|---|---|
| 800101 | YYMMDD | Date of birth — 1 January 1980. Only two year digits are stored, so the century is inferred from context. |
| 5009 | Gender sequence | 0000–4999 female, 5000–9999 male. The sequence also distinguishes people born on the same day. |
| 0 | Citizenship | 0 for a South African citizen, 1 for a permanent resident. |
| 8 | Legacy digit | Historically a race classifier under apartheid. No longer used — it is 8 on all modern ID numbers. |
| 7 | Check digit | A Luhn (ISO/IEC 7812) check digit over the preceding twelve digits, used to catch typing and scanning errors. |
Because the date of birth and gender are encoded in the number itself, an ID number is self-describing — which is exactly why validation rules in registration and KYC systems check the date and the checksum rather than just the length.
Why generate test ID numbers?
Any system that accepts an SA ID number needs realistic data to test against — SIM registration and RICA flows, bank and mobile-money onboarding, KYC and AML checks, government service portals, and the barcode scanners used at enrolment desks.
Using real ID numbers in a test environment is both a privacy risk and, under POPIA, a compliance one. Synthetic numbers that are structurally valid let you exercise the same code paths — format checks, date parsing, gender derivation, checksum validation, barcode scanning — without any real personal information ever entering your test systems.
