Complete Prompt For Pharmacy Management System

 

🏥 PHARMACY PRO — Advanced Pharmacy Store Management & Online Delivery System

1. Project Overview

Build a professional, secure, responsive, full-stack Pharmacy Store Management & Online Medicine Delivery Web Application named:

PHARMACY PRO

The system should be designed for real-world pharmacies and should make daily pharmacy activities faster, easier, safer, and more organized than typical pharmacy management systems.

The application must support:

  • Admin

  • Pharmacist / Staff

  • Customers

  • Product & Medicine Management

  • Inventory / Stock Management

  • POS / Billing

  • Purchase Management

  • Sales Management

  • Prescription Management

  • Online Medicine Ordering

  • Home Delivery

  • Customer Management

  • Supplier Management

  • Company / Manufacturer Management

  • Expiry Management

  • Low Stock Alerts

  • Reports & Analytics

  • Notifications

  • User & Role Management

  • Secure Authentication

  • Audit Logs

  • Dark / Light / Custom Themes

The application must be mobile-friendly, tablet-friendly and desktop-friendly.


2. Technology Stack

Develop the complete project using:

Frontend

  • HTML5

  • CSS3

  • JavaScript

  • jQuery

  • AJAX

  • Bootstrap 5

  • Font Awesome

  • AdminLTE

Backend

  • PHP 8+

  • MySQL / MariaDB

Development Environment

  • XAMPP

Do not use unnecessary frameworks unless absolutely required.

The code should be:

  • Modular

  • Secure

  • Maintainable

  • Well-commented

  • Reusable

  • Production-oriented

  • Easy to modify


3. UI/UX DESIGN

Create a premium modern SaaS-style pharmacy dashboard.

The design should NOT look like an old-fashioned PHP admin panel.

Use:

  • Modern cards

  • Soft shadows

  • Rounded corners

  • Clean typography

  • Professional spacing

  • Responsive tables

  • Modern forms

  • Attractive charts

  • Interactive statistics

  • Smooth hover effects

  • Loading indicators

  • Toast notifications

  • Confirmation dialogs

  • Empty states

  • Skeleton/loading states where useful

Use AdminLTE as the base dashboard framework but customize it heavily so the application has its own unique identity.


4. Theme / Mode System

Implement a complete theme system.

Users should be able to switch between:

Light Mode

Clean professional white interface.

Dark Mode

Modern dark interface suitable for night use.

Additional Color Themes

Provide multiple accent themes such as:

  • Blue

  • Green

  • Purple

  • Orange

  • Teal

  • Red

Theme settings should be saved in the user's account/session so the selected theme remains active.

Add a Theme Settings panel in the dashboard.

Example:

Appearance:

  • Light

  • Dark

Accent:

  • Blue

  • Green

  • Purple

  • Orange

  • Teal


5. USER ROLES

Implement Role-Based Access Control.

ADMIN

Admin should have complete control over the system.

Admin can:

  • Manage users

  • Manage pharmacists

  • Manage customers

  • Manage products

  • Manage companies

  • Manage categories

  • Manage suppliers

  • Manage inventory

  • Manage purchases

  • Manage sales

  • Manage orders

  • Manage prescriptions

  • Manage deliveries

  • Manage payments

  • Manage discounts

  • Manage taxes

  • Manage reports

  • Manage website settings

  • Manage notifications

  • View audit logs

  • Manage roles and permissions


6. PHARMACIST / STAFF

Pharmacist dashboard should be simpler than Admin.

Pharmacist can:

  • View products

  • Search medicines

  • Check stock

  • Create sales

  • Generate bills

  • Process customer orders

  • Verify prescriptions

  • Update order status

  • Manage customers

  • View expiry alerts

  • View low-stock alerts

  • Manage assigned inventory activities

Pharmacists must NOT be able to access restricted Admin settings unless explicitly permitted.


7. CUSTOMER

Customers should have their own modern dashboard.

