Check one candidate ID free — no account requiredFree South African ID checker

Recruitment & HR

South African ID Validation for HR & Recruitment

Stop mistyped ID numbers from reaching payroll, contracts, and access cards. CheckID checks structure and checksum in under a second, then you continue with the screening your role actually requires.

Where it fits in hiring

  1. 1. Job application captures a 13-digit SA ID number
  2. 2. CheckID structural validation (checksum, date, citizenship digit)
  3. 3. Invalid → candidate corrects it before onboarding
  4. 4. Valid → continue to background or other checks if required
  5. 5. Clean number reaches payroll / HRIS

Catch errors before payroll

Payroll and tax file rejections

A transposed digit in a new-hire file can stall SARS submissions, medical-aid capture, and first-pay runs. Structural validation flags impossible dates and failed checksums before HR operations spend hours chasing the candidate.

Duplicate ATS records

Recruiters paste IDs from CVs, WhatsApp, and application forms. Invalid numbers create duplicate people records that never merge cleanly with your HRIS.

Wasted screening spend

Sending an invalid ID to a background-check or qualification vendor wastes budget. Filter format failures first, then pay for deeper checks only on structurally valid numbers.

Two ways HR teams validate IDs

Use the web checker for one-off offer packs. Connect the API when applications should fail fast inside the ATS.

Validate IDs inside an ATS

Call the REST endpoint when a candidate submits an application. If the number fails checksum or date rules, ask them to correct it before creating the employee file.

Start with the South African ID validation API. API Starter covers single production calls; bulk ATS imports need Professional.

POPIA considerations for candidate IDs

Minimise what you collect at apply time

An application form often only needs to know whether the ID number is structurally valid before you store a people record. Prefer validating at the point of capture over emailing ID-book scans to a shared inbox.

Retention lives in your HRIS, not CheckID

CheckID does not keep the candidate number. If you retain IDs for payroll, SARS, or employment equity reporting, that is your lawful-purpose and retention decision. Read POPIA and ID number handling.

What CheckID does not replace in HR

  • Home Affairs identity confirmation or smart-card authenticity checks
  • Criminal, credit, or qualification background checks — see What a background check is — and is not
  • Right-to-work, visa, or immigration status reviews
  • Reference checks, psychometric tests, or interview scoring

Hiring use cases

Corporate HR operations

Validate IDs on offer acceptance so payroll, medical aid, and access-card forms start with a number that can actually pass checksum rules.

Recruitment agencies

Clean inbound CV lists before submitting candidates to clients. Professional bulk keeps agency volume off one-by-one web checks.

Graduate and volume hiring

Assessment-centre days produce hundreds of forms. Reject invalid IDs at registration instead of discovering them when contracts go out.

Example: validate a candidate ID from your ATS

After a candidate submits a 13-digit ID, your ATS can call the single-ID endpoint, then create the application only if isValid is true.

# ATS webhook after a candidate submits an ID number
curl -s "https://api.checkid.co.za/api/v1/validate/8001015009087" \
  -H "Authorization: Bearer YOUR_API_KEY"

8001015009087 is the public sample ID used across CheckID docs — not a live customer number. Replace YOUR_API_KEY with a key from your dashboard. See the South African ID validation API and 5-minute South African ID validation API tutorial.

Pricing for recruitment and HR teams

Free checker for offer-pack spot checks. API Starter from R99/month for live ATS calls. Professional for bulk lists and team seats. Compare the full grid on CheckID pricing for API and bulk plans.

Frequently asked questions

Does CheckID confirm that a candidate is who they say they are?

No. CheckID validates the structure of a South African ID number and decodes date of birth, age, gender, and citizenship indicator. It does not query Home Affairs and does not replace background checks, qualification checks, or right-to-work reviews.

Can we batch-check a candidate spreadsheet?

Yes, on Professional. API Starter (R99/month) is for up to 1,000 single production calls. Spreadsheet and bulk API imports are a Professional (or Business) workflow, not part of API Starter.

Does CheckID store candidate ID numbers?

No. ID numbers are processed in memory and discarded after the response is returned. What you keep in your ATS, HRIS, or payroll file remains your organisation’s POPIA responsibility.

Can we validate IDs inside our ATS?

Yes. Call the REST API when a candidate submits an application, then block or flag invalid numbers before the record is created. See the South African ID validation API developer guide.

Keep invalid IDs out of payroll

Check one number free, then automate the same structural check in your ATS.