Skip to main content

Service Onboarding

The customer onboarding process handles new user registration, identity verification, and account activation within the Kulpay ecosystem.

Participants

ParticipantRole
CustomerInitiates registration via mobile app
Kulpay APIProcesses registration, runs verifications
MiniAiLiveBiometric liveness detection and face matching
NUIB APINational identity verification
Back Office ReviewerReviews KYC documents and approves/rejects

Process Flow

Step-by-Step

Phase 1: Phone Verification

  1. Customer enters their phone number (E.164 format)
  2. System checks for duplicate registrations
  3. If new, an OTP is sent via SMS
  4. Customer enters the 6-digit OTP to verify ownership

Phase 2: Document Upload & Verification

  1. Customer selects their ID document type (passport, DIRE, or BI)
  2. Document images are uploaded (front, and back if applicable)
  3. MiniAiLive performs OCR to extract: name, date of birth, ID number, address
  4. Customer captures a live selfie
  5. MiniAiLive performs liveness detection and face matching against the document photo
  6. Customer reviews and confirms the extracted data

Phase 3: Identity & PIN

  1. Customer enters their NUIT (tax identification number)
  2. System validates the NUIT
  3. Customer defines their access PIN
  4. Registration is submitted for back-office review

Phase 4: Back Office Review

  1. Reviewer accesses the pending customer list
  2. Reviewer views customer details and uploaded documents
  3. NUIB verification is performed against government records
  4. Customer is checked against regulatory lists (sanctions, PEP)
  5. A risk level is assigned to the customer
  6. Based on risk assessment: account is activated or registration is rejected
  7. Customer is notified of the outcome via SMS

Authentication (Existing Users)

For returning customers:

  1. Enter PIN (3 attempts allowed)
  2. After 3 failed attempts: account is suspended for 60 minutes
  3. PIN recovery options:
    • SMS/email OTP recovery
    • Customer support assisted recovery (security questions)
EndpointPurpose
POST /v1/customers/initiateStart registration, send OTP
POST /v1/customersVerify phone with OTP
PUT /v1/customers/{id}Update customer details
POST /v1/customers/{id}/upload-documentUpload ID document
POST /v1/customers/{id}/upload-selfieUpload selfie for verification
GET /v1/customers/{id}/kycList KYC verifications
PUT /v1/customers/{id}/kyc/{kyc_id}/reviewsReview KYC
GET /v1/system/config/supported-docsGet accepted document types

Business Rules

  • Phone number is the primary account identifier
  • OTP codes are 6 digits
  • PIN has a maximum of 3 attempts before suspension
  • Account suspension lasts 60 minutes
  • KYC document types: passport, dire, bi
  • Face match and liveness are both required for verification
  • NUIB verification is mandatory for Mozambican customers