Mfoodie2go (Pty)Ltd

Online shopping
  • 3876 Mayekiso Str
  • Duduza, Gauteng
  • 1496
  • SOUTH AFRICA
  • +27767969821
PUBLIC PROFILE

Developer brief

Developer Brief — Mfoodie2Go (Basic Website with Inventory Management, Supplier Portal & Ad Space)


1) Project Summary:


Goal:

Build a responsive web platform for Mfoodie2Go that enables consumers to scan and check products, manage inventory, receive expiry alerts, and engage with suppliers and advertisers. The platform will include ad space (R50/day — R750/day), a supplier portal, and MTN MoMo payment integration for easy transactions.

Revenue Model:

Freemium (limited access) + Subscription (R99/month) + Advertising + Supplier commission (5%).

Primary Actors:

Consumer (end-user)

Supplier

Advertiser / Marketing team

Admin


2) Core Scope (MVP):


Pages / Modules

Public: Home, About, How It Works, Pricing, Contact, Login/Sign Up

Consumer: Dashboard, Product Scanner (barcode/expiry entry), My Inventory, Alerts, Orders, Subscription Management

Supplier Portal: Dashboard, Product Management (CRUD), Orders, Inventory & Expiry Tracking, Promotions, Analytics (sales & stock), Billing

Advertiser: Ad Manager (create and pay for campaigns), Billing & Invoices

Admin: User management, Supplier & Ad approval, Analytics, Ad scheduling, Reports, Content control

Key Features

Role-based user authentication (email/phone + OTP)

Freemium tier: limited scans and ads supported

Subscription (R99/month): unlimited scans, ad-free experience, extra features

Product CRUD with expiry, batch, barcode, supplier, price, stock, and images

Expiry and low-stock alerts (email + in-app)

Supplier 5% commission on every completed sale (auto-calculated and logged)

Export reports (CSV/PDF)

Ad campaign manager with packages (R50/day, R250/day, R750/day)

MTN MoMo integration for wallet payments (consumers, suppliers, and advertisers)

PayFast or Ozow alternative payment methods

Admin dashboard for analytics, reports, and ad/supplier approval

Simple product scanner (manual or barcode entry; future upgrade to camera scan)

Audit logs for all supplier/product edits


3) User Stories (Short)


As a consumer, I can scan or manually enter products, add them to my inventory, and receive expiry alerts.

As a consumer, I can subscribe via MTN MoMo or PayFast for R99/month.

As a supplier, I can upload products, manage expiry and stock, and earn from sales (5% commission applied automatically).

As a supplier, I can view analytics, export reports, and manage orders.

As an advertiser, I can create and pay for ads, select placements, and monitor campaigns.

As an admin, I can approve suppliers, manage ads, track commissions, and view analytics.


4) Data Model (Key Entities)


User: id, name, email, phone, role, password_hash, created_at, last_login, subscription_status, momo_wallet_id

Supplier Profile: user_id, business_name, KYC_doc_url, address, bank_details, status

Product: id, supplier_id, name, barcode, batch_no, manufacture_date, expiry_date, unit_price, stock_qty, description, images\, category, created_at

InventoryItem: id, user_id, product_id, qty, expiry_date, added_at

Order: id, buyer_id, supplier_id, items\], total_amount, commission (5%), status, created_at

Ad Campaign: id, advertiser_id, title, creative_url, placement, start_date, end_date, daily_rate, total_cost, status

Notifications: id, user_id, type, message, read_flag, created_at

Payment Transaction: id, user_id, amount, currency, type (subscription/ad/txn), provider_id (MTN MoMo/PayFast), status, created_at

AuditLog: id, actor_id, action, entity_type, entity_id, timestamp


5) API Endpoints (Sample — REST):


Auth

POST /api/auth/register

POST /api/auth/login

POST /api/auth/otp

GET /api/auth/me

Products & Inventory

GET /api/products

POST /api/products

PUT /api/products/:id

DELETE /api/products/:id

POST /api/inventory

GET /api/inventory

