KYC & Compliance

Tiered KYC Model

Nav.Wallet implements a progressive Know-Your-Customer system that balances financial inclusion with regulatory compliance. Customers start with minimal documentation and unlock higher limits as they provide additional verification.

Tier Structure

TierRequirementsDaily LimitMax Balance
Tier 1Phone number + nameR1,000R5,000
Tier 2ID document verified (guided capture)R5,000R25,000
Tier 3Biometric selfie + liveness check + proof of addressR50,000R100,000

Upgrade Path

  • Customers can upgrade at any time directly from the app
  • Tier upgrades take effect immediately — new limits apply to the next transaction
  • The KYC Engine deterministically classifies customers based on verified documents
  • Rejected documents trigger notification with reason and resubmission guidance

Biometric Identity Verification

Guided ID Document Capture (Tier 2+)

The wallet app provides an in-app guided camera experience for capturing identity documents:

  1. Rear-facing camera opens with a dashed frame overlay showing “Hold your ID card steady”
  2. 3-second countdown — user holds the document in frame, then auto-capture fires
  3. Alternatively, users can upload a file from their gallery
  4. Backend validates the document image quality before proceeding

Selfie + Face Comparison (Tier 3)

After ID capture, customers complete biometric verification:

  1. Front-facing camera opens with a circular face-frame overlay
  2. Active liveness challenge — “Please blink” instruction with real-time frame capture
  3. Blink detection — client-side intensity analysis provides UX feedback; backend performs real validation
  4. 10 frames captured during the 3-second challenge window for anti-spoofing analysis
  5. Final high-quality selfie captured after liveness completes

Backend Processing (ONNX Pipeline)

All biometric verification runs on-device models deployed via ONNX Runtime:

ModelPurposeFile
det_10g.onnxFace detectionInsightFace Buffalo-L
w600k_r50.onnxFace embedding (512-d vectors)ArcFace ResNet-50
MiniFASNetV2.onnxPassive liveness / anti-spoofingFAS model

Verification flow:

  • Extract face from ID document → generate 512-dimensional embedding
  • Extract face from selfie → generate embedding
  • Compute cosine similarity → match threshold determines pass/fail
  • Liveness score from MiniFASNetV2 must exceed threshold (rejects printed photos, screen replays)
  • Active liveness frames analyzed for temporal consistency (blink pattern)

Anti-Spoofing Measures

  • Passive liveness — Distinguishes real faces from printed photos, screen replays, and masks
  • Active liveness — Blink detection challenge ensures a live person is present
  • Frame consistency — Multiple frames captured to detect static image attacks
  • Configurable thresholds — Match confidence and liveness scores tunable per environment

Limit Enforcement

The KYC Engine applies limits as a cross-cutting concern at the Wallet API layer:

  1. Daily transaction limit — Sum of all outgoing transactions in a calendar day
  2. Maximum balance — Post-transaction balance check prevents exceeding tier cap
  3. Applies uniformly — Same limits for P2P transfers, cash-in, and cash-out
  4. Actionable rejections — Limit-exceeded responses include current limits and upgrade prompt

Fraud Detection

Every transaction passes through multiple security gates:

  • IFraudDetection — Real-time risk scoring; transactions above threshold are rejected
  • IVelocityCheckService — Detects unusual patterns (rapid successive transfers, impossible travel)
  • ISanctionsScreening — Triggered for all transfers exceeding R5,000
  • PIN lockout — 3 consecutive failed PIN attempts lock the account for 30 minutes

SIM Swap Protection

  • SIM swap detection triggers immediate account suspension
  • Customer notified via alternative contact method
  • Re-verification required before account reactivation
  • All account data preserved during suspension

Security Features

FeatureDescription
PIN lockout3 failures → 30-minute lock
New device verificationOTP to registered phone
Biometric re-verificationPeriodic identity confirmation for high-tier accounts
Idempotency keysPrevents duplicate transactions
Transaction notificationsReal-time alerts on all activity
Reversal notificationsImmediate alert on failed/reversed transactions

Regulatory Alignment

Nav.Wallet is designed to comply with:

  • SARB — South African Reserve Bank guidelines for e-money issuers
  • FSCA — Financial Sector Conduct Authority requirements
  • FICA — Financial Intelligence Centre Act for customer due diligence
  • POPIA — Protection of Personal Information Act for data handling