Prerequisites
- A Didit application with KYB enabled. Create one at business.didit.me if needed.
- An API key from Developer Settings → API Keys.
- A webhook endpoint reachable from the internet (for the decision webhook).
Steps
Create a KYB workflow in the console
Navigate to Workflows → Create workflow. Choose Business Verification as the workflow type.Enable the features you need:
- Company registry lookup (required)
- Company AML (recommended)
- Key People (required for most regulated industries)
- Documents (optional — pick document types you’ll require)
workflow_id — you’ll use it in the next step.Create a Business Verification (KYB) session via the API
session_id, session_number, and url — the hosted verification link you deliver to the business contact. The workflow’s type (KYB) automatically flags the session as a business session.Send the link to your business contact
Deliver the
url to the company admin via your own email or chat. They open it, fill in the registry data, add key people and UBOs, and upload documents.You can customize the hosted experience with branding, logo, and domain — see White-label.Receive the status webhook
When the business finishes the flow and KYB processing reaches a terminal status, Didit POSTs a
status.updated event to your webhook endpoint. Business-session events carry session_kind: "business" inside data — filter on that to route the event to your KYB handler.Verify the HMAC signature (see webhooks) and trigger your downstream logic.Example payload:Retrieve the decision (optional)
The
status.updated webhook payload already contains the full decision. You only need to call this endpoint if you didn’t subscribe to webhooks, or you want to fetch the decision on demand later.Node.js example
What happens automatically
- Company registry lookup against 190+ jurisdictions.
- UBO and officer extraction from registry data.
- Company-level AML screening (sanctions, PEP, adverse media).
- Person-level AML for each identified party.
- Document OCR and cross-referencing.
- Business profile creation and aggregation keyed by
vendor_data.
Next steps
Integration guide
End-to-end architecture, polling vs webhooks, retry logic.
KYB webhooks
Every KYB event and payload shape.
Statuses
Session, feature, and registry status reference.
Response schema
The full KYB decision payload.
Business entities
How profiles aggregate across sessions.
Troubleshooting
Common issues and fixes.