reason_code values are machine-readable explanations of the latest known platform outcome.

Use them to branch integration logic without depending on fragile free-form strings.

Processing lifecycle

  • awaiting_upload: the verification was created and is waiting for upload
  • processing: upload completion succeeded and background processing is underway

Authenticity and upstream lookup failures

  • source_verifier_not_configured: authenticity verification was required but unavailable
  • source_verification_failed: authenticity verification failed before extraction
  • authenticity_missing_qrcode: the document QR code was missing or unreadable
  • authenticity_source_missing: the document could not be verified by the configured authority adapter
  • authenticity_hash_mismatch: the uploaded file did not match the verified authority bytes
  • fraud_hash_mismatch: the uploaded PDF differs from the verified authority bytes
  • fraud_identity_mismatch: submitted credentials conflict with cached source data
  • authenticity_lookup_failed: the upstream authenticity lookup failed operationally

Analysis and classification failures

  • local_analysis_failed: local analysis failed before decisioning
  • document_type_unknown: the platform could not classify the uploaded document
  • manual_review_required: the document needs review before a final outcome can be returned

Document-type-specific outcomes

For YOK_STUDENT, the current document-type-specific reason codes are:

  • verified_yok_student: the document passed authenticity, extraction, and decision rules
  • yok_student_structured_data_missing: structured extraction is missing
  • yok_student_payload_invalid: structured extraction payload exists but is invalid
  • yok_student_schema_invalid: schema validation failed

Integration guidance

  • Store reason_code alongside the top-level status in your system.
  • Use reason_code for support tooling and operator investigation.
  • Do not collapse authenticity failures into generic "processing failed" buckets.
  • Expect the reference to grow as more document types are shipped.