Skip to main content

Verify a customer's address

POST 

/v2/kyc/verify

Performs instant address verification for KYC compliance. Accepts coordinates, a hex code, or a GhanaPostGPS code. Returns a hex address with quality score, confidence level, risk signals, and real-time fraud detection.

Fraud Detection (NEW): Every verification is analyzed for suspicious patterns:

  • Velocity abuse (5+ verifications in 15 min) → BLOCKED
  • Geo-impossible travel (>120km/h) → BLOCKED
  • Bulk fraud (10+ customers from same IP/hour) → FLAGGED
  • Device farm (10+ verifications from same device/hour) → BLOCKED (Requires optional device_id)
  • VPN/TOR/Proxy & Datacenter IP detection → FLAGGED
  • GPS-IP routing mismatch → SCORED / BLOCKED
  • Suspicious travel, manual entry, off-hours activity → SCORED

Transactions with risk_score ≥ 0.8 are automatically blocked. The response includes a fraud_check object with risk score, signals, and recommendation.

The verified field is gated on confidence level: only "high" or "medium" confidence results return verified: true. Low-confidence results (e.g. manual self-reported addresses, GPS codes with quality_score < 0.6) return verified: false. The full response — hex code, address, quality_score, and risk_signals — is always returned regardless, so consuming systems can apply their own thresholds.

MethodConditionConfidenceVerified
gps_fixquality_score >= 0.8hightrue
gps_fixquality_score < 0.8mediumtrue
gps_codequality_score >= 0.6mediumtrue
gps_codequality_score < 0.6lowfalse
hex_codeanymediumtrue
manualanylowfalse

Replaces $5-7 physical agent visits with a $0.15 API call.

Request

Responses

Verification result