/** * Copyright since 2025 Mifos Initiative * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ /** An existing customer found by PAN / Aadhaar fingerprint / GSTIN. Identifiers are masked by the server. */ export interface ClientIdentityMatch { clientId: number; displayName: string; cifNumber: string; officeId: number; officeName: string; legalFormEnum: number | null; kycStatus: number; /** True when the caller's branch can open this client; false when it sits in another branch. */ visibleToCaller: boolean; panMasked: string | null; aadhaarMasked: string | null; gstinMasked: string | null; matchedBy: Array<'PAN' | 'AADHAAR' | 'GSTIN'>; } export interface ClientIdentityLookupResult { /** Any ONE of PAN / Aadhaar / GSTIN matched an existing customer: the same person or entity. */ matched: boolean; /** The identifiers point at different customers: bad data or fraud, not a customer to reuse. */ conflict: boolean; matches: ClientIdentityMatch[]; /** A phone or email already used by another client. Never means "the same customer". */ contactConflicts: { mobileNo: boolean; emailAddress: boolean }; }