Hospitals, practices & pharmacies

POPIA-aware patient ID validation at registration

CheckID checks the structure of a 13-digit SA ID number in under a second. Reception staff can read the result without decoding the number themselves. CheckID stores none of the ID data you check.

Check one patient ID free. No credit card required.

Where it fits in admissions

  1. Patient or guardian provides a 13-digit SA ID
  2. CheckID structural validation (checksum, date, citizenship digit)
  3. Invalid → correct the number before creating a file
  4. Valid → auto-fill age/DOB fields in your own system
  5. Clinical and medical-aid checks continue in your workflow

Catch bad IDs before they duplicate the patient file

Duplicate MPI records

A mistyped ID at casualty creates a second medical record. Structural validation will not merge files, but it stops impossible numbers from becoming a new patient ID.

Queue time at reception

Staff should not mentally calculate age from the first six digits while a queue builds. The API returns age and date of birth for your system to display.

Extra copies of patient IDs

Emailing ID-book photos to a shared inbox creates POPIA risk. Validate the number at the desk; keep scans only if your clinical process needs them.

Two ways facilities validate patient IDs

Use the web checker at a single desk. Connect the API when registration software should fill demographics automatically.

Practice-management and EMR integration

When creating a patient record, call the single-ID endpoint, then write decoded age and date of birth into fields you already store. CheckID never keeps the payload.
Follow the South African ID validation API. Bulk historical clean-up of a patient list needs Professional, not API Starter.

Front-desk web checks

Smaller practices can check one ID at a time with the free checker when a paper form arrives with a number that does not look right.

POPIA considerations for patient IDs

Special personal information

Health records are highly sensitive. A vendor that stores ID numbers keeps another copy of patient information. CheckID is designed so the ID never lands on our disk, logs, or analytics.

Your file, your retention

Hospitals still keep IDs in the patient administration system. That retention is yours to justify. CheckID only answers whether the number is structurally valid. Read POPIA and ID number handling.

What CheckID does not replace in healthcare

  • Home Affairs verification or confirmation that the patient is the lawful holder
  • Medical-aid membership, benefit, or authorisation checks
  • Clinical identity matching, wristband protocols, or allergy reconciliation
  • HPCSA, dispensing, or schedule-medicine legal requirements beyond a format check

Healthcare use cases

Hospital admissions

Casualty and elective admissions can reject checksum-invalid IDs before a new MPI entry is created.

GP and specialist rooms

New-patient forms often copy IDs from cards. Validate structure, then continue your own medical-aid capture in the practice system.

Pharmacy counters

Use decoded age when a schedule or age-restricted product depends on date of birth encoded in the ID. This does not prove identity on its own.

Need to confirm who an ID number belongs to?

Check an ID number and name against Home Affairs records for R39.90. For applicant, tenant and customer checks. A match emails you the details as a PDF, and you get a full refund if the name does not match.

Verify with Home Affairs

Checking a company, not a person?

Look up a South African company by registration number against CIPC records, for R299. For supplier, tenant and counterparty checks. You get a PDF by email and a full refund if the company is not on the register.

Check a company

API example

Example: registration desk callback

When reception captures an ID, your practice-management system can validate it before writing a new patient row.

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.

# PMS hook on new-patient registration
curl -s "https://api.checkid.co.za/api/v1/validate/8001015009087" \
  -H "Authorization: Bearer YOUR_API_KEY"

Pricing for healthcare intake

Free checker for a single desk. API Starter from R99/month for live registration calls. Professional for bulk list clean-up and team access. See CheckID pricing for API and bulk plans.

Frequently asked questions

Does CheckID store patient ID numbers?

No. Patient ID numbers are processed in memory and discarded after the response. Your practice-management system still needs its own retention rules for clinical records.

Is this a medical-aid or Home Affairs check?

No. CheckID only validates SA ID structure and decodes date of birth, age, gender, and citizenship indicator. It does not confirm medical-aid membership, clinical identity, or Home Affairs records.

Can we connect this to a practice-management system?

Yes. Use the REST API for single registration events. Bulk historical clean-up of patient lists is a Professional plan workflow, not included in API Starter (R99/month).

How does this help POPIA-aware patient intake?

It lets reception validate the number without sending the raw ID to an extra storage vendor. CheckID keeps no copy. You still decide what stays in the patient file.

Keep invalid IDs out of the patient file

Check one number free, then add the same structural check to registration software.