Customer features:

  • Register

  • Login

  • Profile management

  • Browse medicines

  • Search medicines

  • Filter medicines

  • View product details

  • Add to cart

  • Update quantity

  • Checkout

  • Upload prescription

  • Choose delivery address

  • Select payment method

  • Track order

  • View order history

  • Download invoice

  • Reorder previous medicines

  • Add medicines to wishlist

  • Rate products

  • Review products

  • Receive notifications


8. PRODUCT / MEDICINE MANAGEMENT

Create a comprehensive medicine management system.

Each medicine should contain:

  • Product ID

  • SKU

  • Barcode

  • QR Code

  • Medicine Name

  • Generic Name

  • Brand Name

  • Manufacturer / Company

  • Category

  • Subcategory

  • Medicine Type

  • Dosage

  • Strength

  • Unit

  • Pack Size

  • Purchase Price

  • Selling Price

  • Discount

  • Tax / VAT

  • Stock Quantity

  • Minimum Stock Level

  • Batch Number

  • Manufacturing Date

  • Expiry Date

  • Prescription Required

  • Product Image

  • Description

  • Usage Information

  • Storage Information

  • Status

Medicine types can include:

  • Tablets

  • Capsules

  • Syrup

  • Injection

  • Cream

  • Ointment

  • Drops

  • Inhaler

  • Powder

  • Vitamins

  • Medical Devices

  • Personal Care

  • Other


9. COMPANY / MANUFACTURER SYSTEM

Create a dedicated company/manufacturer module.

The database should support at least 5 different pharmaceutical companies with realistic sample product data.

Example companies:

  1. Nepal Pharmaceuticals Laboratory

  2. Deurali-Janta Pharmaceuticals

  3. Asian Pharmaceuticals

  4. Lomus Pharmaceuticals

  5. Quest Pharmaceuticals

Create sample products under each company.

Important:

Do not hard-code company names inside PHP pages.

Companies must be stored in the database and manageable from Admin.

Admin can:

  • Add company

  • Edit company

  • Delete/deactivate company

  • View company products

  • Search companies

  • Filter products by company


10. SAMPLE PRODUCT DATABASE

Seed the database with a meaningful pharmacy catalog.

Include:

  • At least 5 companies

  • At least 10 categories

  • At least 50+ sample products

Each product should have:

  • Name

  • Generic

  • Company

  • Category

  • Price

  • Stock

  • Batch

  • Expiry

  • Prescription requirement

  • Image placeholder

Use realistic Nepal-oriented pharmacy data, but clearly mark seeded data as demo/sample data and do not present it as verified current pricing.

Create a database seeder/import mechanism so more products can easily be added.


11. INVENTORY MANAGEMENT

Create a powerful inventory system.

Features:

  • Stock In

  • Stock Out

  • Stock Adjustment

  • Purchase Entry

  • Sales Deduction

  • Return Stock

  • Damaged Stock

  • Expired Stock

  • Batch Management

  • Expiry Management

  • Stock Transfer

  • Inventory History

Automatically update inventory when:

  • Purchase is completed

  • POS sale is completed

  • Online order is confirmed

  • Order is cancelled

  • Product is returned

Never allow stock quantity to become negative.


12. EXPIRY MANAGEMENT

Create a dedicated expiry management page.

Display:

Expired

Products already expired.

Expiring Soon

Products expiring within:

  • 30 days

  • 60 days

  • 90 days

Allow Admin to configure expiry warning periods.

Show:

  • Product

  • Batch

  • Expiry Date

  • Current Stock

  • Company

  • Action


13. LOW STOCK MANAGEMENT

Automatically detect products below their minimum stock level.

Dashboard should show:

Low Stock Medicines

Example:

Medicine | Current Stock | Minimum Stock | Status

Provide:

  • Reorder alert

  • Supplier information

  • Quick purchase entry


14. POS / BILLING SYSTEM

Create a professional pharmacy POS.

