Logo Lanfrica

GloriaAndonyaIT/flask-mpesa-cafe

Domain:

digital infrastructure

Record type:

software
Creator:
Glo
Host:
Cafe ordering system with M-Pesa payment integration using Flask and Intasend API - Moringa AI Capstone Project # 🍰 Cafe Ordering System with M-Pesa Integration A full-stack cafe ordering application demonstrating M-Pesa mobile money payment integration using Flask (backend) and React + Tailwind CSS (frontend). Built as part of the Moringa School AI Capstone Project. --- ## 📋 Table of Contents 1. Project Overview 2. Technology Stack 3. Features 4. System Requirements 5. Installation & Setup 6. Environment Configuration 7. Running the Application 8. Testing M-Pesa Payments 9. API Documentation 10. AI Prompts Used 11. Common Issues & Solutions 12. Learning Reflections 13. Future Enhancements 14. Resources --- ## 📋 Project Overview ### Technology Choice **M-Pesa Payment Integration via Intasend API** ### Justification M-Pesa is the dominant mobile money platform in Kenya with over 30 million active users. Learning M-Pesa integration is crucial for building real-world applications in the East African market. Intasend provides a developer-friendly wrapper around the complex M-Pesa Daraja API, making it ideal for learning payment integration fundamentals. ### End Goal Build a functional cafe ordering system where customers can: - Browse menu items - Add items to cart - Checkout and pay via M-Pesa STK Push (Lipa na M-Pesa Online) - Receive order confirmation after successful payment ### Real-World Applications - E-commerce platforms (Jumia, Kilimall) - Food delivery services (Uber Eats, Glovo) - Utility bill payments - Subscription services - Ticket booking systems --- ## 🛠️ Technology Stack ### Backend - **Flask 3.0.0** - Python web framework - **Intasend Python SDK 1.3.0** - M-Pesa payment gateway - **Flask-CORS** - Enable cross-origin requests from React frontend - **python-dotenv** - Environment variable management ### Frontend - **React 18+** - JavaScript UI library - **Tailwind CSS 3+** - Utility-first CSS framework - **Axios** - HTTP client for API requests - **React Router** - Client-side routing ### Payment Gateway - **Intasend API** - M-Pesa integration …

Languages