35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
/**
|
|
* 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 };
|
|
}
|