Logo Lanfrica

serawit/fayda-omo-api

Domaine:

digital infrastructuresocioeconomic

Type de record:

software
Créateur:
ser
Hôte:
Fayda-Omo Harmonization: A secure full-stack platform linking Omo Bank customer accounts with Ethiopia's National Digital ID (Fayda) system using Node.js, OracleDB, and OIDC. # Fayda Connect | Omo Bank S.C. A secure digital harmonization platform that links **Omo Bank S.C.** customer accounts with Ethiopia’s **Fayda National Digital ID**. The system enables identity verification, OTP-based authentication, and secure data synchronization with the National ID Program and the bank’s Core Banking System. ## ✨ Highlights * 🔐 **Secure Account Verification** — Multi‑factor authentication with SMS OTP tied to Core Banking records * 🪪 **Fayda OIDC Integration** — Standards‑compliant (OIDC + PKCE) identity harmonization * 🏦 **Core Banking Sync** — Real‑time validation and profile lookups against **Oracle Flexcube** * 🌍 **Multi‑language UI** — English & Amharic (i18n ready) * 📱 **Progressive Web App (PWA)** — Installable, offline‑aware, mobile‑first * 🛡️ **Bank‑Grade Security** — Secure sessions, rate limiting, JWT/JWE, full audit logging ## 🧭 Architecture Overview [ User (Web / PWA) ] | v [ React Frontend ] | v [ Node.js / Express API ] | | | +--> Oracle Flexcube (Core Banking) | +--> MongoDB (Sessions, Users, Audit Logs) | +--> Fayda OIDC Provider (Auth + Identity) ## 🛠️ Tech Stack ### Frontend * **Framework**: React (Vite) * **Styling**: Tailwind CSS * **Routing**: React Router DOM * **State & i18n**: i18next * **PWA**: Web Manifest & Service Worker ### Backend * **Runtime**: Node.js (v18+), Express * **Databases**: * MongoDB — session store, users, audit logs * Oracle DB — Core Banking (Flexcube) lookup * **Validation**: Zod * **Security**: Helmet, CORS, Express Rate Limit, JOSE (JWT/JWE) ## 📋 Prerequisites * Node.js **v18+** * MongoDB (Local or Atlas) * Oracle Instant Client (for Flexcube connectivity) * Network/VPN access to Core Banking DB * Git ## ⚙️ Installation & Setup ### 1️⃣ Clone the Repository bash git clone github.com cd fayda-omo-api ### 2️⃣ Backend Setup bash cd backend npm install Create a `.env` file inside `backend/`: env # Server Configuration P …