Dr. Magdy Pharmacy Platform

Next.js storefront + Frappe/ERPNext commerce core + WhatsApp OTP

Dr. Magdy Pharmacy Platform Next.js storefront + Frappe/ERPNext commerce core + WhatsApp OTP Dr. Magdy Production VPS Private application and data plane Customer · Mobile browser · Architecture component Customer Mobile browser Public HTTPS Edge · Domain routing + API proxy · Dr. Magdy Production VPS · docmagdy.coderaai.com Public HTTPS Edge Domain routing + API proxy docmagdy.coderaai.com Next.js Storefront · Arabic mobile-first commerce · Dr. Magdy Production VPS · Bun + React Next.js Storefront Arabic mobile-first commerce Bun + React Frappe Storefront API · Catalog, account, delivery, orders · Dr. Magdy Production VPS › Private application and data plane · Whitelisted methods Frappe Storefront API Catalog, account, delivery, orders Whitelisted methods ERPNext Domain · Products, stock, customers, orders · Dr. Magdy Production VPS › Private application and data plane · Business source of truth ERPNext Domain Products, stock, customers, orders Business source of truth MariaDB · Durable ERP records · Dr. Magdy Production VPS › Private application and data plane · MariaDB 10.6 MariaDB Durable ERP records MariaDB 10.6 Pharmacy Staff · Manager / pharmacist · Architecture component Pharmacy Staff Manager / pharmacist Frappe Desk · Pharmacy operations UI · Dr. Magdy Production VPS · admin.docmagdy.coderaai.com Frappe Desk Pharmacy operations UI admin.docmagdy.coderaai.com WhatsApp · OTP customer channel · Architecture component WhatsApp OTP customer channel OpenWA API · Messages + signed webhooks · Dr. Magdy Production VPS · Private integration OpenWA API Messages + signed webhooks Private integration Redis · Cache + job queues · Dr. Magdy Production VPS › Private application and data plane Redis Cache + job queues Frappe Workers · Short, long, scheduler · Dr. Magdy Production VPS › Private application and data plane Frappe Workers Short, long, scheduler HTTPS SQL Legend External Security Frontend Backend Database Message bus

Commerce

  • • Next.js owns customer-facing journeys
  • • Frappe exposes controlled storefront APIs
  • • ERPNext records remain authoritative

Identity

  • • Phone-first customer accounts use Frappe-owned sessions
  • • OpenWA carries WhatsApp OTP messages and signed events

Runtime

  • • MariaDB stores durable business state
  • • Redis separates cache and queued work
  • • Workers run background and scheduled jobs

Security

  • • Only public routing is exposed
  • • Core application and data services stay private
  • • Secrets are mounted at runtime and omitted