Skip to content

Jobs

The Jobs feature allows verified users to earn money by completing verification tasks as Keshless agents. This creates a distributed network of verifiers to help onboard new users.

Overview

Keshless Agents can:

  • Verify new user identities in person
  • Collect and upload KYC documents
  • Perform address verification
  • Earn commissions for completed verifications

Eligibility

To become a Keshless Agent:

RequirementDescription
KYC StatusFully verified (Premium level)
Account Age30+ days active
Transaction History10+ successful transactions
TrainingComplete agent training module

Job Types

Identity Verification

Verify a new user's identity documents in person:

  1. Meet the user at agreed location
  2. Check physical ID document
  3. Capture ID front and back
  4. Take live selfie of user
  5. Submit verification package

Payout: E20 per successful verification

Address Verification

Confirm a user's physical address:

  1. Visit user's stated address
  2. Capture proof of residence
  3. Take GPS-tagged photo
  4. Confirm occupancy
  5. Submit verification package

Payout: E30 per verification

Business Verification

Verify vendor/business legitimacy:

  1. Visit business premises
  2. Check business registration
  3. Capture storefront photos
  4. Interview owner/manager
  5. Submit verification package

Payout: E50 per verification

Job Flow

Finding Jobs

┌─────────────────┐
│  Jobs Tab       │
│  (Browse)       │
└────────┬────────┘


┌─────────────────┐
│  Filter by:     │
│  - Location     │
│  - Type         │
│  - Payout       │
└────────┬────────┘


┌─────────────────┐
│  Job List       │
│  (Nearby First) │
└────────┬────────┘


┌─────────────────┐
│  Accept Job     │
│                 │
└─────────────────┘

Job States

StateDescription
availableOpen for agents to accept
acceptedAgent assigned, in progress
submittedVerification uploaded
under_reviewAdmin reviewing
approvedVerification accepted
rejectedVerification failed
paidAgent compensated

Completing a Job

┌─────────────────┐
│  View Job       │
│  Details        │
└────────┬────────┘


┌─────────────────┐
│  Navigate to    │
│  Location       │
└────────┬────────┘


┌─────────────────┐
│  Capture Docs   │
│  & Selfie       │
└────────┬────────┘


┌─────────────────┐
│  Review &       │
│  Submit         │
└────────┬────────┘


┌─────────────────┐
│  Wait for       │
│  Approval       │
└────────┬────────┘

    ┌────┴────┐
    ▼         ▼
┌───────┐ ┌───────┐
│Approved│ │Rejected│
│(Paid)  │ │(Retry) │
└───────┘ └───────┘

Verification Package

FieldTypeRequiredDescription
jobIdstringYesJob ID
idFrontfileYesFront of ID document
idBackfileYesBack of ID document
selfiefileYesLive selfie
locationLatLngYesGPS coordinates
timestampDateTimeYesCapture timestamp
notesstringNoAdditional notes

Agent Dashboard

Statistics

MetricDescription
Jobs CompletedTotal successful verifications
PendingJobs awaiting review
EarningsTotal/monthly/weekly
RatingAverage quality score
RankPosition among agents

Earnings Withdrawal

Agents can withdraw earnings to their wallet when balance is sufficient.

Quality Requirements

Photo Requirements

ElementRequirement
ResolutionMinimum 1200x800
FocusClear, no blur
LightingWell-lit, readable
AngleFlat, no tilting

Rejection Reasons

ReasonImpact
Blurry imagesRe-submit required
Wrong personJob cancelled, warning
Fake documentsAccount suspension
Location mismatchInvestigation

API Endpoints

EndpointMethodDescription
/jobs/availableGETList available jobs
/jobs/myGETAgent's jobs
/jobs/:idGETJob details
/jobs/:id/acceptPOSTAccept job
/jobs/:id/submitPOSTSubmit verification
/jobs/:id/cancelPOSTCancel accepted job
/agent/statsGETAgent statistics
/agent/withdrawPOSTWithdraw earnings

Error Handling

ErrorCauseAction
JOB_001Job already takenRefresh list
JOB_002Not eligibleComplete requirements
JOB_003Upload failedRetry submission
JOB_004Job expiredAccept new job
JOB_005Quality rejectedRe-capture photos
FilePurpose
lib/screens/jobs/jobs_list_screen.dartJobs list
lib/screens/jobs/job_details_screen.dartJob details
lib/screens/jobs/verification_capture_screen.dartVerification capture
lib/screens/jobs/agent_dashboard_screen.dartAgent dashboard
lib/controllers/job_controller.dartJob controller
lib/services/job_service.dartJob service

Internal use only - Keshless Payment Platform