Verifisha API Gateway · v1

Verify anyone.
In one request.

Identity, KYB, credit, employment and AML checks behind a single API — with consent built into the report lifecycle.

vrf_test_ keys never call a paid provider · consent-led & ODPC-aligned

Sources your checks reach

IPRSKRABRSMetropolCreditinfo

The whole integration

One call creates up to 500 reports and starts every check in them.

curl -X POST \
  https://sandbox-api.verifisha.com/api/v1/reports \
  -H "Authorization: Bearer vrf_test_..." \
  -H "Idempotency-Key: case-1042" \
  -d '{
    "reports": [{
      "subject": {
        "subjectType": "INDIVIDUAL",
        "fullName": "Jane Wanjiku Doe",
        "idNumber": "36901234"
      },
      "checksRequested": [
        "IDENTITY", "KRA_PIN", "CRB_STANDARD"
      ],
      "purpose": "Employment screening",
      "consent": { "mode": "VERIFISHA_HOSTED" }
    }]
  }'
{
  "count": 1,
  "reports": [{
    "id": "7f1c9a2e-4b3d-4e5f-8a90-1c2d3e4f5a6b",
    "status": "PENDING_CONSENT",
    "consentState": {
      "status": "PENDING",
      "consentUrl": "https://...",
      "expiresAt": "2026-09-16T08:14:22Z"
    },
    "paymentState": {
      "status": "NOT_REQUIRED"
    }
  }]
}

Environments

The key prefix decides whether a provider is billed.

vrf_test_

Deterministic fixtures where sandbox support exists. Paid providers are never called, and a missing fixture can never become a live charge.

vrf_live_

Routes to the production platform API and can execute billable checks. Responses carry X-Request-Id; sandbox responses also carry X-Verifisha-Sandbox.