MedixPro Pharmacy ERP Overview

MedixPro is an enterprise-grade, multi-tenant Software-as-a-Service (SaaS) Pharmacy Management ERP. Engineered to empower pharmacies, healthcare networks, and drug distributors, it streamlines day-to-day retail workflows, manages complex inventory batches, handles automated billing, and implements cognitive artificial intelligence to optimize stock management.

💡 System Architecture

MedixPro is built on a high-performance custom MVC PHP structure, backed by a relational MySQL/MariaDB database. The architecture isolates tenants at logical query levels while allowing super-administrators centralized command over billing subscriptions, database backups, and resource allocation.

Key Capabilities

📦 Smart Inventory

Track medicine stock across various warehouse sections, individual racks, and precise expiration batches.

🏢 SaaS Multi-Tenancy

Register company accounts, manage branches globally, and activate cryptographically signed license keys.

🤖 AI & DevOps Room

Run batch expiry prediction models, lookup generic substitutes, and track activity logs in real time.

Installation & Setup

Set up MedixPro on your local developer workstation or production hosting cluster.

Prerequisites

  • PHP 8.1 or higher (with PDO, mbstring, openssl extensions enabled)
  • MySQL 8.0 or MariaDB 10.4+
  • Apache/Nginx Web Server with rewrite modules enabled

Quick Start Steps

1. Clone the Codebase

git clone https://github.com/medixpro/pharmacy-erp.git
cd pharmacy-erp

2. Configure the Database Connection

Open app/config/config.php and enter your MySQL server credentials:

define('DB_HOST', 'localhost');
define('DB_USER', 'medixpro_db_user');
define('DB_PASS', 'secure_database_password');
define('DB_NAME', 'medixpro_erp_db');

3. Initialize the Database Schema

Execute the database bootstrap script via shell or import public/db_backup.sql directly:

php public/db_init.php
⚠️ Apache VirtualHost Note

Ensure that your server configuration permits .htaccess overrides (AllowOverride All) so that clean routing works. The front-controller redirects all requests to public/index.php.

Inventory & Batch Tracing

Accurate inventory tracking is crucial for pharmaceutical safety. MedixPro handles inventory mapping across multiple categories, physical locations, and time-restricted batches.

Entities Relationship

  • Medicine: The root medical brand (e.g., Lipitor 10mg) with composition information.
  • Rack / Warehouse: Pinpoints physical locations inside the store or logistics center.
  • Batch: Houses unique expiry dates, purchase costs, sale price rates, and remaining quantities.

Batch Expiry Monitoring

Every time a medicine is purchased or checked in, a specific batch is defined. When a cashier completes a sale, the POS registers stock depletion from the oldest batch automatically (FIFO strategy) unless manually overridden.

Point of Sale & Billing

The checkout interface features real-time search, automated GST/tax calculation, and instant payment receipts. Cashiers and pharmacists can process invoices within seconds.

Standard Billing Workflow

  1. Pharmacist scans drug barcode or searches brand name.
  2. System auto-selects active batch matching the earliest expiry.
  3. System applies relevant taxes (GST/VAT) and checks patient details.
  4. Invoice is finalized and stored, updating corresponding inventory counts in real time.

SaaS Enterprise & Licensing

MedixPro features SaaS capabilities, enabling you to run a multi-tenant subscription business model.

Tenant Separation

Database queries utilize company_id scope filtering, ensuring absolute data isolation across different registered companies. Tenant Admins can create local branch locations, manage user permissions (Pharmacist, Cashier, Inventory Manager), and check subscription statuses.

License Key Activation

Subscriptions are controlled via encrypted license keys. Enterprise accounts activate licenses using the key management suite which validates parameters against key signatures.

AI Command Center

The AI Engine utilizes predictive analytics and NLP capabilities to automate inventory checking, forecast sales trends, and provide brand substitute solutions.

Interactive AI Console

Use this mock terminal simulation to test the response behavior of the MedixPro AI Assistant. Try requesting reports on sales or upcoming expiry warnings:

🤖 MedixPro AI Assistant Terminal
Sales Forecast Expiry Alerts Substitute Finder
MedixPro Cog-Engine online. Ready to accept queries. Click a suggestion tag or write your custom prompt.

Developer API Reference

Interact with the MedixPro ERP via RESTful JSON endpoints. Developers can build external interfaces, patient apps, or supplier sync tools.

Simulation Playground

Test the MedixPro API endpoints and preview simulated JSON responses below:

MedixPro Endpoint Playground
GET
// Press "Send Request" to invoke endpoint simulation...