eKYC Module

The eKYC (electronic Know Your Customer) module collects identity verification data through a configurable form — name, address, phone, email, SSN/tax ID, date

📘

This guide is specific to Web SDK 2.0. If you are still using 1.x, you can find documentation here. We strongly recommend upgrading - contact your Incode Representative for upgrade information.

The eKYC (electronic Know Your Customer) module collects identity verification data through a configurable form — name, address, phone, email, SSN/tax ID, date of birth, ID numbers, etc. — and submits it to Incode's KYC verification engine. The displayed fields and their data sources (manual entry, document OCR, prior phone/email modules) are dashboard-driven.

Follows a form-based pattern variant — dashboard-driven dynamic field schema with optional pre-fill from earlier modules. See the patterns page for the shared lifecycle.

Tag

<incode-ekyc> is a standard Web Component. Importing the UI subpath registers the custom element; importing the CSS applies the module's styles.

import '@incodetech/web/ekyc';
import '@incodetech/web/ekyc/styles.css';

Properties

PropertyTypeRequiredDescription
configEkycConfigeKYC configuration
onFinish() => voidCalled when KYC submission completes
onError(error: string) => voidCalled when an error occurs

Configuration

type EkycConfig = {
  flowId?: string;
  verificationFields?: EkycVerificationFields;
  source?: string;
  fieldsCountry?: string;
  enablePhoneRisk?: boolean;
};
OptionTypeRequiredDescription
flowIdstringSession flow ID; injected by the orchestrator.
verificationFieldsEkycVerificationFieldsPer-field source map. Each value is 'user_input' | 'document_scan' | 'poa_document' | 'phone_module_input' | 'email_module_input' | false (omit).
sourcestringBackend-side override for default field source.
fieldsCountrystringISO country code; controls country-specific field rendering.
enablePhoneRiskbooleanEnable phone-risk subprocess on submit.

The full list of EkycVerificationFields keys: name, address, phone, email, SSN, taxId, nationality, 'date of birth', dlNumber, dlState, dlExpireAt, last4SSN, idNum, idNum1, gender, panNumber. Each field can be sourced from manual entry, OCR'd ID data, POA document data, or a prior phone/email module.

State machine

EkycState is a discriminated union over status:

StatusDescription
loadingFetching field schema and any pre-fill data from prior modules.
formRendering the configured form fields; user enters / corrects data.
submittingSubmitting to the eKYC backend.
successSubmission accepted.
finishedTerminal.
closedUser dismissed.
errorSubmission or load error.
misconfiguredThe backend returned no usable field configuration; can't render the form.

See also