Compliance
Lawful identity checks, by construction.
The Nigeria Data Protection Act 2023 expects purpose limitation, a lawful basis, data minimisation and accountability. Speedmap builds each into the request path, so every verification carries its purpose, its consent and its audit trail, on every channel.
The framework
What the law asks for, and where Speedmap does it.
NDPA 2023 and GAID
NDPA certified
Purpose limitation
Accountability
How verification is routed
Purpose limitation
38 purpose codes. No free text.
NIMC requires a purpose for every NIN validation, and NIBSS enforces the same list. Speedmap accepts only these values as reason, on the API, in the dashboard and in the MCP tool schemas, so neither an integration nor an AI agent can invent a purpose.
Served live by GET /v1/reasons.
- 1Taxation EnrollmenttaxationEnrollment
- 2Taxation AssessmenttaxationAssessment
- 3Taxation EnforcementtaxationEnforcement
- 4Corporate Affairs DirectorcorporateAffairsDirector
- 5Corporate Affairs ShareholdercorporateAffairsShareholder
- 6Corporate Affairs TrusteecorporateAffairsTrustee
- 7Medicalmedical
- 8Education ExameducationExam
- 9Education AdmissioneducationAdmission
- 10Education PromotioneducationPromotion
- 11Employment RecruitmentemploymentRecruitment
- 12Employment EnrollmentemploymentEnrollment
- 13Employment DismissalemploymentDismissal
- 14Credit Background CheckcreditBackgroundCheck
- 15Financial ProductsfinancialProducts
- 16Insuranceinsurance
- 17Clearance For Political OfficeclearanceForPoliticalOffice
- 18Legal CourtslegalCourts
- 19Legal EnrollmentlegalEnrollment
- 20Crime Prison IncarcerationcrimePrisonIncarceration
- 21Passport ImmigrationpassportImmigration
- 22Pension EnrollmentpensionEnrollment
- 23Socio-cultural EnrollmentsocioCulturalEnrollment
- 24Entertainmententertainment
- 25Physical AccessphysicalAccess
- 26Logical Virtual AccesslogicalVirtualAccess
- 27Telecommunication Sim RegistrationtelecommunicationSimReg
- 28Telecommunication Iot RegistrationtelecommunicationIotReg
- 29Aviation TransportaviationTransport
- 30Road TransportroadTransport
- 31Maritime TransportmaritimeTransport
- 32Railway TransportrailwayTransport
- 33Lea CheckleaCheck
- 34Defencedefence
- 35NYSC ChecknyscCheck
- 36EFCC CheckefccCheck
- 37Blacklist PoliticalblacklistPolitical
- 38Blacklist SocialblacklistSocial
Consent before execution
Six consent mechanisms, one rule: nothing runs until consent is satisfied.
The consent layer sits in front of every provider. A consent-gated check is blocked until its consent is granted, unexpired and matches the identifier, and the mechanism is stored with the result.
Client attested
You attest that you obtained the subject’s consent for the stated purpose. The attestation and purpose are stored with the result.
Used for · NIN, BVN boolean, phone, signals
In-person selfie
The subject is present and supplies a live selfie with their NIN. The presence is the consent.
Used for · NIN in-person
NINAuth share code
The subject generates a six-character code in the NIMC NINAuth app and hands it over. The code is the consent.
Used for · NIN share code
NIBSS Consent Hub
The subject approves a scoped request on a hosted page or by email link, authenticated by OTP. Execution is blocked until it is granted.
Used for · BVN full record
USSD via iGree
The subject dials a short code on any phone and approves with an OTP. Consent for customers without smartphones.
Used for · BVN consent
Public registry
CAC records are public. No data-subject consent is required, and the lawful basis is still recorded.
Used for · Business (KYB)
Category-scoped consent
Each consent request carries a four-position Y/N mask over the data categories it covers. Ask only for what the use case needs: data minimisation enforced at the protocol level. NNNN is rejected.
- 1Personal identification
- 2Contact information
- 3Demographic details
- 4Geographic details
Example: YNYN requests personal identification and demographic details only.
- 1
Request
POST /v1/consents with the identifier, categories, channel and purpose. - 2
Approve
The subject approves by hosted page, email link or USSD, authenticated by OTP. - 3
Verify
Run the gated check with the consent_id. It is blocked until consent is granted. - 4
Revoke
Revoke at any time. Requests, grants, denials and revocations are timestamped.
Data minimisation
The same check returns less, wherever less will do.
Speedmap receives the full record and decides what leaves the platform. Most channels never need the record, so they never receive it.
| Channel | Returns |
|---|---|
| REST API, full tier | Normalized record, after approval for the use case |
| REST API, assertion tier | Status, match, field matches, masked name, reference |
| Webhooks | Assertion only; fetch detail by reference |
| MCP (Speedmap Connect) | Assertions only, never personal data |
| Bulk | Job handle; PII-free rows in the dashboard |
| Dashboard | Assertion by default; full record on audited reveal by permitted roles |
REST API, full tier
- Returns
- Normalized record, after approval for the use case
REST API, assertion tier
- Returns
- Status, match, field matches, masked name, reference
Webhooks
- Returns
- Assertion only; fetch detail by reference
MCP (Speedmap Connect)
- Returns
- Assertions only, never personal data
Bulk
- Returns
- Job handle; PII-free rows in the dashboard
Dashboard
- Returns
- Assertion by default; full record on audited reveal by permitted roles
Accountability
Evidence, retention and your obligations.
Audit trail
Retention and deletion
Encrypted and masked
Going live is a compliance step, not just a switch
Before live access, Speedmap reviews your organisation and use case and enables only the products and response tier it justifies. As part of go-live we ask customers to confirm the controls the NDPA expects of them:
- NDPC registration, where your processing requires it
- A designated Data Protection Officer
- A documented lawful basis and privacy notice
- Breach procedures for the 72-hour notification window
What cannot be built
No reverse lookup. Not now, not for anyone.
Stated plainly so it never becomes a feature request.
Nothing turns a phone number or name into a NIN
No claims we cannot support
- Is Speedmap NDPA compliant?
- Speedmap is designed around the Nigeria Data Protection Act 2023 and the GAID: purpose limitation through the NIMC purpose codes, consent before execution, category-scoped consent, assertion-only responses wherever a record is not needed, encryption at rest and an audit trail. Speedmap’s operating company is NDPA certified. Compliance is shared: you remain responsible for your own lawful basis, notices and records.
- Does Speedmap verify directly against the NIMC database?
- No. NIN checks are verified against the NIMC record through the NIMC-designated verification channel, with NIBSS FAS as an alternative path. BVN, face, account, phone and business checks run on NIBSS services. Speedmap does not claim direct access to the NIMC database.
- Who is the controller and who is the processor?
- For verifications you request, you decide the purpose and means, and Speedmap processes the data on your behalf under our terms and data processing addendum. We are a controller for our own account, billing and security data.
- Can someone find a NIN from a phone number or name?
- No. Nothing in Speedmap turns a phone number, name or date of birth into a NIN or BVN. NIMC and NIBSS deliberately withhold reverse lookup, and so do we.
- Can a data subject ask for their data to be deleted?
- Yes. Requests can be sent to privacy@speedmap.ng. Where Speedmap processes data for a customer we route the request to that customer as controller. We delete or anonymise data where it is legally permissible to do so; some records must be kept to meet regulatory, audit or dispute obligations.
Make every check defensible.
Purpose, consent and an audit trail on every verification, from the first test call. Talk to us about your compliance requirements before you go live.