Skip to main content

Know Your Customer (KYC) Profile Deviation Test

Description

This test identifies users whose financial activity over a predefined period, such as a year, exceeds certain thresholds as reported in their expected annual income and total assets. By combining user transactions with KYC information, the test flags users whose net deposits surpass any of these self-reported values. This helps detect discrepancies between declared financial profiles and actual behavior, ensuring regulatory compliance and enabling further investigation of potentially anomalous activity.

Use Cases

  • Compliance with Financial Regulations: Identifies users whose financial activity deviates significantly from their reported profiles to meet anti-money laundering (AML) and KYC regulatory requirements.

  • Fraud Prevention: Flags users whose recent transactions suggest potential fraud, such as underreporting income or assets while engaging in high-value transactions, helping to prevent financial misrepresentation or unauthorized activities.

Required Data

KYC Data

VariableDescription
user_idUnique identifier for the user.
NetAnnualIncomeValueReported annual income range of the user, typically provided in KYC.
NetAssetsValueReported total asset range of the user, including tangible and intangible assets.
NetFinancialAssetsValueReported financial asset range of the user, including cash, stocks, bonds, etc.

Deposits Data

VariableDescription
timestampTimestamp of the deposit made (YYYY-MM-DD hh:mm:ss).
user_idUser ID to identify the individual user.
currency_typeThe currency type of deposit being made; fiat or crypto.
symbolThe asset symbol; e.g., BTC, ETH, USD, EUR.
price_usdThe price of the symbol in USD.
amountThe amount of the symbol being deposited.

Withdrawals Data

VariableDescription
timestampTimestamp of the withdrawal made (YYYY-MM-DD hh:mm:ss).
user_idUser ID to identify the individual user.
currency_typeThe currency type of withdrawal being made; fiat or crypto.
symbolThe asset symbol; e.g., BTC, ETH, USD, EUR.
price_usdThe price of the symbol in USD.
amountThe amount of the symbol being withdrawn.

Parameters

ParameterDescriptionTypeDefault ValueConfigurable
analysis_windowTime period (in days) over which transactions are analyzed.Integer365Yes
KYC_income_multiplierMultiplier for annual income used to flag users based on net deposits.Float1Yes
KYC_asset_multiplierMultiplier for total assets used to flag users based on net deposits.Float1Yes
KYC_financial_asset_multiplierMultiplier for financial assets used to flag users based on net deposits.Float1Yes
create_ticketFlag to determine if tickets should be created for alerts.BooleanTrueYes

Methodology

  • Data Preparation Extract maximum values for reported annual income, total assets, and financial assets from KYC data. Calculate net deposits (deposits minus withdrawals) for each user over the analysis period.

  • Threshold Evaluation Compare net deposits against self-reported KYC data. Apply multipliers for annual income, total assets, and financial assets. Flag users exceeding any threshold.

  • Flagging and Output Generate a list of flagged users with details of exceeded thresholds.