azaharizaman/nexus-compliance-operations
Composer 安装命令:
composer require azaharizaman/nexus-compliance-operations
包简介
Nexus ComplianceOperations Orchestrator - Cross-package workflow coordination for compliance processes including KYC, AML, sanctions, and privacy
README 文档
README
The ComplianceOperations orchestrator provides cross-package workflow coordination for compliance-related business processes within the Nexus ecosystem. It implements the Advanced Orchestrator Pattern with Saga-based workflows for distributed transaction management.
Features
- Saga Pattern Workflows: Distributed transaction coordination with compensation logic
- KYC Verification: Know Your Customer onboarding workflows
- AML Screening: Anti-Money Laundering screening integration
- Sanctions Checking: Real-time sanctions list screening
- Privacy Rights Management: GDPR/CCPA compliance workflows
- Risk Assessment: Automated risk scoring and assessment
- Transaction Monitoring: Real-time suspicious activity detection
Architecture
This orchestrator follows the Three-Layer Architecture defined in ARCHITECTURE.md:
┌─────────────────────────────────────────────────────────┐
│ Adapters (L3) │
│ Implements orchestrator interfaces using atomic pkgs │
└─────────────────────────────────────────────────────────┘
▲ implements
┌─────────────────────────────────────────────────────────┐
│ ComplianceOperations (L2) │
│ - Defines own interfaces in Contracts/ │
│ - Depends only on: php, psr/log, psr/event-dispatcher │
│ - Saga-based workflow coordination │
└─────────────────────────────────────────────────────────┘
▲ uses via interfaces
┌─────────────────────────────────────────────────────────┐
│ Atomic Packages (L1) │
│ - KycVerification, Compliance, Party, Audit │
│ - Publishable on their own (Common + PSR only) │
└─────────────────────────────────────────────────────────┘
Interface Segregation
Following ARCHITECTURE.md Section 3.1, this orchestrator:
- Defines its own interfaces in
Contracts/ - Does NOT depend on atomic package interfaces directly
- Can be published as a standalone composer package
- Allows swapping atomic package implementations via adapters
Installation
composer require azaharizaman/nexus-compliance-operations
Framework Integration
This package is framework-agnostic and depends only on PSR interfaces. The following examples show how to register the package's services in various frameworks. Adapt these examples to your application's dependency injection container.
Laravel
Create a service provider in your application to register ComplianceOperations services:
<?php namespace App\Providers; use Illuminate\Support\ServiceProvider; use Nexus\ComplianceOperations\Contracts\AmlScreeningAdapterInterface; use Nexus\ComplianceOperations\Contracts\KycVerificationAdapterInterface; use Nexus\ComplianceOperations\Contracts\PrivacyServiceAdapterInterface; use Nexus\ComplianceOperations\Contracts\SanctionsCheckAdapterInterface; use Nexus\ComplianceOperations\Contracts\SecureIdGeneratorInterface; use Nexus\ComplianceOperations\Contracts\WorkflowStorageInterface; use Nexus\ComplianceOperations\Adapters\AmlScreeningAdapter; use Nexus\ComplianceOperations\Adapters\KycVerificationAdapter; use Nexus\ComplianceOperations\Adapters\PrivacyServiceAdapter; use Nexus\ComplianceOperations\Adapters\SanctionsCheckAdapter; class ComplianceOperationsServiceProvider extends ServiceProvider { public function register(): void { // Register adapter implementations (singletons) $this->app->singleton(KycVerificationAdapterInterface::class, KycVerificationAdapter::class); $this->app->singleton(AmlScreeningAdapterInterface::class, AmlScreeningAdapter::class); $this->app->singleton(SanctionsCheckAdapterInterface::class, SanctionsCheckAdapter::class); $this->app->singleton(PrivacyServiceAdapterInterface::class, PrivacyServiceAdapter::class); // Workflow infrastructure (singletons) $this->app->singleton(SecureIdGeneratorInterface::class, function () { return new class implements SecureIdGeneratorInterface { public function generate(): string { return bin2hex(random_bytes(32)); } }; }); // Override with database-backed storage in production $this->app->singleton(WorkflowStorageInterface::class, function () { // TODO: Implement database-backed storage return new InMemoryWorkflowStorage(); // Or your implementation }); // Register coordinators as singletons $coordinators = [ \Nexus\ComplianceOperations\Coordinators\OnboardingCoordinator::class, \Nexus\ComplianceOperations\Coordinators\TransactionMonitoringCoordinator::class, \Nexus\ComplianceOperations\Coordinators\PeriodicReviewCoordinator::class, \Nexus\ComplianceOperations\Coordinators\PrivacyRightsCoordinator::class, \Nexus\ComplianceOperations\Coordinators\RiskAssessmentCoordinator::class, \Nexus\ComplianceOperations\Coordinators\ComplianceReportingCoordinator::class, ]; foreach ($coordinators as $coordinator) { $this->app->singleton($coordinator); } // Register data providers $dataProviders = [ \Nexus\ComplianceOperations\DataProviders\KycDataProvider::class, \Nexus\ComplianceOperations\DataProviders\AmlDataProvider::class, \Nexus\ComplianceOperations\DataProviders\SanctionsDataProvider::class, \Nexus\ComplianceOperations\DataProviders\RiskAssessmentDataProvider::class, \Nexus\ComplianceOperations\DataProviders\PrivacyDataProvider::class, \Nexus\ComplianceOperations\DataProviders\ComplianceAuditDataProvider::class, ]; foreach ($dataProviders as $provider) { $this->app->singleton($provider); } // Register rules $rules = [ \Nexus\ComplianceOperations\Rules\KycThresholdRule::class, \Nexus\ComplianceOperations\Rules\AmlRiskThresholdRule::class, \Nexus\ComplianceOperations\Rules\SanctionsMatchRule::class, \Nexus\ComplianceOperations\Rules\DataRetentionRule::class, \Nexus\ComplianceOperations\Rules\ReviewFrequencyRule::class, ]; foreach ($rules as $rule) { $this->app->singleton($rule); } } }
Register in config/app.php:
'providers' => [ // ... App\Providers\ComplianceOperationsServiceProvider::class, ],
Symfony
Register services in your services.yaml:
services: # Adapters Nexus\ComplianceOperations\Contracts\KycVerificationAdapterInterface: class: Nexus\ComplianceOperations\Adapters\KycVerificationAdapter Nexus\ComplianceOperations\Contracts\AmlScreeningAdapterInterface: class: Nexus\ComplianceOperations\Adapters\AmlScreeningAdapter Nexus\ComplianceOperations\Contracts\SanctionsCheckAdapterInterface: class: Nexus\ComplianceOperations\Adapters\SanctionsCheckAdapter Nexus\ComplianceOperations\Contracts\PrivacyServiceAdapterInterface: class: Nexus\ComplianceOperations\Adapters\PrivacyServiceAdapter # Workflow infrastructure Nexus\ComplianceOperations\Contracts\SecureIdGeneratorInterface: class: App\SecureIdGenerator # Your implementation Nexus\ComplianceOperations\Contracts\WorkflowStorageInterface: class: App\WorkflowStorage # Your database-backed implementation # Coordinators Nexus\ComplianceOperations\Coordinators\OnboardingCoordinator: shared: true # ... other coordinators # Data Providers Nexus\ComplianceOperations\DataProviders\KycDataProvider: shared: true # ... other data providers # Rules Nexus\ComplianceOperations\Rules\KycThresholdRule: shared: true # ... other rules
Plain PHP / PSR-11 Container
use Nexus\ComplianceOperations\Adapters\KycVerificationAdapter; use Nexus\ComplianceOperations\Adapters\AmlScreeningAdapter; use Nexus\ComplianceOperations\Coordinators\OnboardingCoordinator; use Psr\Container\ContainerInterface; // Simple container setup example $container->set(KycVerificationAdapterInterface::class, new KycVerificationAdapter()); $container->set(AmlScreeningAdapterInterface::class, new AmlScreeningAdapter()); // ... other adapters $container->set(OnboardingCoordinator::class, new OnboardingCoordinator( $container->get(KycVerificationAdapterInterface::class), $container->get(AmlScreeningAdapterInterface::class), // ... other dependencies ));
Service Binding Summary
| Interface | Purpose |
|---|---|
KycVerificationAdapterInterface |
KYC verification bridge |
AmlScreeningAdapterInterface |
AML screening bridge |
SanctionsCheckAdapterInterface |
Sanctions checking bridge |
PrivacyServiceAdapterInterface |
Privacy/GDPR services bridge |
SecureIdGeneratorInterface |
Secure ID generation |
WorkflowStorageInterface |
Saga state persistence |
Usage
Customer Onboarding Workflow
use Nexus\ComplianceOperations\Coordinators\OnboardingCoordinator; use Nexus\ComplianceOperations\DTOs\Kyc\KycVerificationContext; class CustomerController { public function __construct( private OnboardingCoordinator $coordinator ) {} public function onboard(Request $request): Response { $context = new KycVerificationContext( partyId: $request->partyId, dueDiligenceLevel: 'standard', partyData: $request->validated() ); $result = $this->coordinator->initiateOnboarding($context); return $result->isSuccessful() ? response()->json(['status' => 'onboarded']) : response()->json(['errors' => $result->getErrors()], 422); } }
Transaction Monitoring
use Nexus\ComplianceOperations\Coordinators\TransactionMonitoringCoordinator; $result = $this->monitoringCoordinator->screenTransaction( transactionId: $transaction->id, amount: $transaction->amount, currency: $transaction->currency, partyId: $transaction->party_id ); if ($result->requiresReview()) { // Escalate to compliance officer $this->escalationService->createAlert($result); }
Privacy Rights Request
use Nexus\ComplianceOperations\Coordinators\PrivacyRightsCoordinator; $result = $this->privacyCoordinator->processSubjectRequest( subjectId: $user->id, requestType: 'data_export', // or 'deletion', 'rectification' requestDetails: ['format' => 'json'] ); return $result->getResponsePackage();
Workflows
1. Onboarding Compliance Workflow
Coordinates KYC, AML, sanctions, and risk assessment for new customers.
Steps:
- KYC Verification
- AML Screening
- Sanctions Check
- Risk Assessment
- Compliance Approval
Compensation: Each step has rollback logic for failed workflows.
2. Transaction Monitoring Workflow
Real-time screening of transactions for suspicious activity.
Steps:
- Transaction Screening
- Risk Threshold Evaluation
- Alert Generation
- Escalation Handling
3. Periodic Review Workflow
Scheduled compliance reviews for existing customers.
Steps:
- Review Trigger
- Reverification
- Risk Reassessment
- Status Update
4. Privacy Rights Workflow
Handles GDPR/CCPA subject rights requests.
Steps:
- Request Validation
- Data Discovery
- Subject Rights Processing
- Response Generation
Directory Structure
src/
├── Adapters/ # Bridge to atomic packages
├── Contracts/ # Interface definitions
├── Coordinators/ # Traffic management
├── DataProviders/ # Context aggregation
├── DTOs/ # Data Transfer Objects
├── Enums/ # Enumerations
├── Exceptions/ # Domain exceptions
├── Rules/ # Business constraints
└── Workflows/ # Saga implementations
Components
Coordinators
| Coordinator | Purpose |
|---|---|
OnboardingCoordinator |
Customer onboarding flow |
TransactionMonitoringCoordinator |
Transaction screening |
PeriodicReviewCoordinator |
Scheduled compliance reviews |
PrivacyRightsCoordinator |
Privacy rights requests |
RiskAssessmentCoordinator |
Risk assessment processes |
ComplianceReportingCoordinator |
Compliance reporting |
DataProviders
| DataProvider | Aggregates |
|---|---|
KycDataProvider |
KYC verification data |
AmlDataProvider |
AML screening results |
SanctionsDataProvider |
Sanctions matches |
RiskAssessmentDataProvider |
Risk scores |
PrivacyDataProvider |
Privacy preferences |
ComplianceAuditDataProvider |
Audit trails |
Rules
| Rule | Validates |
|---|---|
KycThresholdRule |
KYC thresholds |
AmlRiskThresholdRule |
AML risk limits |
SanctionsMatchRule |
Sanctions clearance |
DataRetentionRule |
Retention compliance |
ReviewFrequencyRule |
Review schedules |
Testing
composer test
Documentation
- Implementation Summary - Detailed implementation status
- Architecture Guidelines - Nexus architectural standards
Contributing
Please see CONTRIBUTING.md for details.
License
The MIT License (MIT). Please see License File for more information.
Nexus - Enterprise Resource Planning for the Modern Age
azaharizaman/nexus-compliance-operations 适用场景与选型建议
azaharizaman/nexus-compliance-operations 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 05 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「workflow」 「privacy」 「aml」 「nexus」 「saga」 「orchestrator」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 azaharizaman/nexus-compliance-operations 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 azaharizaman/nexus-compliance-operations 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 azaharizaman/nexus-compliance-operations 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Workflow for NetCommons Plugin
Make TYPO3 more compatible to GDPR
ComplyCube API PHP Client
PHP library for the ZignSec APIv2.
Workflow logger
Strips potentially identifying information from outbound requests to the WordPress.org API
统计信息
- 总下载量: 2
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 46
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-05-04