Skip to main content
Business Verification tracks status at multiple levels: the session, individual features, the registry lookup, and the AML result. This page is the reference for every state.

Session status

The overall status of a Business Verification (KYB) session — the single field you’ll most often switch on.
AWAITING_USER is transient — you don’t need to manually move sessions out of it. As soon as the end user completes the pending action (for example, submits the Key People list or re-uploads a requested document), Didit re-evaluates the session and transitions it automatically to IN_REVIEW, APPROVED, or DECLINED based on the outcome.

Feature status

Each KYB feature has its own status, which rolls up into the session status.

KYB feature names

  • kyb_registry — company registry lookup.
  • kyb_company_aml — company-level AML screening.
  • kyb_documents — document collection and OCR.
  • kyb_key_people — key people: UBOs, shareholders, directors, representatives and other officers.

Registry status (from the provider)

The official status of the company as obtained from authoritative registry sources. Reflects the legal or regulatory standing of the entity as reported by the jurisdiction-specific registry, so exact values vary by source. Surfaced inside the KYB decision under company.registry_status.
Because registry_status reflects raw registry values, use verification_status below when you need a consistent, cross-jurisdiction indicator to drive product logic.

Company verification status

A standardized, business-facing status per company result. Normalizes the varying registry and company statuses across different countries and sources into a single consistent indicator that can be interpreted directly within your product. Surfaced inside the KYB decision under company.verification_status.

Company fetch status

Indicates the data retrieval progress for a specific company record from external or official registries. Use it to determine how complete the fetched information is for a given company. Surfaced inside the KYB decision under company.fetch_status.

AML verification status

Returned per screening (company or person).

Decision reason codes

When a session is DECLINED, the decision includes a machine-readable decision_reason_code. Common codes: Additional workflow-specific reason codes may appear — see your workflow configuration for the full list.

Ownership and complexity signals

Returned in the decision alongside status, for informational use: See risk assessment for how these fields are computed.

Next steps

Response schema

Where each status appears in the payload.

Risk assessment

How statuses combine into a risk level.

Webhooks

Events that fire on status changes.