Разработка системы PEP (Politically Exposed Persons) проверки

Проектируем и разрабатываем блокчейн-решения полного цикла: от архитектуры смарт-контрактов до запуска DeFi-протоколов, NFT-маркетплейсов и криптобирж. Аудит безопасности, токеномика, интеграция с существующей инфраструктурой.
Показано 1 из 1 услугВсе 1306 услуг
Разработка системы PEP (Politically Exposed Persons) проверки
Средняя
~3-5 рабочих дней
Часто задаваемые вопросы
Направления блокчейн-разработки
Этапы блокчейн-разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1258
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1170
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    873
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1092
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    563
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    830

Разработка системы PEP (Politically Exposed Persons) проверки

PEP проверка — требование FATF R12 и большинства AML законодательств. Политически значимые лица (государственные чиновники, руководители госкорпораций, политики, военные командиры высшего ранга) считаются high-risk клиентами из-за повышенного риска коррупции. Это не означает блокировку, но требует Enhanced Due Diligence.

Что такое PEP

Domestic PEP: высокопоставленный чиновник в стране обслуживания клиента.

Foreign PEP: чиновник другой страны — обычно более высокий риск.

International organization PEP: руководители крупных международных организаций (ООН, МВФ, Мировой Банк).

RCA (Relatives and Close Associates): супруги, дети, родители PEP, бизнес-партнёры.

Источники PEP данных

Коммерческие провайдеры:

  • ComplyAdvantage: 10M+ записей, REST API, покрытие RCA
  • Refinitiv World-Check: крупнейшая база, используется банками
  • Dow Jones Risk & Compliance: enterprise grade
  • Acuris Risk Intelligence

Особенность: нет единого официального государственного PEP реестра. Провайдеры собирают данные из открытых источников (правительственные сайты, Wikileaks, журналисты).

Интеграция ComplyAdvantage API

class PEPScreeningService {
  async screenPerson(params: {
    firstName: string;
    lastName: string;
    dateOfBirth?: string;
    nationality?: string;
  }): Promise<PEPScreenResult> {
    
    const response = await this.complyAdvantage.search({
      search_term: `${params.firstName} ${params.lastName}`,
      fuzziness: 0.7,
      filters: {
        types: ["pep", "pep-class-1", "pep-class-2", "pep-class-3", "pep-class-4"],
      },
    });
    
    const matches = response.content.data.hits;
    
    if (matches.length === 0) return { isPEP: false, isRCA: false };
    
    // Фильтруем по DOB если есть
    const strongMatches = params.dateOfBirth
      ? matches.filter(m => this.dobMatches(m, params.dateOfBirth!))
      : matches;
    
    if (strongMatches.length === 0) {
      return { isPEP: false, possibleMatches: matches.slice(0, 3) };
    }
    
    const match = strongMatches[0];
    return {
      isPEP: match.doc.types.some(t => t.startsWith("pep")),
      isRCA: match.doc.types.includes("relative-close-associate"),
      pepClass: this.extractPEPClass(match.doc.types),
      positions: match.doc.fields?.filter(f => f.tag === "position") ?? [],
      country: match.doc.fields?.find(f => f.tag === "country_names")?.value,
      matchScore: match.score,
      entity: match.doc,
    };
  }
  
  private extractPEPClass(types: string[]): number {
    if (types.includes("pep-class-1")) return 1; // Head of state, government ministers
    if (types.includes("pep-class-2")) return 2; // Parliament members, senior judiciary
    if (types.includes("pep-class-3")) return 3; // Senior military, state-owned enterprise heads
    if (types.includes("pep-class-4")) return 4; // Local government, lower-risk positions
    return 0;
  }
}

Логика обработки PEP

async function handlePEPResult(userId: string, result: PEPScreenResult): Promise<void> {
  if (!result.isPEP && !result.isRCA) {
    await db.setUserRiskFactor(userId, "pep", false);
    return;
  }
  
  // PEP требует Enhanced Due Diligence
  await db.setUserRiskFactor(userId, "pep", true);
  await db.updateUserRiskLevel(userId, RiskLevel.HIGH);
  
  const eddRequired: EDDRequirement = {
    sourceOfFunds: true,
    sourceOfWealth: true,
    seniorManagementApproval: result.pepClass <= 2, // класс 1-2 требует senior approval
    enhancedOngoingMonitoring: true,
    annualReview: true,
  };
  
  await requestEDD(userId, eddRequired);
  await notifyComplianceOfficer(userId, result);
}

Continuous PEP monitoring

PEP статус может появиться у существующего клиента (назначение на должность):

// Еженедельный rescreening всех активных клиентов
@Cron("0 2 * * 0") // каждое воскресенье в 2:00
async weeklyPEPRescreening() {
  const activeCustomers = await db.getActiveCustomers();
  
  for (const customer of activeCustomers) {
    const result = await this.pepService.screenPerson(customer);
    const previousStatus = customer.pepStatus;
    
    if (result.isPEP && !previousStatus) {
      // Новый PEP — немедленное уведомление
      await this.handleNewPEPDetection(customer.id, result);
    }
  }
}

Система PEP проверки с ComplyAdvantage интеграцией, EDD workflow и periodic rescreening — 2-3 недели разработки.