Logo Lanfrica

Mohamedbs456/PayZo

Domain:

socioeconomic

Record type:

softwareproject
Creator:
Moh
Host:
PayZo - Tunisian digital banking platform with ML-based fraud detection (PFE 2025-2026). Code coming soon. # PayZo **Tunisian multi-bank digital banking platform with real-time ML fraud detection on P2P transfers.** PFE project — Faculté des Sciences de Monastir, 2025–2026. Author: **Mohamed Ben Salem** · Supervisor: **Mr. Mohsen Maraoui** Full write-up: PayZo_Report.pdf --- ## Overview Tunisian retail banking is fragmented — clients hold accounts across several banks and juggle incompatible apps with no unified view. PayZo puts multi-bank access behind one platform: a client web app, an Expo mobile app, and an Electron backoffice for operations staff. Every P2P transfer is scored in real time before money moves. Low-risk transfers execute immediately; medium- and high-risk transfers are suspended for analyst review. Scoring runs through a three-tier fallback (LightGBM → Random Forest → rule firewall) so the transfer pipeline never blocks on ML availability. --- ## Architecture The Dockerized stack runs on a single bridge network (`payzo-net`): | Service | Port | Role | |---|---|---| | `backend` | 8081 | Spring Boot API — auth, transfers, fraud alerts, notifications | | `ml-service` | 5000 | FastAPI inference — three-tier transfer scorer | | `cbs-simulator` | 8082 | Core Banking Simulator — Tunisian ledger (seeded banks, clients, RIBs) | | `keycloak` | 8080 | Identity provider — `clients` and `backoffice` realms | | `postgres-db` | 5432 | PostgreSQL 16 — hosts `payzo_db`, `keycloak_db`, `cbs_db` | | `client-web-app` | 5173 | React SPA (Vite dev server) | | `nginx` | 80 | Reverse proxy — `/api/` to backend, `/` to client SPA | The **backoffice** (`BO-Web-App`) and **mobile** (`Client-Mobile-App`) apps run on the host, outside Docker. The backend reads the CBS database directly through a second JPA datasource, so balance and account lookups during a transfer skip the REST hop. --- ## Tech stack | Layer | Stack | |---|---| | Backend | Java 17, Spring Boot 3.2, Spring Security + OAuth2 (JWT), Spring Data JPA, WebFlux WebClient, MapStruct | | ML | Python …