POS should support:

  • Product search

  • Barcode scanning

  • QR scanning

  • Keyboard-friendly workflow

  • Customer selection

  • Cart

  • Quantity

  • Discount

  • Tax/VAT

  • Subtotal

  • Grand Total

  • Payment

  • Change calculation

  • Invoice generation

  • Print receipt

Payment methods:

  • Cash

  • Card

  • Online Payment

  • Other

Receipt should contain:

  • Pharmacy logo

  • Pharmacy name

  • Address

  • Contact

  • Invoice number

  • Date/time

  • Customer

  • Pharmacist

  • Products

  • Quantity

  • Price

  • Discount

  • Tax

  • Total

  • Payment method


15. ONLINE STORE

Create a complete customer-facing pharmacy website.

Pages:

  • Home

  • Shop

  • Categories

  • Companies

  • Product Details

  • Search

  • Cart

  • Checkout

  • Login

  • Register

  • My Account

  • Orders

  • Wishlist

  • Prescription Upload

  • Contact

  • About Pharmacy

Homepage should contain:

  • Hero section

  • Search bar

  • Popular categories

  • Featured medicines

  • Best sellers

  • New arrivals

  • Companies

  • Offers

  • Health products

  • Delivery information

  • Footer


16. ADVANCED SEARCH

Create a powerful medicine search.

Search by:

  • Medicine name

  • Generic name

  • Brand

  • Company

  • Category

  • SKU

  • Barcode

Use AJAX so search results update without refreshing the page.

Add filters:

  • Category

  • Company

  • Price range

  • Availability

  • Prescription required

  • Rating


17. SHOPPING CART

Customer cart should support:

  • Add product

  • Remove product

  • Increase quantity

  • Decrease quantity

  • Stock validation

  • Automatic subtotal

  • Discount calculation

  • Tax calculation

  • Delivery fee

  • Grand total

Prevent users from ordering more quantity than available stock.


18. ONLINE ORDER SYSTEM

Customer can place orders online.

Order workflow:

Pending → Confirmed → Prescription Verification → Preparing → Ready for Delivery → Out for Delivery → Delivered

Alternative statuses:

  • Cancelled

  • Rejected

  • Returned

Admin and pharmacist should be able to update statuses according to their permissions.

Customer should see real-time-ish status updates through AJAX refresh/polling where appropriate.


19. PRESCRIPTION MANAGEMENT

Some medicines may require a prescription.

If:

prescription_required = YES

the customer should be asked to upload a prescription before completing the order.

Supported formats:

  • JPG

  • JPEG

  • PNG

  • PDF

Features:

  • Prescription upload

  • Prescription preview

  • Verification

  • Approve

  • Reject

  • Request re-upload

  • Pharmacist notes

Never expose uploaded prescriptions publicly.

Store uploaded files securely with randomized filenames and controlled access.


20. DELIVERY MANAGEMENT

Implement online home delivery.

Customer enters:

  • Full Name

  • Phone

  • Address

  • City

  • Area

  • Landmark

  • Delivery instructions

Admin can manage:

  • Delivery charge

  • Delivery zones

  • Minimum order amount

  • Free delivery threshold

Delivery statuses:

  • Preparing

  • Assigned

  • Picked Up

  • Out for Delivery

  • Delivered

  • Failed

Create delivery management dashboard.


21. CUSTOMER ORDER TRACKING

Customer should see a visual order tracker:

Order Placed
↓
Confirmed
↓
Preparing
↓
Ready
↓
Out for Delivery
↓
Delivered

Display:

  • Order number

  • Products

  • Amount

  • Delivery address

  • Payment method

  • Current status

  • Order date

  • Estimated delivery information


22. PURCHASE MANAGEMENT

Admin/pharmacist can create purchase records.

Fields:

  • Supplier

  • Invoice Number

  • Purchase Date

  • Product

  • Batch

  • Expiry

  • Quantity

  • Purchase Price

  • Discount

  • Tax

  • Total

Completing purchase should automatically increase stock.


23. SUPPLIER MANAGEMENT

