Back to Portfolio

Four-Eye Approval Workflow System

Financial-grade approval workflow implementing four-eye principle for all data-modifying operations. Safeguards against internal fraud and meets banking regulatory requirements.

Four-Eye Approval Workflow System
TypeScript
Node.js
React
PostgreSQL
Message Queues
Event Sourcing
CQRS
WebSockets
REST APIs
Overview

Designed and implemented a comprehensive approval workflow system for BCB Group that requires a four-eye process for any user actions that change data. This system is essential for safeguarding against internal fraud and meeting banking regulatory requirements. The workflow engine handles complex approval scenarios including multi-level approvals, delegation, escalation, and time-based expiration. It integrates seamlessly with all internal consoles and microservices, ensuring that no critical data modification can occur without proper authorisation and review. This capability was instrumental in BCB Group obtaining their French EMI licence, demonstrating the company's commitment to operational security and regulatory compliance.

Architecture

The approval workflow system implements an event-sourced architecture ensuring complete auditability and the ability to reconstruct the approval history at any point. The system consists of: 1. Workflow Engine: Manages approval state transitions and routing 2. Notification Service: Handles real-time and email notifications 3. Audit Service: Records all approval events for compliance 4. Integration Layer: Connects with all data-modifying services CQRS pattern separates read and write operations, allowing for optimised query patterns for approval dashboards while maintaining strict consistency for approval decisions.

Key Features
  • Four-eye principle enforcement
  • Multi-level approval chains
  • Delegation and escalation workflows
  • Time-based approval expiration
  • Complete audit trail
  • Real-time notification system
  • Approval analytics dashboard
  • Integration with existing services
  • Role-based approval routing
  • Bulk approval capabilities
Challenges
  • Ensuring zero-downtime deployment for a critical financial system
  • Handling complex approval scenarios with multiple conditional branches
  • Implementing real-time notifications across multiple channels
  • Maintaining performance with complete event sourcing
  • Integrating with legacy systems that had no approval concepts
Achievements
  • Key contribution to French EMI licence approval
  • Zero internal fraud incidents since implementation
  • 99.99% system availability
  • Processes over 10,000 approvals daily
  • Reduced approval cycle time by 40% through workflow optimisation