Logo Lanfrica

VicStew/face-mpesa-payments

Domain:

digital infrastructure

Record type:

software
Creator:
Vic
Host:
This system facilitates contactless payments using facial recognition. Users can authenticate payments through facial recognition, and the system processes payments via M-Pesa STK Push. # Face Recognition Mpesa Payment System. Implementation of a system that makes payments using face detection as both a mode of authentication and identification. ## Team Members * Victor Ngunyi * Victor Muchina * Faith Cheruto * John Mwangi * Paul Owiti * Natasha Wamuyu ## Project Purpose This system facilitates contactless payments using facial recognition. Users can authenticate payments through facial recognition, and the system processes payments via M-Pesa STK Push. The system provides a hygienic, fast, and secure payment experience ideal for retail environments, restaurants, and service industries where contactless transactions are preferred. ## Project Structure ``` Face-Rec-Mpesa/ ├── Resources/ # Contains UI elements used in program operation │ └── Status/ # Status elements ├── logs/ # Mpesa status logs ├── main.py # Main application entry point ├── mpesa_integration.py # M-Pesa payment processing ├── firebase.py # Firebase Firestore operations ├── interface.py # User registration handling ├── requirements.txt # Python dependencies ├── .env.example # Environment variables template └── README.md # This file ``` ## Technology Stack ### Hardware * Camera: High-definition camera for facial recognition * POS Terminal: Point of Sale terminal for transaction processing ### Software * OpenCV (Vision): Computer vision library for image processing and facial detection * M-Pesa API (Payments): Integration with Safaricom Daraja API for transaction processing * Firebase (Database): Cloud database for user authentication, transaction records, and system data * CustomTkinter (Frontend): Python framework for the user interface * TensorFlow: Machine learning framework for OpenCV ### Environment setup. Create a virtual environment withe python3.12, mediapipe will not work with >3.12 ````bash virtualenv --python=/bin/python3.12 . ```` ### Activate the virtual environment …