Supplier module:

  • Supplier Name

  • Company

  • Contact Person

  • Phone

  • Email

  • Address

  • PAN/VAT

  • Payment terms

  • Status

  • Purchase history


24. RETURNS MANAGEMENT

Support:

Customer Returns

Record:

  • Order

  • Product

  • Quantity

  • Reason

  • Refund amount

  • Status

Supplier Returns

Record:

  • Supplier

  • Product

  • Batch

  • Quantity

  • Reason

  • Amount

Inventory must automatically update according to return status.


25. DASHBOARD

Admin dashboard should show attractive statistics.

Cards:

  • Total Products

  • Total Customers

  • Today's Sales

  • Monthly Sales

  • Pending Orders

  • Low Stock

  • Expiring Soon

  • Expired Products

Charts:

Sales Overview

Daily / Weekly / Monthly

Top Selling Medicines

Sales by Category

Orders Overview

Revenue Overview

Use Chart.js if necessary.

Dashboard should be responsive.


26. REPORTS

Create professional reporting system.

Reports:

  • Daily Sales

  • Weekly Sales

  • Monthly Sales

  • Annual Sales

  • Product Sales

  • Category Sales

  • Company Sales

  • Purchase Report

  • Profit Report

  • Inventory Report

  • Expiry Report

  • Low Stock Report

  • Customer Report

  • Order Report

  • Delivery Report

  • Payment Report

Provide:

  • Date filter

  • Search

  • Sort

  • Pagination

  • Print

  • CSV export

  • PDF-ready print layout


27. NOTIFICATION SYSTEM

Create notifications for:

  • New order

  • Order status update

  • Low stock

  • Expiry warning

  • New customer

  • Prescription uploaded

  • Prescription approved/rejected

  • Payment received

  • Delivery update

Implement notification dropdown in dashboard.


28. DISCOUNT & OFFER SYSTEM

Admin can create:

  • Product discount

  • Category discount

  • Coupon code

  • Percentage discount

  • Fixed discount

  • Minimum order discount

  • First-order discount

Coupon fields:

  • Code

  • Discount type

  • Discount value

  • Minimum order

  • Maximum discount

  • Start date

  • End date

  • Usage limit

  • Status


29. CUSTOMER FEATURES

Customer profile should include:

  • Name

  • Email

  • Phone

  • Profile picture

  • Date of birth

  • Gender

  • Address

  • Multiple delivery addresses

Additional:

  • Wishlist

  • Order history

  • Reorder

  • Reviews

  • Saved addresses

  • Notification preferences


30. PRODUCT REVIEWS

Customers can review products after purchase.

Include:

  • 1–5 star rating

  • Review

  • Date

  • Customer name

Admin can moderate reviews.


31. SECURITY REQUIREMENTS

Security is extremely important.

Implement:

Authentication

  • Secure password hashing using PHP password_hash()

  • password_verify()

  • Session-based authentication

  • Session regeneration after login

  • Secure logout

Database Security

Use:

  • PDO or MySQLi prepared statements

  • Parameterized queries

  • No raw user input inside SQL

Protect against:

  • SQL Injection

  • XSS

  • CSRF

  • Session fixation

  • Unauthorized access

  • IDOR

  • File upload attacks

Implement CSRF tokens for all important forms.

Escape output properly.


32. FILE UPLOAD SECURITY

Prescription and product image uploads must be secure.

Validate:

  • File extension

  • MIME type

  • File size

Do not trust the original filename.

Generate random filenames.

Prevent:

  • PHP file upload execution

  • Script uploads

  • Path traversal

  • Unauthorized file access

Prescription files must not be directly publicly accessible.


33. ROLE & PERMISSION SECURITY

Every protected page must verify:

  1. User is logged in

  2. User role

  3. Specific permission

Do not rely only on hiding menu items.

For example:

A pharmacist must receive 403 Forbidden if attempting to access an Admin-only URL directly.


34. AUDIT LOG

Create an audit log system.

Record:

  • User

  • Action

  • Module

  • Description

  • IP address

  • Date/time

