← Back to Projects (Page 3 - In-Build) SPRINT 3 ACTIVE BUILD
IN-BUILD SYSTEM ARCHITECTURE

Untold Bank / ApexBank Core

Commercial online banking engine featuring real-time account balances, intra-bank transfers, multi-stage compliance verification (COT, TAX, IMF) for international wire relays, and administrative ledger controls.

THE INDUSTRY GAP Private fintechs and microfinance banks cannot afford multi-million dollar core banking licenses, leaving them with clunky, vulnerable software that lacks auditable international wire clearance.
HOW EMMANUEL ARCHITECTS IT Built on Laravel 11 and MySQL with row-level pessimistic locking, dual-node identity KYC verification, multi-stage authorization (COT/TAX/IMF), and an administrative audit command center.
COMMERCIAL SIGNIFICANCE Enables private financial institutions to deploy an institutional, compliance-ready banking interface in weeks rather than years, with zero double-spending risk.

Active Milestone: Ledger Reversal & Audit Pipeline

Target Framework: Laravel 11 · Redis Queue Workers · MySQL 8 InnoDB Strict

Sprint Completion 68%

Double-Entry Relational Schema

CREATE TABLE `accounts` ( `id` BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, `account_number` VARCHAR(16) UNIQUE NOT NULL, `user_id` BIGINT UNSIGNED NOT NULL, `currency` VARCHAR(3) DEFAULT 'USD', `balance_cents` BIGINT NOT NULL DEFAULT 0, `status` ENUM('ACTIVE', 'FROZEN', 'TIER_LIMITED'), `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); CREATE TABLE `ledger_entries` ( `id` BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, `transaction_ref` VARCHAR(32) UNIQUE NOT NULL, `debit_account_id` BIGINT UNSIGNED NOT NULL, `credit_account_id` BIGINT UNSIGNED NOT NULL, `amount_cents` BIGINT NOT NULL, `transfer_mode` ENUM('INTRA_BANK', 'GLOBAL_WIRE'), `verification_hash` VARCHAR(64) NOT NULL );
  • Row-level pessimistic locking (`SELECT ... FOR UPDATE`) preventing race-condition overdraws
  • Strict non-negative integer balance constraints enforced at database layer
  • SHA-256 cryptographic chaining between consecutive ledger rows for zero-tampering auditability

Dual Mobilization Routing Nodes

// Route Dispatch Logic $router->post('/api/v1/mobilize', function (Request $req) { $validated = $req->validate([ 'destination_node' => 'required|in:INTRA_LEDGER,GLOBAL_SWIFT', 'idempotency_key' => 'required|unique:idempotency_records', 'security_pin' => 'required|digits:4', 'mfa_token' => 'required|string' ]); return DispatchLedgerWorker::dispatchSync($validated); });
  • Internal Transfer Node: Instant atomic database commit for intra-bank capital movements
  • Global Wire Relay: Multi-stage compliance hold demanding admin-assigned COT/TAX/IMF verification
  • Worker Queues: High-throughput Redis cluster routing automated settlement notifications