Ruralpass API

Identity

Verified who‑the‑farmer‑is data, plus their BVN/NIN verification status. Two sections cover this: identity (always available to every account type) and bvn_nin_data (banks and insurers).

Section key Fee (NGN) Available to
identity 25 bank, insurer, agtech
bvn_nin_data 30 + pass‑through (BVN 50, NIN 35) bank, insurer

Request

curl -X POST https://api.riwe.io/v1/rupa/lookup \
  -H "X-API-KEY: rk_live_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{ "rupa_id": "rp-7lif9u", "sections": ["identity", "bvn_nin_data"] }'

identity

"identity": {
  "full_name": "Bank Admin",
  "first_name": "Bank",
  "last_name": "Admin",
  "gender": null,
  "date_of_birth": null,
  "phone_number": null,
  "state": null,
  "lga": null,
  "community": null,
  "country": "Nigeria",
  "kyc_status": "pending",
  "kyc_verified_at": null,
  "identity_locked": false,
  "agent_enrolled": false
}
Field Description
full_name, first_name, last_name Farmer's name
gender, date_of_birth Demographics (may be null if not captured)
phone_number Registered MSISDN
state, lga, community Location (from KYC/registration)
kyc_status pending, verified, etc.
kyc_verified_at When KYC passed
identity_locked Identity fields locked after verification (tamper‑resistant)
agent_enrolled Whether a Riwe field agent enrolled this farmer

bvn_nin_data

Bank/insurer only. Returns verification status — never raw BVN/NIN numbers. Fresh verification runs against NIBSS (BVN) and NIMC (NIN) via Prembly, adding the pass‑through fees above.

"bvn_nin_data": {
  "bvn": {
    "verified": false, "verified_at": null, "masked": null,
    "name_match": false, "dob_match": false
  },
  "nin": {
    "verified": false, "masked": null, "cross_matched_with_bvn": false
  },
  "verification_source": "NIBSS + NIMC via Prembly",
  "overall_confidence": "low"
}
Field Description
bvn.verified / nin.verified Whether the identifier is verified
masked Masked identifier (e.g. 2233…9) once verified — never the full number
name_match, dob_match Whether the farmer's name/DOB matched the bureau record
cross_matched_with_bvn NIN reconciled against BVN
overall_confidence low / medium / high aggregate confidence

Note —

Ruralpass returns verification signals, not personally identifiable government numbers. This keeps partners on the right side of data‑protection obligations.