Examples:

  • Product added

  • Product edited

  • Product deleted

  • Sale created

  • Order updated

  • Prescription approved

  • User created

  • Settings changed

Admin can search audit logs.


35. DATABASE STRUCTURE

Design a normalized MySQL database.

Suggested tables:

  • users

  • roles

  • permissions

  • role_permissions

  • customers

  • pharmacists

  • companies

  • categories

  • products

  • product_images

  • product_batches

  • suppliers

  • purchases

  • purchase_items

  • sales

  • sale_items

  • orders

  • order_items

  • prescriptions

  • deliveries

  • addresses

  • payments

  • coupons

  • reviews

  • wishlists

  • notifications

  • inventory_transactions

  • returns

  • return_items

  • audit_logs

  • settings

Use:

  • Primary keys

  • Foreign keys

  • Indexes

  • Unique constraints

  • Appropriate data types

  • Timestamps

Avoid unnecessary duplication.


36. AJAX FEATURES

Use AJAX/jQuery for operations where appropriate.

Examples:

  • Live product search

  • Add to cart

  • Update cart quantity

  • Remove cart item

  • POS product search

  • Barcode lookup

  • Notifications

  • Order status

  • Dashboard statistics

  • Product filtering

  • Customer search

  • Stock checking

Show loading indicators during AJAX operations.

Use proper JSON responses.


37. RESPONSIVE DESIGN

The application must work perfectly on:

  • Desktop

  • Laptop

  • Tablet

  • Android phone

  • iPhone

Dashboard sidebar should become mobile-friendly.

Tables should become horizontally scrollable or convert into responsive cards where appropriate.

POS should be usable on tablets.

Online store should provide a mobile-first shopping experience.


38. ERROR HANDLING

Create professional error handling.

Do not expose:

  • SQL errors

  • PHP warnings

  • Database credentials

  • Stack traces

to normal users.

Create friendly messages:

  • Something went wrong

  • Product not found

  • Insufficient stock

  • Invalid request

  • Unauthorized access

  • Session expired

Log technical errors securely.


39. ADMIN SETTINGS

Create a Settings module.

Admin can configure:

Pharmacy Information

  • Pharmacy Name

  • Logo

  • Address

  • Phone

  • Email

  • Website

  • PAN/VAT

  • Registration details

Store Settings

  • Currency

  • Tax/VAT

  • Delivery charge

  • Minimum order

  • Free delivery threshold

Appearance

  • Light/Dark

  • Accent color

  • Logo

  • Favicon

System

  • Maintenance mode

  • Order settings

  • Prescription settings

  • Notification settings


40. LOGIN SYSTEM

Create a modern login page.

Features:

  • Email/phone

  • Password

  • Remember me

  • Forgot password

  • Show/hide password

  • Login validation

Separate dashboards according to role.

Example:

/admin

/pharmacist

/customer


41. ADMIN SIDEBAR

Create a professional sidebar:

Dashboard

Products

  • All Products

  • Add Product

  • Categories

  • Companies

  • Batches

  • Expiry

Inventory

  • Stock

  • Stock Adjustment

  • Low Stock

  • Expired

Sales

  • POS

  • Sales History

  • Returns

Purchases

  • Purchases

  • Suppliers

  • Purchase Returns

Orders

  • Online Orders

  • Pending

  • Processing

  • Delivery

Customers

Prescriptions

Reports

Users & Roles

Coupons & Offers

Reviews

Notifications

Audit Logs

Settings


42. CUSTOMER WEBSITE DESIGN

Use a professional pharmacy/e-commerce design.

Header:

Logo | Search | Categories | Wishlist | Cart | Account

Hero:

Your Trusted Pharmacy, One Click Away

Search:

Search medicines, health products and more...

Sections:

  • Shop by Category

  • Popular Medicines

  • Featured Products

  • Best Sellers

  • Top Companies

  • Special Offers

  • Why Choose Us

  • Safe & Secure

  • Fast Delivery

  • Licensed Pharmacist Support


