https://github.com/shadrach16/radarpro-compliance-engine
Automated regulatory reporting system for CTR, FTR, STR, and SAR submissions to NFIU.
https://github.com/shadrach16/radarpro-compliance-engine
financial-crimes nfiu python-automation regulatory-reporting
Last synced: about 1 month ago
JSON representation
Automated regulatory reporting system for CTR, FTR, STR, and SAR submissions to NFIU.
- Host: GitHub
- URL: https://github.com/shadrach16/radarpro-compliance-engine
- Owner: shadrach16
- License: mit
- Created: 2025-11-24T15:34:29.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-11-24T15:40:58.000Z (8 months ago)
- Last Synced: 2025-11-28T04:23:56.346Z (7 months ago)
- Topics: financial-crimes, nfiu, python-automation, regulatory-reporting
- Homepage:
- Size: 102 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 📡 RadarPro: Regulatory Compliance & Reporting Engine



> **⚠️ Portfolio Notice:** This repository serves as a technical case study for **RadarPro**, a proprietary compliance software developed for Adroit Consulting. The source code is confidential. This document details the system architecture and my role in automating regulatory reporting for Nigerian Financial Institutions.
---
## 📸 System Interface
Figure 1: The Compliance Reporting Generator
---
## 🏛️ Project Overview
**RadarPro** is a specialized "RegTech" (Regulatory Technology) solution designed to bridge the gap between Financial Institutions and Regulatory Bodies (specifically the **NFIU** - Nigerian Financial Intelligence Unit).
In the banking sector, failing to report specific transactions within a set timeframe results in massive sanctions. RadarPro automates this entire lifecycle, converting raw banking data into the strict XML/JSON formats required by government portals (goAML), eliminating manual error and ensuring 100% compliance.
---
## 📦 Core Reporting Modules
The system is divided into four critical reporting engines, powered by robust Python scripts:
### 1. CTR (Customer Transaction Reporting)
* **Function:** Automatically detects and reports cash transactions exceeding the statutory limit (e.g., ₦5M for individuals, ₦10M for corporates).
* **Automation:** Daily cron jobs scan the core banking database, aggregate cash lodgments/withdrawals, and generate the report file.
### 2. FTR (Foreign Transaction Reporting)
* **Function:** Tracks all cross-border inflows and outflows.
* **Compliance:** Ensures every forex transaction is captured with necessary metadata (Sender, Receiver, Purpose of Payment) before submission.
### 3. STR (Suspicious Transaction Reporting)
* **Function:** An intelligent detection module that flags transactions that do not fit a customer's standard profile (e.g., a student account suddenly receiving ₦50M).
### 4. SAR (Suspicious Activity Reporting)
* **Function:** A behavioral monitoring tool used to report suspicious *activities* (not just transactions), such as potential staff collusion or attempted bypass of internal controls.
---
## ⚙️ Technical Highlight: Python XML Automation
The most technically challenging aspect of this project was adhering to the strict **goXML / goAML** schema requirements enforced by the NFIU.
* **The Challenge:** The NFIU portal rejects submissions if a single XML tag is out of order or if a date format is incorrect. Manual file creation was impossible at scale.
* **My Solution:** I engineered a custom **Python Automation Engine** that handles the generation pipeline:
1. **Extraction:** Python scripts query the Oracle/MSSQL Banking Database to pull transaction rows.
2. **Validation:** A pre-processing layer checks for data integrity (e.g., ensuring every transaction has a valid BVN and Address) *before* generation.
3. **Serialization:** Using Python's `lxml` and string formatting to map the banking data into the complex, nested XML tree structure required by goAML.
4. **Encryption:** The final XML files are hashed and encrypted for secure transmission.
> **Key Tech:** `Python`, `Celery` (Background Tasks), `Pandas` (Data Aggregation), `XML/XSD Validation`.
---
## 👨💻 My Role
As the **Lead Developer**, I was responsible for:
1. **Logic Implementation:** Coding the rulesets for CTR/FTR detection based on current CBN circulars.
2. **Schema Mapping:** Mapping internal banking database fields to external regulatory schemas.
3. **Performance:** Reducing report generation time from hours to minutes using efficient SQL queries.
---
## 📬 Contact
**Tunde Oluwamo**
*Senior Full Stack Developer & RegTech Specialist*
[ linkedin.com/in/oluwamo-shadrach-740242185 ]