Skip to content

Why was a verification declined?

The verification lands on status completed with outcome declined. Your webhook receives a kyc.session.completed event with verdict: "declined", or the applicant detail screen shows the declined badge.

Open Applicants -> [applicant] in the console. The detail screen lists every check the workflow template ran with the outcome attached. The decline reason is the outcome of the first check that failed. You see the check type, the outcome, the reason, and any evidence the check returned.

  • Document forensics flagged the ID. The identity check detected tampering, re-printing, or that the photo on the ID does not match the rest of the document.
  • Face did not match the ID photo. When the id_verification check runs a biometric mode (selfie or liveness), the captured face is matched 1:1 against the photo on the document. A match score below the platform threshold routes the verification to manual review so a human can confirm before any decline.
  • Liveness confidence was too low. In liveness mode, if the active face scan returns a confidence below the platform threshold, the verification routes to manual review rather than auto-approving. The applicant may have completed the scan in poor conditions, so a reviewer makes the call.
  • Watchlist hit. The applicant’s name matched a sanctions, PEP, or adverse-media list entry. See Reviewer: watchlist.
  • Background check returned an actionable record. A record in scope of the FCRA-compliant adverse-action workflow blocked approval.

Generic decline messaging is what most teams use. The platform deliberately does not surface detailed check reasons in the applicant flow because sharing them invites gaming.

For FCRA-regulated background checks, the platform handles the adverse-action notice and dispute workflow; see Background checks (FCRA).

A re-run is only useful when the failure is recoverable: a blurry document, glare on the ID, a selfie taken in poor lighting. Start a fresh verification from the same workflow template and send the applicant a new invite.

A watchlist hit is not recoverable by re-running. Either the match is a true positive (decline stands) or a reviewer clears it manually as a false positive.

If the verdict looks wrong on a real applicant, send a reviewer to Manual review from the applicant detail screen. They can override the verdict, add a reviewer note, and record the rationale in the audit log. See Reviewer: manual review.