43. PRODUCT DETAILS PAGE

Show:

  • Product image

  • Medicine name

  • Generic name

  • Company

  • Category

  • Price

  • Discount

  • Availability

  • Prescription requirement

  • Description

  • Dosage information

  • Stock

  • Reviews

  • Add to cart

  • Wishlist

If prescription is required:

Display a clear warning:

Prescription Required

Do not encourage customers to purchase prescription-only medicines without appropriate verification.


44. CART & CHECKOUT

Checkout steps:

Step 1

Customer Information

Step 2

Delivery Address

Step 3

Prescription Upload if required

Step 4

Payment

Step 5

Order Confirmation

Show complete order summary before placing the order.


45. DEMO DATA

Create a database SQL file:

database/pharmacy_pro.sql

Include demo:

  • Admin account

  • Pharmacist account

  • Customer account

  • 5 pharmaceutical companies

  • 50+ products

  • Categories

  • Suppliers

  • Demo orders

  • Demo sales

  • Demo inventory

Clearly document demo credentials in a separate README rather than exposing them in production code.


46. PROJECT STRUCTURE

Use a clean PHP project structure such as:

pharmacy-pro/
│
├── admin/
├── pharmacist/
├── customer/
├── api/
├── ajax/
├── assets/
│   ├── css/
│   ├── js/
│   ├── images/
│   └── fonts/
│
├── config/
├── includes/
├── uploads/
│   ├── products/
│   └── prescriptions/
│
├── database/
│   └── pharmacy_pro.sql
│
├── reports/
├── auth/
├── index.php
├── shop.php
├── product.php
├── cart.php
├── checkout.php
└── README.md

Keep database credentials outside publicly accessible directories where possible.


47. CODE QUALITY

The generated application must NOT be a collection of random PHP files.

Follow:

  • DRY principle

  • Reusable components

  • Reusable header/sidebar/footer

  • Central database connection

  • Central authentication

  • Central permission checking

  • Reusable validation

  • Reusable AJAX response format

Use meaningful variable and function names.


48. PERFORMANCE

Optimize the application.

Use:

  • Database indexes

  • Pagination

  • AJAX

  • Lazy loading where useful

  • Optimized images

  • Efficient SQL queries

  • Avoid unnecessary database queries

Do not load thousands of products into the browser at once.


49. FINAL QUALITY REQUIREMENT

The finished project should feel like a real commercial pharmacy management platform, not a basic student PHP project.

Prioritize:

Security + Usability + Professional UI + Performance + Scalability

Every module should be connected.

For example:

Product → Inventory → Purchase → Sale → Online Order → Delivery → Reports

Everything should update automatically and consistently.


50. IMPORTANT DEVELOPMENT INSTRUCTION

Do not create only the UI.

Build the complete functional application with:

  • Frontend

  • Backend

  • MySQL database

  • Authentication

  • Authorization

  • CRUD operations

  • AJAX

  • POS

  • Inventory

  • Online ordering

  • Prescription workflow

  • Delivery workflow

  • Reports

  • Notifications

  • Security

  • Theme system

All buttons and forms should actually work.

Do not leave major features as:

Coming Soon

or

TODO

unless the feature genuinely requires an external service/API that is not available.

Use realistic demo/sample data for development.

The final application must be runnable on XAMPP after importing the provided MySQL database and configuring the database connection.

Also provide:

  1. Complete source code

  2. SQL database

  3. Installation instructions

  4. Configuration instructions

  5. Demo login credentials

  6. Default admin/pharmacist/customer accounts

  7. README documentation

  8. Security notes

  9. Database relationship explanation


PROJECT BRANDING

Application Name:

PHARMACY PRO

Tagline:

Smart Pharmacy Management. Faster Service. Better Care.

Use a professional pharmacy-inspired visual identity with a clean medical/technology aesthetic.

The overall result should be:

Modern + Secure + Fast + Professional + Responsive + Easy to Use

Comments