PUT /api/inventory/:id

GET /api/inventory/export

Orders

POST /api/orders

GET /api/orders/:id

GET /api/supplier/orders

Ads

POST /api/ads

GET /api/ads

PUT /api/ads/:id

POST /api/ads/:id/pay

Payments (MTN MoMo + PayFast)

POST /api/payments/momo/initiate

POST /api/payments/momo/confirm

POST /api/payments/payfast/initiate

GET /api/payments/history

Admin

GET /api/admin/users

PUT /api/admin/suppliers/:id/approve

GET /api/admin/analytics


6) UI / Wireframe Notes:


Homepage: Hero banner, “Join as Supplier / Consumer” buttons, ad banner top slot, pricing cards.

Consumer Dashboard: Inventory list with expiry countdown, “Add Product” button, subscription status, and notification alerts.

Supplier Dashboard: KPI bar (total sales, commission earned, stock alerts), product list, add/edit modal, analytics graph.

Ad Manager: Step-by-step campaign creation with preview and payment options (MTN MoMo or PayFast).

Admin Dashboard: Tabs for Users, Suppliers, Ads, Reports, and Finance Summary (commissions, revenue).

Design hints: Mobile-first layout, accessible colors, minimal input steps, show expiry countdown clearly.


7) Payments & Monetization:


Revenue Streams

Source Description Notes

Consumer Subscriptions R99/month via MTN MoMo / PayFast

Freemium Tier Ad-supported, limited features Free users see banner ads

Advertising R50–R750/day Packages for suppliers & brands

Supplier Commission 5% per sale Auto-deducted via payment system

Payment Gateways:

MTN MoMo API Integration: handle wallet-to-wallet and merchant payments.

PayFast / Ozow: alternative card and EFT payment methods.

Automatic invoice & transaction logs for all payments.


8) Non-Functional Requirements


Responsive: Mobile + Desktop

Performance: Load < 3 seconds

Security: HTTPS, JWT auth, bcrypt passwords

Compliance: POPIA-compliant, user data export/delete

Scalability: Start monolithic; modular for future microservices

Backup: Daily DB + transaction backups


9) Analytics & Reporting:


Track active users, scans/day, supplier sales, ad revenue, and MTN MoMo transaction volumes.

Exportable reports (CSV/PDF).

Integrate Sentry (errors) + Google Analytics / Matomo (traffic).


10) DevOps & Deployment:


Repo: GitHub

CI/CD: GitHub Actions

Hosting: Vercel (frontend), AWS/Heroku/DigitalOcean (backend), PostgreSQL DB

Environments: Dev / Staging / Production

CDN: Cloudflare or AWS S3 for static and ad images


11) Acceptance Criteria (MVP):


Consumers can register, scan or add products, and receive expiry alerts.

Suppliers can register, upload products, and see 5% commission applied to each sale.

Ads can be purchased (R50–R750/day) and displayed correctly.

Subscriptions (R99/month) work via MTN MoMo & PayFast.

Admin can manage users, suppliers, ads, and reports.

Inventory and sales reports export correctly.


12) Deliverables:


Fully responsive website (staging + production)

Source code repository (GitHub)

API Documentation (Swagger/OpenAPI)

Admin user manual

Test report

Onboarding session or video guide

13) Suggested Timeline

Phase Duration Deliverable

Phase 1 2–3 weeks Auth, Consumer Dashboard, Scanner

Phase 2 2–3 weeks Supplier Portal + Commission logic

Phase 3 1–2 weeks Ad Manager + MTN MoMo Integration

Phase 4 1 week QA, Reports, Deployment


14) Tech Stack:


Frontend: React / Next.js

Backend: Node.js (Express) or Django REST

Database: PostgreSQL

Payments: MTN MoMo + PayFast APIs

Hosting: Vercel / AWS / DigitalOcean

Sign in to add your comment.

Suggested Pages

mfoodie2go.201 (2).png

mfoodie2go.201 (4).png

mfoodie2go.201.png

mfoodie2go.201 (3).png